occt: master 538ab5dd

Author Committer Branch Timestamp Parent
osa bugmaster master 2021-01-22 14:56:45 master a46ab511
Affected Issues  0032078: Visualization, Poly_Triangulation - add cached bounding box
Changeset 0032078: Visualization, Poly_Triangulation - add cached bounding box.

1) Add empty constructor for Poly_Triangulation(),
2) Add Poly_Triangulation::HasGeometry() method to check that triangulation has any geometry.
3) Add possibility to cache bounding box in Poly_Triangulation and use it later in case of empty triangulation.
4) Add Poly_Triangulation::MinMax() to extends input box with bounding box of triangulation.
5) Add Poly_Triangulation::UpdateCachedMinMax() to cache min - max range of this triangulation with bounding box of nodal data.
6) Add virtual Poly_Triangulation::computeBoundingBox() to calculate bounding box of nodal data.
7) Update BRepBndLib::Add/AddOptimal/AddOBB algorithms to check empty triangulation and use cached box in this case.
8) Update BRepGProp::roughBary/surfaceProperties/volumeProperties to skip empty triangulation.
9) Remove additional myBox from RWGltf_GltfLatePrimitiveArray and some hack to save this box as nodes of base Poly_Triangulation.
10) Cache min-max range from JT file during its parsing
mod - src/BRepBndLib/BRepBndLib.cxx Diff File
mod - src/BRepBndLib/BRepBndLib_1.cxx Diff File
mod - src/BRepGProp/BRepGProp.cxx Diff File
mod - src/BRepGProp/BRepGProp_MeshProps.cxx Diff File
mod - src/Poly/Poly_Triangulation.cxx Diff File
mod - src/Poly/Poly_Triangulation.hxx Diff File
mod - src/RWGltf/RWGltf_GltfJsonParser.cxx Diff File
mod - src/RWGltf/RWGltf_GltfLatePrimitiveArray.cxx Diff File
mod - src/RWGltf/RWGltf_GltfLatePrimitiveArray.hxx Diff File