1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-04-10 18:51:21 +03:00

Compare commits

...

2 Commits

Author SHA1 Message Date
bugmaster
cf9dd8a177 Increment OCCT version up to 7.6.0beta 2021-09-28 07:38:27 +03:00
ifv
342ed98c32 0032557: Modeling Data - Use of BRepBuilderAPI_NurbsConvert create 2d p-curves with errors
BRepTools/BRepTools_NurbsConvertModification.cxx -
 Checking domain of 2dCurves if surfaces are periodic is improved

tests/bugs/moddata_3/bug32557 - test case added
2021-09-27 20:13:36 +03:00
4 changed files with 27 additions and 5 deletions

View File

@ -493,11 +493,23 @@ Standard_Boolean BRepTools_NurbsConvertModification::NewCurve2d
{
//Surface is periodic, checking curve2d domain
//Old domain
gp_Pnt2d aPf = C2d->Value(f2d);
Standard_Real aMinDist = Precision::Infinite();
if (S->IsUPeriodic())
{
aMinDist = Min(0.5 * S->UPeriod(), aMinDist);
}
if (S->IsVPeriodic())
{
aMinDist = Min(0.5 * S->VPeriod(), aMinDist);
}
aMinDist *= aMinDist;
//Old domain
Standard_Real t = 0.5 * (f2d + l2d);
gp_Pnt2d aPf = C2d->Value(t);
//New domain
gp_Pnt2d aNewPf = Curve2d->Value(f2d);
gp_Pnt2d aNewPf = Curve2d->Value(t);
gp_Vec2d aT(aNewPf, aPf);
if (aT.SquareMagnitude() > Precision::SquarePConfusion())
if (aT.SquareMagnitude() > aMinDist)
{
Curve2d = Handle(Geom2d_Curve)::DownCast(Curve2d->Translated(aT));
}

View File

@ -42,7 +42,7 @@
//! - "dev" for development version between releases
//! - "beta..." or "rc..." for beta releases or release candidates
//! - "project..." for version containing project-specific fixes
#define OCC_VERSION_DEVELOPMENT "dev"
#define OCC_VERSION_DEVELOPMENT "beta"
// Derived (manually): version as real and string (major.minor)
#define OCC_VERSION 7.6

View File

@ -19,7 +19,7 @@ nurbsconvert result result
incmesh result 0.15 -a 20
tricheck result
checktrinfo result -tri 191 -nod 146 -defl 0.052300780129031083 -tol_abs_defl 1.0e-6
checktrinfo result -tri 193 -nod 147 -defl 0.052300780129031083 -tol_abs_defl 1.0e-6
vinit

View File

@ -0,0 +1,10 @@
puts "==========================================================="
puts "0032557: Modeling Data - Use of BRepBuilderAPI_NurbsConvert create 2d p-curves with gaps"
puts "==========================================================="
puts ""
restore [locate_data_file bug32557.brep] f
nurbsconvert bf f
checkmaxtol bf -ref 1.1e-7