]> OCCT Git - occt-copy.git/commit
0029115: [Regression] GeomAdaptor mistakenly reports non-periodic curves to be periodic CR29115_6
authornbv <nbv@opencascade.com>
Wed, 21 Feb 2018 14:31:37 +0000 (17:31 +0300)
committernbv <nbv@opencascade.com>
Tue, 11 Dec 2018 06:23:34 +0000 (09:23 +0300)
commit0d4f55c2aee1b21942224c76f0ec418196e6f1dc
tree5dfe5ef376b7fa09713387a2e437d90942e1a9f2
parent2ebb10988d4f5b0d54c0b8a1c720bd6b49382553
0029115: [Regression] GeomAdaptor mistakenly reports non-periodic curves to be periodic

1. Adaptors' and trimmed curves' periodicity is always got from the basis geometry (independently of trim boundaries).

2. Section "Periodicity concept" has been added in Doxigen-documentation.

3. The methods  IsPeriodic(), IsU(V)Periodic() of classes Geom(2d)_TrimmedCurve(RectangularTrimmedSurface) have changed their behavior. Periodicity of basis curve is taken into account only (trim boundaries are ignored).

4. Currently, the methods Period(), U(V)Period() are overridden in classes inherited from Geom(2d)_Curve(Surface) and Adaptor(2d)_Curve(Surface), which IsPeriodic (IsU(V)Periodic()) can return TRUE in. In basis classes, such methods throw exceptions.

5. Method GeomLib::IsClosed(...) has been added in order to check of closure of 3D/2D curve with some tolerance. At the same time, IntTools_Tools::IsClosed(...) method has been removed.

6. Methods GeomLib::IsTrimAllowed(...), GeomLib::IsUTrimAllowed(...) and GeomLib::IsVTrimAllowed(...) have been created.

7. Method ShapeAnalysis_Curve::IsPeriodic(...) has been removed.

8. Method

   void BOPTools_AlgoTools2D::AdjustPCurveOnFace (const TopoDS_Face& theF,
                                                  const Handle(Geom_Curve)& theC3D,
                                                  const Handle(Geom2d_Curve)& theC2D,
                                                  Handle(Geom2d_Curve)& theC2DA,
                                                  const Handle(IntTools_Context)& theContext = Handle(IntTools_Context)());

has been removed.

9. Interface of Geom_ConicalSurface::Apex(...) method has been corrected insignificantly.

10. The DRAW-commands "curveperiod" and "surfaceperiod" have been created. Please see help-system to obtain the information about these commands.

11. Several DRAW-commands have been created to provide work with adapters. They are defined in the file GeomliteTest_AdaptorCommands.cxx. Currently they allow reading the following adapter's properties: periodicity, closure and resolution.

12. New test cases have been created.
207 files changed:
dox/user_guides/draw_test_harness/draw_test_harness.md
dox/user_guides/modeling_data/modeling_data.md
src/Adaptor2d/Adaptor2d_Curve2d.hxx
src/Adaptor2d/Adaptor2d_HCurve2d.hxx
src/Adaptor2d/Adaptor2d_Line2d.cxx
src/Adaptor2d/Adaptor2d_Line2d.hxx
src/Adaptor2d/Adaptor2d_OffsetCurve.hxx
src/Adaptor3d/Adaptor3d_Curve.cxx
src/Adaptor3d/Adaptor3d_Curve.hxx
src/Adaptor3d/Adaptor3d_CurveOnSurface.hxx
src/Adaptor3d/Adaptor3d_HCurve.hxx
src/Adaptor3d/Adaptor3d_HSurface.hxx
src/Adaptor3d/Adaptor3d_HSurfaceTool.hxx
src/Adaptor3d/Adaptor3d_IsoCurve.hxx
src/Adaptor3d/Adaptor3d_Surface.cxx
src/Adaptor3d/Adaptor3d_Surface.hxx
src/BOPTools/BOPTools_AlgoTools.cxx
src/BOPTools/BOPTools_AlgoTools2D.cxx
src/BOPTools/BOPTools_AlgoTools2D.hxx
src/BOPTools/BOPTools_AlgoTools3D.cxx
src/BRepAdaptor/BRepAdaptor_CompCurve.cxx
src/BRepAdaptor/BRepAdaptor_CompCurve.hxx
src/BRepAdaptor/BRepAdaptor_Curve.hxx
src/BRepAdaptor/BRepAdaptor_Surface.hxx
src/BRepAlgo/BRepAlgo.cxx
src/BRepApprox/BRepApprox_SurfaceTool.hxx
src/BRepBlend/BRepBlend_HCurve2dTool.hxx
src/BRepBlend/BRepBlend_HCurveTool.hxx
src/BRepBndLib/BRepBndLib.cxx
src/BRepCheck/BRepCheck_Edge.cxx
src/BRepClass/BRepClass_Intersector.cxx
src/BRepFeat/BRepFeat_Form.cxx
src/BRepFill/BRepFill_MultiLine.cxx
src/BRepFill/BRepFill_OffsetWire.cxx
src/BRepLib/BRepLib.cxx
src/BRepLib/BRepLib_MakeEdge.cxx
src/BRepLib/BRepLib_MakeShell.cxx
src/BRepMesh/BRepMesh_CurveTessellator.cxx
src/BRepMesh/BRepMesh_DefaultRangeSplitter.cxx
src/BRepOffset/BRepOffset_Inter2d.cxx
src/BRepOffset/BRepOffset_Tool.cxx
src/BRepTest/BRepTest_SurfaceCommands.cxx
src/BRepTools/BRepTools.cxx
src/BRepTools/BRepTools_NurbsConvertModification.cxx
src/BRepTools/BRepTools_TrsfModification.cxx
src/BiTgte/BiTgte_CurveOnEdge.cxx
src/BiTgte/BiTgte_CurveOnEdge.hxx
src/BiTgte/BiTgte_CurveOnVertex.cxx
src/BiTgte/BiTgte_CurveOnVertex.hxx
src/BinTools/BinTools_Curve2dSet.cxx
src/BinTools/BinTools_CurveSet.cxx
src/BinTools/BinTools_SurfaceSet.cxx
src/Bisector/Bisector_BisecAna.cxx
src/Bisector/Bisector_BisecAna.hxx
src/Bisector/Bisector_BisecCC.hxx
src/Bisector/Bisector_BisecPC.hxx
src/ChFi2d/ChFi2d_FilletAlgo.cxx
src/ChFi3d/ChFi3d_Builder_0.cxx
src/ChFi3d/ChFi3d_Builder_C1.cxx
src/ChFiDS/ChFiDS_ElSpine.cxx
src/ChFiDS/ChFiDS_ElSpine.hxx
src/Contap/Contap_HCurve2dTool.hxx
src/DBRep/DBRep_DrawableShape.cxx
src/Draft/Draft_Modification.cxx
src/Draft/Draft_Modification_1.cxx
src/DrawTrSurf/DrawTrSurf_BSplineCurve2d.cxx
src/Extrema/Extrema_CurveTool.cxx
src/Extrema/Extrema_CurveTool.hxx
src/Extrema/Extrema_ExtPExtS.cxx
src/Geom/Geom_BSplineCurve.cxx
src/Geom/Geom_BSplineCurve.hxx
src/Geom/Geom_BSplineSurface.cxx
src/Geom/Geom_BSplineSurface.hxx
src/Geom/Geom_BezierCurve.hxx
src/Geom/Geom_Circle.hxx
src/Geom/Geom_ConicalSurface.cxx
src/Geom/Geom_ConicalSurface.hxx
src/Geom/Geom_Curve.cxx
src/Geom/Geom_Curve.hxx
src/Geom/Geom_CylindricalSurface.hxx
src/Geom/Geom_Ellipse.hxx
src/Geom/Geom_Hyperbola.hxx
src/Geom/Geom_Line.hxx
src/Geom/Geom_OffsetCurve.cxx
src/Geom/Geom_OffsetCurve.hxx
src/Geom/Geom_OffsetSurface.cxx
src/Geom/Geom_OffsetSurface.hxx
src/Geom/Geom_RectangularTrimmedSurface.cxx
src/Geom/Geom_RectangularTrimmedSurface.hxx
src/Geom/Geom_SphericalSurface.hxx
src/Geom/Geom_Surface.cxx
src/Geom/Geom_Surface.hxx
src/Geom/Geom_SurfaceOfLinearExtrusion.cxx
src/Geom/Geom_SurfaceOfLinearExtrusion.hxx
src/Geom/Geom_SurfaceOfRevolution.cxx
src/Geom/Geom_SurfaceOfRevolution.hxx
src/Geom/Geom_ToroidalSurface.hxx
src/Geom/Geom_TrimmedCurve.cxx
src/Geom/Geom_TrimmedCurve.hxx
src/Geom2d/Geom2d_BSplineCurve.cxx
src/Geom2d/Geom2d_BSplineCurve.hxx
src/Geom2d/Geom2d_BezierCurve.hxx
src/Geom2d/Geom2d_Circle.hxx
src/Geom2d/Geom2d_Curve.cxx
src/Geom2d/Geom2d_Curve.hxx
src/Geom2d/Geom2d_Ellipse.hxx
src/Geom2d/Geom2d_OffsetCurve.cxx
src/Geom2d/Geom2d_OffsetCurve.hxx
src/Geom2d/Geom2d_TrimmedCurve.cxx
src/Geom2d/Geom2d_TrimmedCurve.hxx
src/Geom2dAdaptor/Geom2dAdaptor_Curve.hxx
src/Geom2dConvert/Geom2dConvert.cxx
src/GeomAdaptor/GeomAdaptor_Curve.hxx
src/GeomAdaptor/GeomAdaptor_Surface.hxx
src/GeomAdaptor/GeomAdaptor_SurfaceOfLinearExtrusion.cxx
src/GeomAdaptor/GeomAdaptor_SurfaceOfLinearExtrusion.hxx
src/GeomAdaptor/GeomAdaptor_SurfaceOfRevolution.cxx
src/GeomAdaptor/GeomAdaptor_SurfaceOfRevolution.hxx
src/GeomConvert/GeomConvert.cxx
src/GeomFill/GeomFill_GuideTrihedronPlan.cxx
src/GeomFill/GeomFill_LocationGuide.cxx
src/GeomFill/GeomFill_NSections.cxx
src/GeomFill/GeomFill_SnglrFunc.cxx
src/GeomFill/GeomFill_SnglrFunc.hxx
src/GeomLib/GeomLib.cxx
src/GeomLib/GeomLib.hxx
src/GeomPlate/GeomPlate_Surface.cxx
src/GeomPlate/GeomPlate_Surface.hxx
src/GeomProjLib/GeomProjLib.cxx
src/GeometryTest/GeometryTest_CurveCommands.cxx
src/GeometryTest/GeometryTest_SurfaceCommands.cxx
src/GeomliteTest/FILES
src/GeomliteTest/GeomliteTest.cxx
src/GeomliteTest/GeomliteTest.hxx
src/GeomliteTest/GeomliteTest_AdaptorCommands.cxx [new file with mode: 0644]
src/HLRBRep/HLRBRep_BCurveTool.hxx
src/HLRBRep/HLRBRep_BSurfaceTool.hxx
src/HLRBRep/HLRBRep_Curve.hxx
src/HLRBRep/HLRBRep_CurveTool.hxx
src/HLRBRep/HLRBRep_LineTool.hxx
src/HLRBRep/HLRBRep_Surface.hxx
src/HLRBRep/HLRBRep_SurfaceTool.hxx
src/IntCurveSurface/IntCurveSurface_Inter.gxx
src/IntCurveSurface/IntCurveSurface_TheHCurveTool.hxx
src/IntPatch/IntPatch_HCurve2dTool.hxx
src/IntPatch/IntPatch_Intersection.cxx
src/IntPatch/IntPatch_PrmPrmIntersection.cxx
src/IntPatch/IntPatch_RstInt.cxx
src/IntPatch/IntPatch_SpecialPoints.cxx
src/IntPatch/IntPatch_WLineTool.cxx
src/IntTools/IntTools_FaceFace.cxx
src/IntTools/IntTools_Tools.cxx
src/IntTools/IntTools_Tools.hxx
src/IntWalk/IntWalk_PWalking.cxx
src/LocOpe/LocOpe_WiresOnShape.cxx
src/MAT2d/MAT2d_Tool2d.cxx
src/ProjLib/ProjLib_ComputeApprox.cxx
src/ProjLib/ProjLib_ComputeApproxOnPolarSurface.cxx
src/ProjLib/ProjLib_ProjectOnPlane.hxx
src/ProjLib/ProjLib_ProjectedCurve.hxx
src/QABugs/QABugs_20.cxx
src/ShapeAnalysis/ShapeAnalysis_Curve.cxx
src/ShapeAnalysis/ShapeAnalysis_Curve.hxx
src/ShapeBuild/ShapeBuild_Edge.cxx
src/ShapeConstruct/ShapeConstruct.cxx
src/ShapeConstruct/ShapeConstruct_ProjectCurveOnSurface.cxx
src/ShapeCustom/ShapeCustom_BSplineRestriction.cxx
src/ShapeFix/ShapeFix_Edge.cxx
src/ShapeFix/ShapeFix_EdgeProjAux.cxx
src/ShapeFix/ShapeFix_Wire.cxx
src/ShapeFix/ShapeFix_Wire_1.cxx
src/ShapeUpgrade/ShapeUpgrade_SplitCurve2d.cxx
src/ShapeUpgrade/ShapeUpgrade_SplitCurve3d.cxx
src/StepToTopoDS/StepToTopoDS_GeometricTool.cxx
src/StepToTopoDS/StepToTopoDS_TranslateEdgeLoop.cxx
src/TopOpeBRepDS/TopOpeBRepDS_BuildTool.cxx
src/TopOpeBRepTool/TopOpeBRepTool_CurveTool.cxx
src/TopOpeBRepTool/TopOpeBRepTool_ShapeTool.cxx
src/math/math_NewtonMinimum.cxx
tests/adaptors/begin [new file with mode: 0644]
tests/adaptors/end [new file with mode: 0644]
tests/adaptors/grids.list [new file with mode: 0644]
tests/adaptors/parse.rules [new file with mode: 0644]
tests/adaptors/properties/A01 [new file with mode: 0644]
tests/adaptors/properties/B01 [new file with mode: 0644]
tests/adaptors/properties/C01 [new file with mode: 0644]
tests/adaptors/properties/D01 [new file with mode: 0644]
tests/adaptors/properties/E01 [new file with mode: 0644]
tests/adaptors/properties/F01 [new file with mode: 0644]
tests/adaptors/properties/F02 [new file with mode: 0644]
tests/adaptors/properties/F03 [new file with mode: 0644]
tests/adaptors/resolution/A1 [new file with mode: 0644]
tests/adaptors/resolution/A2 [new file with mode: 0644]
tests/adaptors/resolution/A3 [new file with mode: 0644]
tests/bugs/modalg_7/bug29115_1 [new file with mode: 0644]
tests/bugs/modalg_7/bug29115_2 [new file with mode: 0644]
tests/bugs/modalg_7/bug29115_3 [new file with mode: 0644]
tests/bugs/modalg_7/bug29115_4 [new file with mode: 0644]
tests/bugs/modalg_7/bug29115_5 [new file with mode: 0644]
tests/geometry/geomperiodic/A1 [new file with mode: 0644]
tests/geometry/geomperiodic/A2 [new file with mode: 0644]
tests/geometry/geomperiodic/B1 [new file with mode: 0644]
tests/geometry/geomperiodic/B2 [new file with mode: 0644]
tests/geometry/geomperiodic/B3 [new file with mode: 0644]
tests/geometry/geomperiodic/B4 [new file with mode: 0644]
tests/geometry/geomperiodic/B5 [new file with mode: 0644]
tests/geometry/grids.list