diff --git a/src/StepToTopoDS/StepToTopoDS_TranslateFace.cxx b/src/StepToTopoDS/StepToTopoDS_TranslateFace.cxx index 83bc20ae85..cd673ae3d8 100644 --- a/src/StepToTopoDS/StepToTopoDS_TranslateFace.cxx +++ b/src/StepToTopoDS/StepToTopoDS_TranslateFace.cxx @@ -236,12 +236,7 @@ void StepToTopoDS_TranslateFace::Init // Standard_Boolean fautcoudre = // ( (NbBnd == 2) && (GeomSurf->IsUClosed() || GeomSurf->IsVClosed()) ); - Standard_Boolean isExistOuter = Standard_False; - for (Standard_Integer i = 1; i <= NbBnd; i++) { - FaceBound = FS->BoundsValue(i); - if (FaceBound->IsKind(STANDARD_TYPE(StepShape_FaceOuterBound))) - isExistOuter = Standard_True; - } + for (Standard_Integer i = 1; i <= NbBnd; i ++) { #ifdef OCCT_DEBUG @@ -265,13 +260,14 @@ void StepToTopoDS_TranslateFace::Init if (GeomSurf->IsKind (STANDARD_TYPE(Geom_SphericalSurface)) || GeomSurf->IsKind (STANDARD_TYPE(Geom_BSplineSurface)) ) { - if (!isExistOuter || FaceBound->IsKind(STANDARD_TYPE(StepShape_FaceOuterBound))) { + if (NbBnd ==1 || FaceBound->IsKind(STANDARD_TYPE(StepShape_FaceOuterBound))) { BRepBuilderAPI_MakeFace mf (GeomSurf, Precision()); for (TopoDS_Iterator it(mf); it.More(); it.Next()) B.Add (F, it.Value()); - } + continue; + } } if (//GeomSurf->IsKind(STANDARD_TYPE(Geom_SphericalSurface)) || diff --git a/tests/de/step_1/D1 b/tests/de/step_1/D1 index a090a45344..ba098ae99a 100644 --- a/tests/de/step_1/D1 +++ b/tests/de/step_1/D1 @@ -1,14 +1,13 @@ # !!!! This file is generated automatically, do not edit manually! See end script - set filename trj9_b2-ai-214.stp set ref_data { DATA : Faulties = 0 ( 0 ) Warnings = 0 ( 0 ) Summary = 0 ( 0 ) -TPSTAT : Faulties = 0 ( 0 ) Warnings = 8 ( 38 ) Summary = 8 ( 38 ) -CHECKSHAPE : Wires = 1 ( 1 ) Faces = 1 ( 1 ) Shells = 0 ( 0 ) Solids = 0 ( 0 ) -NBSHAPES : Solid = 1 ( 1 ) Shell = 1 ( 1 ) Face = 221 ( 221 ) Summary = 1465 ( 1463 ) -STATSHAPE : Solid = 1 ( 1 ) Shell = 1 ( 1 ) Face = 221 ( 221 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 610 ( 610 ) -TOLERANCE : MaxTol = 0.004950186716 ( 0.004950186717 ) AvgTol = 0.0003553188051 ( 0.0003621212346 ) +TPSTAT : Faulties = 0 ( 0 ) Warnings = 7 ( 38 ) Summary = 7 ( 38 ) +CHECKSHAPE : Wires = 0 ( 0 ) Faces = 0 ( 0 ) Shells = 0 ( 0 ) Solids = 0 ( 0 ) +NBSHAPES : Solid = 1 ( 1 ) Shell = 1 ( 1 ) Face = 221 ( 221 ) Summary = 1460 ( 1459 ) +STATSHAPE : Solid = 1 ( 1 ) Shell = 1 ( 1 ) Face = 221 ( 221 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 608 ( 608 ) +TOLERANCE : MaxTol = 0.004950137219 ( 0.004950137216 ) AvgTol = 0.0003566630364 ( 0.0003615446964 ) LABELS : N0Labels = 1 ( 1 ) N1Labels = 0 ( 0 ) N2Labels = 0 ( 0 ) TotalLabels = 1 ( 1 ) NameLabels = 1 ( 1 ) ColorLabels = 1 ( 1 ) LayerLabels = 0 ( 0 ) PROPS : Centroid = 1 ( 1 ) Volume = 1 ( 1 ) Area = 1 ( 1 ) NCOLORS : NColors = 1 ( 1 ) diff --git a/tests/de/step_3/D8 b/tests/de/step_3/D8 index ae83511d29..9f66b882d1 100755 --- a/tests/de/step_3/D8 +++ b/tests/de/step_3/D8 @@ -1,15 +1,13 @@ # !!!! This file is generated automatically, do not edit manually! See end script -puts "TODO CR25013 Linux: Error : 1 differences with reference data found" - set filename trj6_pm4-hc-214.stp set ref_data { DATA : Faulties = 0 ( 20 ) Warnings = 0 ( 60 ) Summary = 0 ( 80 ) TPSTAT : Faulties = 0 ( 0 ) Warnings = 21 ( 557 ) Summary = 21 ( 557 ) CHECKSHAPE : Wires = 0 ( 0 ) Faces = 0 ( 0 ) Shells = 0 ( 0 ) Solids = 0 ( 0 ) -NBSHAPES : Solid = 98 ( 98 ) Shell = 98 ( 98 ) Face = 1506 ( 1506 ) Summary = 9262 ( 9257 ) +NBSHAPES : Solid = 98 ( 98 ) Shell = 98 ( 98 ) Face = 1506 ( 1506 ) Summary = 9261 ( 9257 ) STATSHAPE : Solid = 272 ( 272 ) Shell = 272 ( 272 ) Face = 3216 ( 3216 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 3315 ( 3311 ) -TOLERANCE : MaxTol = 0.9562231856 ( 3.3196868 ) AvgTol = 0.0007127405962 ( 0.003722159881 ) +TOLERANCE : MaxTol = 0.9562231856 ( 3.3196868 ) AvgTol = 0.0007127401639 ( 0.003722159846 ) LABELS : N0Labels = 230 ( 230 ) N1Labels = 1909 ( 1909 ) N2Labels = 0 ( 0 ) TotalLabels = 2139 ( 2139 ) NameLabels = 633 ( 633 ) ColorLabels = 1506 ( 1506 ) LayerLabels = 0 ( 0 ) PROPS : Centroid = 98 ( 98 ) Volume = 98 ( 98 ) Area = 98 ( 98 ) NCOLORS : NColors = 6 ( 6 )