mesh.Mesh.split_by_angle#
- Mesh.split_by_angle(angle=60.0, sort='number')#
Split a tri3 Mesh by splitting it at sharp edges.
This is like
partition_by_angle()but returns a list of partial Meshes. The parameters are like inpartition_by_angle()Returns#
- list of Mesh
A list of Meshes that each form a connected part. By default the parts are sorted in decreasing order of the number of elements.
Examples#
>>> coords = Coords([[0.0, 0.0, 0.0], ... [1.0, 0.0, 0.0], ... [0.0, 1.0, 0.0], ... [0.0, 0.0, 2.0]]) >>> elems = [[0,1,2], [0,2,3]] >>> M = Mesh(coords,elems,eltype='tri3') >>> M_split = M.split_by_angle(sort='area') >>> print(M_split[0]) Mesh: n_nodes: 3, n_elems: 1, plexitude: 3, level: 2, eltype: tri3 BBox: [0. 0. 0.], [0. 1. 2.] Size: [0. 1. 2.] Length: 5.236 Area: 1.0 >>> print(M_split[1]) Mesh: n_nodes: 3, n_elems: 1, plexitude: 3, level: 2, eltype: tri3 BBox: [0. 0. 0.], [1. 1. 0.] Size: [1. 1. 0.] Length: 3.414 Area: 0.5