Archived issue #0023622
IGES import produces invalid shape with parameter read.iges.bspline.continuity=0
Description
When read.iges.bspline.continuity set to 0 (with Interface_Static::SetCVal()), the BSplineSurface is not enforced to become periodic if it is closed what is done when it's set to 1. In some cases (e.g. seatmotor2.igs, entity 397) this leads to wrong resulting shape after Shape Healing. Instead of added missing seam the face is split into a compound of 2 invalid faces.
Steps to reproduce
Public activity
3 archived notes
Participants are labeled by their role within this record.
Pushed into git repository as branch CR23622.
Note also that the legacy code in IGESToBRep_BasicSurface::TransferBSplineSurface
(const Handle(IGESGeom_BSplineSurface)&) right below the fix only applies to icont==2 (due to wrong if-else clauses). This is a long dated bug not addressed as part of this CR.
IGESToBRep_BasicCurve works both for icont==1 and 2 cases, so the fix for surface would be similar:
IGESConvGeom::IncreaseSurfaceContinuity (res, GetEpsGeom(), GetContinuity());
Consider addressing as part of another CR, if you deem appropriate.
Note also that the legacy code in IGESToBRep_BasicSurface::TransferBSplineSurface
(const Handle(IGESGeom_BSplineSurface)&) right below the fix only applies to icont==2 (due to wrong if-else clauses). This is a long dated bug not addressed as part of this CR.
IGESToBRep_BasicCurve works both for icont==1 and 2 cases, so the fix for surface would be similar:
IGESConvGeom::IncreaseSurfaceContinuity (res, GetEpsGeom(), GetContinuity());
Consider addressing as part of another CR, if you deem appropriate.
Branch CR23622 is ready to be tested
Dear Commenter 1,
Branch CR23622 (and products from GIT master) was compiled on Linux and
Windows platforms and tested.
Regressions:
Not detected
Improvements:
Not detected
Testing cases:
bugs iges(003) bug23622_1, bug23622_2 - OK.
Branch CR23622 (and products from GIT master) was compiled on Linux and
Windows platforms and tested.
Regressions:
Not detected
Improvements:
Not detected
Testing cases:
bugs iges(003) bug23622_1, bug23622_2 - OK.