Mesh
Naamruimte: Aspose.ThreeD.Entities (Aspose.3D 26.1.0)
Mesh slaat polygoongeometrie op als een lijst van controlepunten (vertexposities) en een lijst van polygoonvlakken. Elk polygoonvlak is een lijst van nulgebaseerde indexen in de controlepuntenarray. Aanvullende per-vertex data – normalen, UV-coördinaten, vertexkleuren – worden toegevoegd als VertexElement lagen.
public class Mesh : GeometryMethoden
A3DObject → SceneObject → Entity → Geometry → Mesh
Methoden
Bouw een enkel driehoek‑mesh vanaf nul:
using Aspose.ThreeD;
using Aspose.ThreeD.Entities;
// Create the mesh and add three vertex positions
var mesh = new Mesh();
mesh.ControlPoints.Add(new Vector4(0.0, 0.0, 0.0, 1.0)); // vertex 0
mesh.ControlPoints.Add(new Vector4(1.0, 0.0, 0.0, 1.0)); // vertex 1
mesh.ControlPoints.Add(new Vector4(0.5, 1.0, 0.0, 1.0)); // vertex 2
// Define one triangle face using vertex indices
mesh.CreatePolygon(0, 1, 2);
// Attach to a scene and save
var scene = new Scene();
scene.RootNode.CreateChildNode("triangle", mesh);
scene.Save("triangle.stl");Bouw vanuit een primitive en inspecteer:
var sphere = new Sphere(1);
var mesh = sphere.ToMesh();
Console.WriteLine("Vertices: " + mesh.ControlPoints.Count);
Console.WriteLine("Polygons: " + mesh.PolygonCount);Methoden
| Name | Type | Access | Description |
|---|---|---|---|
Edges | IArrayList<int> | Read | Gets the edges. |
PolygonCount | int | Read | Gets the polygon count. |
Polygons | IList<int[]> | Read | Gets the polygons. |
Visible | bool | Read/Write | Gets or sets the visible. |
Deformers | IList<Deformer> | Read | Gets the deformers. |
ControlPoints | IArrayList<Vector4> | Read | Gets the control points. |
CastShadows | bool | Read/Write | Gets or sets the cast shadows. |
ReceiveShadows | bool | Read/Write | Gets or sets the receive shadows. |
VertexElements | IList<VertexElement> | Read | Gets the vertex elements. |
Excluded | bool | Read/Write | Gets or sets the excluded. |
ParentNodes | List<Node> | Read | Gets the parent nodes. |
ParentNode | Node | Read/Write | Gets or sets the parent node. |
Scene | Scene | Read | Gets the scene. |
Name | string | Read/Write | Gets or sets the name. |
Properties | PropertyCollection | Read | Gets the properties. |
Methoden
| Signature | Description |
|---|---|
Mesh() | Creates a Mesh with the specified name |
Mesh(name: string) | |
GetPolygonSize(index: int) | Gets the vertex count of the specified polygon. |
GetEnumerator() | Gets the enumerator for each inner polygons. |
CreatePolygon(indices: int[]) | Create a polygon with specified indices |
CreatePolygon(v1: int, v2: int, v3: int, v4: int) | Create a polygon with specified indices |
CreatePolygon(v1: int, v2: int, v3: int) | Create a polygon with specified indices |
ToMesh() | Gets the Mesh instance from current entity. |
IsManifold() | Check if current mesh is a manifold mesh. This function will not cache the manifold calculation result. |
Optimize(vertexElements: bool) | Optimize the mesh’s memory usage by eliminating duplicated control points |
Optimize(vertexElements: bool, toleranceControlPoint: float, toleranceNormal: float, toleranceUV: float) | Optimize the mesh’s memory usage by eliminating duplicated control points |
Triangulate() | Return triangulated mesh |
Geometry(name: string) | |
GetDeformers() | Gets all deformers |
GetElement(type: VertexElementType) | Gets a vertex element with specified type |
GetVertexElementOfUV(textureMapping: TextureMapping) | Gets a VertexElementUV instance with given texture mapping type |
CreateElement(type: VertexElementType) | Creates a vertex element with specified type and add it to geometry. |
AddElement(element: VertexElement) | Adds an existing vertex element to current geometry |
CreateElementUV(uvMapping: TextureMapping) | Creates a VertexElementUV with given texture mapping type. |
Entity(name: string) | |
GetBoundingBox() | Gets the bounding box of current entity in its object space coordinate system. |
GetEntityRendererKey() | Gets the key of the entity renderer registered in the renderer |
SceneObject(name: string) | |
A3DObject() | |
RemoveProperty(property: Property) | Removes a dynamic property. |
GetProperty(property: string) | Get the value of specified property |
SetProperty(property: string, value: object?) | Sets the value of specified property |
FindProperty(propertyName: string) | Finds the property. It can be a dynamic property (Created by CreateDynamicProperty/SetProperty) or native property(Identified by its name) |