0028467: Improve UnifySameDomain performance
authormsv <msv@opencascade.com>
Fri, 17 Feb 2017 08:26:25 +0000 (11:26 +0300)
committerbugmaster <bugmaster@opencascade.com>
Tue, 14 Nov 2017 12:56:53 +0000 (15:56 +0300)
commitf16a6cc5aa69f4f6ae57d2b7bad05bbaa3e43520
tree9d3cc90d4aecc760a5c83fb569fb2c5f512dc41a
parent2b8832bb0ebd09520819fa2bc574e1a3e112b132
0028467: Improve UnifySameDomain performance

This patch turns off some not needed modes of fix in the called ShapeFix_Face algorithm.

It stores pcurves on planes in the edges to avoid repeated computation of the same pcurves many times (it is done only when SafeInputMode is false).

It avoids unnecessary replace/apply actions in the modification context.

It removes the code that makes decomposition of surface of the face on several faces.

The new command buildpcurvesonplane has been added, which builds and stores pcurves of edges on planar faces. This is useful for investigations how presence of pcurves on planes influence performance of algorithms.

Make drawing of dimension line in snowflake test independent on the order of vertices in the result.
20 files changed:
dox/dev_guides/upgrade/upgrade.md
samples/tcl/snowflake.tcl
src/BOPAlgo/BOPAlgo_Builder_2.cxx
src/BOPAlgo/BOPAlgo_PaveFiller_7.cxx
src/BOPAlgo/BOPAlgo_Tools.cxx
src/BOPTest/BOPTest_UtilityCommands.cxx
src/BOPTools/BOPTools_AlgoTools2D.cxx
src/BOPTools/BOPTools_AlgoTools2D.hxx
src/BRep/BRep_Tool.cxx
src/BRep/BRep_Tool.hxx
src/BRepLib/BRepLib.hxx
src/BRepLib/BRepLib_1.cxx
src/BRepOffset/BRepOffset_MakeOffset_1.cxx
src/ShapeUpgrade/ShapeUpgrade_UnifySameDomain.cxx
src/ShapeUpgrade/ShapeUpgrade_UnifySameDomain.hxx
tests/heal/unify_same_domain/A4
tests/heal/unify_same_domain/A9
tests/perf/heal/bug28467_1 [new file with mode: 0644]
tests/perf/heal/bug28467_2 [new file with mode: 0644]
tests/perf/heal/bug28467_3 [new file with mode: 0644]