occt-products: master 867efc86

Author Committer Branch Timestamp Parent
msv smoskvin master 2021-12-17 01:05:48 master d2ffbfb2
Changeset 0032737: Mesh Tools - decimation algorithm crashes on specific data

There are two kinds of problems in the input mesh that lead to the algorithm crash:
- There are free vertices (not connected with any elements)
- There are degenerated elements (a triangle built on two nodes)

This patch addresses these problems and makes the algorithm work well in these cases.
For the first one, it invalidates on input all free vertices.
For the second one, it processes more carefully the violation of condition
that earlier was asserted in the method MeshDecim_VertexInfoList::Merge.

Test cases have been added.
mod - blob Diff File
mod - diff Diff File
mod - src/MeshDecim/MeshDecim_DecimateTool.cxx Diff File
mod - src/MeshDecim/MeshDecim_MeshModel.cxx Diff File
mod - src/MeshDecim/MeshDecim_VertexInfo.cxx Diff File
add - tests/meshdecim/bugs/bug32737_2 Diff File