CFx SDK Documentation 2024 SP0
|
DOM. More...
#include <AECMesh.h>
Static Public Member Functions | |
static void | PerformOperation (FacetModeler::BooleanOperation eOperation, const Mesh &mOp1, const Mesh &mOp2, Mesh &mResult, bool bCheckExtents=false) |
Public Attributes | |
OdUInt32 | Tag |
AECGe::Mesh::Mesh | ( | ) |
constructor.
Adds a face.
OdUInt32 AECGe::Mesh::AddFace | ( | const MeshFace & | face, |
bool | bCheckPlane = true , |
||
bool * | bSuccess = 0 |
||
) |
Adds a face.
Adds the list of triangular faces specified by triples of vertex indices.
OdUInt32 AECGe::Mesh::AddVertex | ( | const OdGePoint3d & | ptVertex, |
bool | bUnique = false |
||
) |
Appends new vertex.
ptVertex | [in] Vertex to add. |
bUnique | [in] If true then method doesn't add duplicate point but the performance is pour. It is faster to add multiple points without this check and then call RemoveSameVertices. |
Such calls should be followed by Normalize call
Fast append operation.
void AECGe::Mesh::Clear | ( | ) |
Clear mesh contents.
void AECGe::Mesh::ClearFaces | ( | ) |
Clear all faces leaving vertex data intact.
Returns the array of simple closed meshes.
OdUInt32 AECGe::Mesh::GetEdgeCount | ( | ) | const |
Returns the number of edges.
void AECGe::Mesh::GetExtents | ( | OdGeExtents3d & | extents | ) | const |
Returns mesh extents.
OdUInt32 AECGe::Mesh::GetFaceCount | ( | ) | const |
Returns the number of vertices.
const OdGePoint3d & AECGe::Mesh::GetVertex | ( | OdUInt32 | iIndex | ) | const |
Returns vertex location by index.
OdUInt32 AECGe::Mesh::GetVertexCount | ( | ) | const |
Returns the number of vertices.
double AECGe::Mesh::GetVolume | ( | ) | const |
Returns mesh volume.
void AECGe::Mesh::Invert | ( | ) |
Inverts the mesh.
bool AECGe::Mesh::IsClosed | ( | ) | const |
Returns whether the mesh is a closed solid body.
bool AECGe::Mesh::IsEmpty | ( | ) | const |
Returns true if mesh doesn't contain any faces.
void AECGe::Mesh::Normalize | ( | ) |
Performs several actions for preserving mesh quality.
|
static |
Performs boolean operation with two meshes.
eOperation | [in] Type of boolean operation. |
mOp1 | [in] First operand. |
mOp2 | [in] Second operand. |
mResult | [in] Result. |
bCheckExtents | [in] If true and the extents of two operands do not intersect then fast operation is used. |
void AECGe::Mesh::RegenEdgeVisibilities | ( | ) |
Marks edges that lie between coplanar faces as invisible.
void AECGe::Mesh::RemoveEdgeVisibilities | ( | ) |
Sets all invisible edges as visible.
void AECGe::Mesh::RemoveSameVertices | ( | ) |
Forces only unique vertices to be present in vertex container.
void AECGe::Mesh::RemoveTJunctions | ( | ) |
Splits all edges by all vertices.
void AECGe::Mesh::SetEdgeVisibilities | ( | OdGiVisibility | eVisibility | ) |
Sets all edge visibilities to specified value.
void AECGe::Mesh::SetVertex | ( | OdUInt32 | iIndex, |
const OdGePoint3d & | ptVertex | ||
) |
Sets vertex location by index.
iIndex | [in] Vertex index. |
ptVertex | [in] Vertex location. |
void AECGe::Mesh::Simplify | ( | ) |
Swaps face with the specified index with the specified one.
void AECGe::Mesh::Transform | ( | const OdGeMatrix3d & | mMatrix | ) |
Transforms the mesh.
const std::vector< OdGePoint3d > & AECGe::Mesh::Vertices | ( | ) | const |
Returns the array of vertices.
OdUInt32 AECGe::Mesh::Tag |