split_mesh method

split_mesh(, mesh, policy)

Split mesh into sub-meshes by VertexElementMaterial. Each sub-mesh will use only one material. The original mesh will not get changed.

Returns

New splitted meshes


@staticmethod
def split_mesh(mesh, policy):
    ...
ParameterTypeDescription
meshaspose.threed.entities.Mesh
policyaspose.threed.entities.SplitMeshPolicy

Example

The following code shows how to split a box into sub meshes using material indices.

from aspose import pycore
from aspose.threed.entities import Box, MappingMode, PolygonModifier, ReferenceMode, SplitMeshPolicy, VertexElementMaterial, VertexElementType

#  Bir kutu ağı oluştur (Bir kutu 6 düzlemden oluşur)
box = Box().to_mesh()
#  Bu ağ üzerinde bir malzeme öğesi oluştur
mat = pycore.cast(VertexElementMaterial, box.create_element(VertexElementType.MATERIAL, MappingMode.POLYGON, ReferenceMode.INDEX))
#  Ve her düzlem için farklı malzeme indeksini belirt
mat.indices.extend([0, 1, 2, 3, 4, 5 ])
#  Şimdi bunu 6 alt ağa böl, her düzlemde 6 farklı malzeme belirttik, her düzlem bir alt ağ haline gelecek.
#  CloneData politikasını kullandık, her düzlem aynı kontrol noktası bilgisine veya kontrol noktasına dayalı vertex öğe bilgisine sahip olacak.
planes = PolygonModifier.split_mesh(box, SplitMeshPolicy.CLONE_DATA)
#  Şimdi bunu 2 alt ağa böl, ilk ağ 0/1/2 düzlemleri içerecek ve ikinci ağ 3/4/5. düzlemleri içerecek.
mat.indices.clear()
mat.indices.extend([0, 0, 0, 1, 1, 1 ])
#  CompactData politikasını kullandık, her düzlem kendi kontrol noktası bilgisine veya kontrol noktasına dayalı vertex öğe bilgisine sahip olacak.
planes = PolygonModifier.split_mesh(box, SplitMeshPolicy.COMPACT_DATA)

split_mesh(, scene, policy, remove_old_mesh)

Split mesh into sub-meshes by VertexElementMaterial. Each sub-mesh will use only one material. Perform mesh splitting on all nodes of the scene.


@staticmethod
def split_mesh(scene, policy, remove_old_mesh):
    ...
ParameterTypeDescription
sceneaspose.threed.Scene
policyaspose.threed.entities.SplitMeshPolicy
remove_old_meshbool

Example

The following code shows how to split a box into sub meshes using material indices.

from aspose import pycore
from aspose.threed.entities import Box, MappingMode, PolygonModifier, ReferenceMode, SplitMeshPolicy, VertexElementMaterial, VertexElementType

#  Bir kutu ağı oluştur (Bir kutu 6 düzlemden oluşur)
box = Box().to_mesh()
#  Bu ağ üzerinde bir malzeme öğesi oluştur
mat = pycore.cast(VertexElementMaterial, box.create_element(VertexElementType.MATERIAL, MappingMode.POLYGON, ReferenceMode.INDEX))
#  Ve her düzlem için farklı malzeme indeksini belirt
mat.indices.extend([0, 1, 2, 3, 4, 5 ])
#  Şimdi bunu 6 alt ağa böl, her düzlemde 6 farklı malzeme belirttik, her düzlem bir alt ağ haline gelecek.
#  CloneData politikasını kullandık, her düzlem aynı kontrol noktası bilgisine veya kontrol noktasına dayalı vertex öğe bilgisine sahip olacak.
planes = PolygonModifier.split_mesh(box, SplitMeshPolicy.CLONE_DATA)
#  Şimdi bunu 2 alt ağa böl, ilk ağ 0/1/2 düzlemleri içerecek ve ikinci ağ 3/4/5. düzlemleri içerecek.
mat.indices.clear()
mat.indices.extend([0, 0, 0, 1, 1, 1 ])
#  CompactData politikasını kullandık, her düzlem kendi kontrol noktası bilgisine veya kontrol noktasına dayalı vertex öğe bilgisine sahip olacak.
planes = PolygonModifier.split_mesh(box, SplitMeshPolicy.COMPACT_DATA)

split_mesh(, node, policy, create_child_nodes, remove_old_mesh)

Split mesh into sub-meshes by VertexElementMaterial. Each sub-mesh will use only one material. Perform mesh splitting on a node


@staticmethod
def split_mesh(node, policy, create_child_nodes, remove_old_mesh):
    ...
ParameterTypeDescription
nodeaspose.threed.Node
policyaspose.threed.entities.SplitMeshPolicy
create_child_nodesboolCreate child nodes for each sub-mesh.
remove_old_meshboolRemove the old mesh after split, if this parameter is false, the old and new meshes will co-exists.

Example

The following code shows how to split a box into sub meshes using material indices.

from aspose import pycore
from aspose.threed.entities import Box, MappingMode, PolygonModifier, ReferenceMode, SplitMeshPolicy, VertexElementMaterial, VertexElementType

#  Bir kutu ağı oluştur (Bir kutu 6 düzlemden oluşur)
box = Box().to_mesh()
#  Bu ağ üzerinde bir malzeme öğesi oluştur
mat = pycore.cast(VertexElementMaterial, box.create_element(VertexElementType.MATERIAL, MappingMode.POLYGON, ReferenceMode.INDEX))
#  Ve her düzlem için farklı malzeme indeksini belirt
mat.indices.extend([0, 1, 2, 3, 4, 5 ])
#  Şimdi bunu 6 alt ağa böl, her düzlemde 6 farklı malzeme belirttik, her düzlem bir alt ağ haline gelecek.
#  CloneData politikasını kullandık, her düzlem aynı kontrol noktası bilgisine veya kontrol noktasına dayalı vertex öğe bilgisine sahip olacak.
planes = PolygonModifier.split_mesh(box, SplitMeshPolicy.CLONE_DATA)
#  Şimdi bunu 2 alt ağa böl, ilk ağ 0/1/2 düzlemleri içerecek ve ikinci ağ 3/4/5. düzlemleri içerecek.
mat.indices.clear()
mat.indices.extend([0, 0, 0, 1, 1, 1 ])
#  CompactData politikasını kullandık, her düzlem kendi kontrol noktası bilgisine veya kontrol noktasına dayalı vertex öğe bilgisine sahip olacak.
planes = PolygonModifier.split_mesh(box, SplitMeshPolicy.COMPACT_DATA)

See Also