Geometry and Topology-based Segmentation of 2-Manifold Triangular Meshes in R3