1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-04-05 18:16:23 +03:00

0026341: Uninitialized field in ShapeFix_Face

Parameter RemoveSmallAreaFaceMode in ShapeFix_Face is properly initialized; some other minor corrections
This commit is contained in:
abv 2015-07-02 14:33:54 +03:00 committed by bugmaster
parent 59e349919f
commit 9d1b116ff0
4 changed files with 9 additions and 7 deletions

View File

@ -288,17 +288,17 @@ TopoDS_Shape ShapeFix::RemoveSmallEdges (TopoDS_Shape& Shape,
Handle(ShapeFix_Shape) sfs = new ShapeFix_Shape; Handle(ShapeFix_Shape) sfs = new ShapeFix_Shape;
sfs->Init(Shape); sfs->Init(Shape);
sfs->SetPrecision(Tolerance); sfs->SetPrecision(Tolerance);
Handle(ShapeFix_Face)::DownCast(sfs->FixFaceTool())->FixMissingSeamMode() = Standard_False; sfs->FixFaceTool()->FixMissingSeamMode() = Standard_False;
Handle(ShapeFix_Face)::DownCast(sfs->FixFaceTool())->FixOrientationMode() = Standard_False; sfs->FixFaceTool()->FixOrientationMode() = Standard_False;
Handle(ShapeFix_Face)::DownCast(sfs->FixFaceTool())->FixSmallAreaWireMode() = Standard_False; sfs->FixFaceTool()->FixSmallAreaWireMode() = Standard_False;
sfs->FixWireTool()->ModifyTopologyMode() = Standard_True; sfs->FixWireTool()->ModifyTopologyMode() = Standard_True;
//sfs.FixWireTool().FixReorderMode() = Standard_False; //sfs.FixWireTool().FixReorderMode() = Standard_False;
sfs->FixWireTool()->FixConnectedMode() = Standard_False; sfs->FixWireTool()->FixConnectedMode() = Standard_False;
sfs->FixWireTool()->FixEdgeCurvesMode() = Standard_False; sfs->FixWireTool()->FixEdgeCurvesMode() = Standard_False;
sfs->FixWireTool()->FixDegeneratedMode() = Standard_False; sfs->FixWireTool()->FixDegeneratedMode() = Standard_False;
Handle(ShapeFix_Wire)::DownCast(sfs->FixWireTool())->FixSelfIntersectionMode() = Standard_False; sfs->FixWireTool()->FixSelfIntersectionMode() = Standard_False;
Handle(ShapeFix_Wire)::DownCast(sfs->FixWireTool())->FixLackingMode() = Standard_False; sfs->FixWireTool()->FixLackingMode() = Standard_False;
Handle(ShapeFix_Wire)::DownCast(sfs->FixWireTool())->FixSmallMode() = Standard_True; sfs->FixWireTool()->FixSmallMode() = Standard_True;
sfs->Perform(); sfs->Perform();
TopoDS_Shape result = sfs->Shape(); TopoDS_Shape result = sfs->Shape();
context = sfs->Context(); context = sfs->Context();

View File

@ -209,7 +209,7 @@ is
-- missing seam edge -- missing seam edge
-- Returns True if missing seam was added -- Returns True if missing seam was added
FixSmallAreaWire (me: mutable; theIsRemoveSmallFace: Boolean = Standard_False) returns Boolean; FixSmallAreaWire (me: mutable; theIsRemoveSmallFace: Boolean) returns Boolean;
---Purpose: Detects wires with small area (that is less than ---Purpose: Detects wires with small area (that is less than
-- 100*Precision::PConfusion(). Removes these wires if they are internal. -- 100*Precision::PConfusion(). Removes these wires if they are internal.
-- Returns : True if at least one small wire removed, -- Returns : True if at least one small wire removed,

View File

@ -166,6 +166,7 @@ void ShapeFix_Face::ClearModes()
myFixAddNaturalBoundMode = -1; myFixAddNaturalBoundMode = -1;
myFixMissingSeamMode = -1; myFixMissingSeamMode = -1;
myFixSmallAreaWireMode = -1; myFixSmallAreaWireMode = -1;
myRemoveSmallAreaFaceMode = -1;
myFixIntersectingWiresMode = -1; myFixIntersectingWiresMode = -1;
myFixLoopWiresMode = -1; myFixLoopWiresMode = -1;
myFixSplitFaceMode = -1; myFixSplitFaceMode = -1;

View File

@ -26,6 +26,7 @@ FromSTEP.FixShape.FixOrientationMode : -1
FromSTEP.FixShape.FixAddNaturalBoundMode : -1 FromSTEP.FixShape.FixAddNaturalBoundMode : -1
FromSTEP.FixShape.FixMissingSeamMode : -1 FromSTEP.FixShape.FixMissingSeamMode : -1
FromSTEP.FixShape.FixSmallAreaWireMode : -1 FromSTEP.FixShape.FixSmallAreaWireMode : -1
FromSTEP.FixShape.RemoveSmallAreaFaceMode : -1
FromSTEP.FixShape.FixIntersectingWiresMode : -1 FromSTEP.FixShape.FixIntersectingWiresMode : -1
FromSTEP.FixShape.FixLoopWiresMode : -1 FromSTEP.FixShape.FixLoopWiresMode : -1
FromSTEP.FixShape.FixSplitFaceMode : -1 FromSTEP.FixShape.FixSplitFaceMode : -1