mesh.Mesh.split_by_curve#

Mesh.split_by_curve(edges, sort='number')#

Split a level-2 Mesh by closed curve(s) along the edges.

This is like partition_by_curve() but returns a list of partial Meshes. The parameters are like in partition_by_curve()

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#

>>> M = Mesh(eltype='quad4').subdivide(2)
>>> M_split = M.split_by_curve([3, 7])
>>> print(M_split[0])
Mesh: n_nodes: 8, n_elems: 3, plexitude: 4, level: 2, eltype: quad4
  BBox: [0. 0. 0.], [1. 1. 0.]
  Size: [1. 1. 0.]
  Length: 4.0  Area: 0.75
>>> print(M_split[1])
Mesh: n_nodes: 4, n_elems: 1, plexitude: 4, level: 2, eltype: quad4
  BBox: [0.5 0.  0. ], [1.  0.5 0. ]
  Size: [0.5 0.5 0. ]
  Length: 2.0  Area: 0.25