CMeshObject¶
-
class
Lib3MF
::
CMeshObject
: public CObject¶ -
Lib3MF_uint32
GetVertexCount
()¶ Returns the vertex count of a mesh object.
- Returns
filled with the vertex count.
-
Lib3MF_uint32
GetTriangleCount
()¶ Returns the triangle count of a mesh object.
- Returns
filled with the triangle count.
-
sPosition
GetVertex
(const Lib3MF_uint32 nIndex)¶ Returns the vertex count of a mesh object.
- Parameters
nIndex – Index of the vertex (0 to vertexcount - 1)
- Returns
filled with the vertex coordinates.
-
void
SetVertex
(const Lib3MF_uint32 nIndex, const sPosition &Coordinates)¶ Sets the coordinates of a single vertex of a mesh object
- Parameters
nIndex – Index of the vertex (0 to vertexcount - 1)
Coordinates – contains the vertex coordinates.
-
Lib3MF_uint32
AddVertex
(const sPosition &Coordinates)¶ Adds a single vertex to a mesh object
- Parameters
Coordinates – contains the vertex coordinates.
- Returns
Index of the new vertex
-
void
GetVertices
(std::vector<sPosition> &VerticesBuffer)¶ Obtains all vertex positions of a mesh object
- Parameters
VerticesBuffer – contains the vertex coordinates.
-
sTriangle
GetTriangle
(const Lib3MF_uint32 nIndex)¶ Returns indices of a single triangle of a mesh object.
- Parameters
nIndex – Index of the triangle (0 to trianglecount - 1)
- Returns
filled with the triangle indices.
-
void
SetTriangle
(const Lib3MF_uint32 nIndex, const sTriangle &Indices)¶ Sets the indices of a single triangle of a mesh object.
- Parameters
nIndex – Index of the triangle (0 to trianglecount - 1)
Indices – contains the triangle indices.
-
Lib3MF_uint32
AddTriangle
(const sTriangle &Indices)¶ Adds a single triangle to a mesh object
- Parameters
Indices – contains the triangle indices.
- Returns
Index of the new triangle
-
void
GetTriangleIndices
(std::vector<sTriangle> &IndicesBuffer)¶ Get all triangles of a mesh object
- Parameters
IndicesBuffer – contains the triangle indices.
-
void
SetObjectLevelProperty
(const Lib3MF_uint32 nUniqueResourceID, const Lib3MF_uint32 nPropertyID)¶ Sets the property at the object-level of the mesh object.
- Parameters
nUniqueResourceID – the object-level Property UniqueResourceID.
nPropertyID – the object-level PropertyID.
-
bool
GetObjectLevelProperty
(Lib3MF_uint32 &nUniqueResourceID, Lib3MF_uint32 &nPropertyID)¶ Gets the property at the object-level of the mesh object.
- Parameters
nUniqueResourceID – the object-level Property UniqueResourceID.
nPropertyID – the object-level PropertyID.
- Returns
Has an object-level property been specified?
-
void
SetTriangleProperties
(const Lib3MF_uint32 nIndex, const sTriangleProperties &Properties)¶ Sets the properties of a single triangle of a mesh object.
- Parameters
nIndex – Index of the triangle (0 to trianglecount - 1)
Properties – contains the triangle properties.
-
void
GetTriangleProperties
(const Lib3MF_uint32 nIndex, sTriangleProperties &Property)¶ Gets the properties of a single triangle of a mesh object.
- Parameters
nIndex – Index of the triangle (0 to trianglecount - 1)
Property – returns the triangle properties.
-
void
SetAllTriangleProperties
(const CInputVector<sTriangleProperties> &PropertiesArrayBuffer)¶ Sets the properties of all triangles of a mesh object. Sets the object level property to the first entry of the passed triangle properties, if not yet specified.
- Parameters
PropertiesArrayBuffer – contains the triangle properties array. Must have trianglecount elements.
-
void
GetAllTriangleProperties
(std::vector<sTriangleProperties> &PropertiesArrayBuffer)¶ Gets the properties of all triangles of a mesh object.
- Parameters
PropertiesArrayBuffer – returns the triangle properties array. Must have trianglecount elements.
-
void
ClearAllProperties
()¶ Clears all properties of this mesh object (triangle and object-level).
-
void
SetGeometry
(const CInputVector<sPosition> &VerticesBuffer, const CInputVector<sTriangle> &IndicesBuffer)¶ Set all triangles of a mesh object
- Parameters
VerticesBuffer – contains the positions.
IndicesBuffer – contains the triangle indices.
-
bool
IsManifoldAndOriented
()¶ Retrieves, if an object describes a topologically oriented and manifold mesh, according to the core spec.
- Returns
returns, if the object is oriented and manifold.
-
PBeamLattice
BeamLattice
()¶ Retrieves the BeamLattice within this MeshObject.
- Returns
the BeamLattice within this MeshObject
-
Lib3MF_uint32
-
typedef std::shared_ptr<CMeshObject>
Lib3MF
::
PMeshObject
¶ Shared pointer to CMeshObject to easily allow reference counting.