occt: master 51db0179
Author | Committer | Branch | Timestamp | Parent |
---|---|---|---|---|
apn | master | 2016-11-30 10:29:37 | master 483ce1bd | |
Changeset | 0028165: Improve performance of Boolean Operations 1. Unification of the usage of the BRepAdaptor_Surface in Boolean Operations algorithm. For each face when it is necessary the Adaptor is initialized only once and stored in Context. For that purpose the new IntTools_Context::SurfaceAdaptor(const TopoDS_Face&) method has been implemented. To provide possibility to take the Adaptor from the context, the context has been added as a parameter in following methods: BOPTools_AlgoTools::MakePCurve() BOPTools_AlgoTools::Sence() BOPTools_AlgoTools2D::BuildPCurveForEdgeOnFace() BOPTools_AlgoTools2D::PointOnSurface BOPTools_AlgoTools2D::CurveOnSurface BOPTools_AlgoTools2D::AdjustPCurveOnFace BOPTools_AlgoTools2D::Make2D BOPTools_AlgoTools2D::MakePCurveOnFace BOPTools_AlgoTools3D::GetNormalToFaceOnEdge It is also possible now to pass the context into BOPAlgo_WireSplitter algorithm. Also, the new IntTools_Context::UVBounds(const TopoDS_Face&) method has been implemented to get the UV bounds of a face. 2. Additional improvement is a calculation of reduced intersection range only for the intersection type VERTEX during computation of Edge/Face interference. 3. The methods IntTools_EdgeFace::Prepare() and IntTools_EdgeFace::FindProjectableRoot() and the fields IntTools_EdgeFace::myProjectableRanges and IntTools_EdgeFace::myFClass2d have been removed as obsolete. 4. Test cases for the issue. |
|||
mod - src/BOPAlgo/BOPAlgo_BuilderFace.cxx | Diff File | |||
mod - src/BOPAlgo/BOPAlgo_Builder_2.cxx | Diff File | |||
mod - src/BOPAlgo/BOPAlgo_PaveFiller.cxx | Diff File | |||
mod - src/BOPAlgo/BOPAlgo_PaveFiller.hxx | Diff File | |||
mod - src/BOPAlgo/BOPAlgo_PaveFiller_10.cxx | Diff File | |||
mod - src/BOPAlgo/BOPAlgo_PaveFiller_3.cxx | Diff File | |||
mod - src/BOPAlgo/BOPAlgo_PaveFiller_5.cxx | Diff File | |||
mod - src/BOPAlgo/BOPAlgo_PaveFiller_6.cxx | Diff File | |||
mod - src/BOPAlgo/BOPAlgo_PaveFiller_7.cxx | Diff File | |||
mod - src/BOPAlgo/BOPAlgo_WireSplitter.cxx | Diff File | |||
mod - src/BOPAlgo/BOPAlgo_WireSplitter.hxx | Diff File | |||
mod - src/BOPAlgo/BOPAlgo_WireSplitter_1.cxx | Diff File | |||
mod - src/BOPTools/BOPTools_AlgoTools.cxx | Diff File | |||
mod - src/BOPTools/BOPTools_AlgoTools.hxx | Diff File | |||
mod - src/BOPTools/BOPTools_AlgoTools2D.cxx | Diff File | |||
mod - src/BOPTools/BOPTools_AlgoTools2D.hxx | Diff File | |||
mod - src/BOPTools/BOPTools_AlgoTools3D.cxx | Diff File | |||
mod - src/BOPTools/BOPTools_AlgoTools3D.hxx | Diff File | |||
mod - src/BRepFeat/BRepFeat_Builder.cxx | Diff File | |||
mod - src/BRepOffset/BRepOffset_Tool.cxx | Diff File | |||
mod - src/IntTools/IntTools_BeanFaceIntersector.cxx | Diff File | |||
mod - src/IntTools/IntTools_Context.cxx | Diff File | |||
mod - src/IntTools/IntTools_Context.hxx | Diff File | |||
mod - src/IntTools/IntTools_EdgeFace.cxx | Diff File | |||
mod - src/IntTools/IntTools_EdgeFace.hxx | Diff File | |||
mod - src/IntTools/IntTools_FaceFace.cxx | Diff File | |||
mod - src/QANewModTopOpe/QANewModTopOpe_Tools.cxx | Diff File | |||
add - tests/bugs/modalg_6/bug28165_1 | Diff File | |||
add - tests/bugs/modalg_6/bug28165_2 | Diff File | |||
add - tests/bugs/modalg_6/bug28165_3 | Diff File | |||
add - tests/bugs/modalg_6/bug28165_4 | Diff File |