# DataExchange
TKSTL
StlMesh

# StlMesh_Mesh Class Reference

Mesh definition. The mesh contains one or several
domains. Each mesh domain contains a set of
triangles. Each domain can have its own deflection
value.
.

`#include <StlMesh_Mesh.hxx>`

## Public Member Functions

Standard_EXPORT | StlMesh_Mesh ()
| Creates an empty mesh. .
virtual Standard_EXPORT void | AddDomain ()
| Adds a new mesh domain. The mesh deflection is defaulted to Confusion from package Precision. .
virtual Standard_EXPORT void | AddDomain (const Standard_Real Deflection)
| Adds a new mesh domain. //! Raised if the deflection is lower than zero //! Raised if the deflection is lower than Confusion from package Precision .
virtual Standard_EXPORT Standard_Integer | AddTriangle (const Standard_Integer V1, const Standard_Integer V2, const Standard_Integer V3, const Standard_Real Xn, const Standard_Real Yn, const Standard_Real Zn)
| Build a triangle with the triplet of vertices (V1, V2, V3). This triplet defines the indexes of the vertex in the current domain The coordinates Xn, Yn, Zn defines the normal direction to the triangle. Returns the range of the triangle in the current domain. .
virtual Standard_EXPORT Standard_Integer | AddVertex (const Standard_Real X, const Standard_Real Y, const Standard_Real Z)
| Returns the range of the vertex in the current domain. .
virtual Standard_EXPORT Standard_Integer | AddOnlyNewVertex (const Standard_Real X, const Standard_Real Y, const Standard_Real Z)
| Returns the range of the vertex in the current domain. The current vertex is not inserted in the mesh if it already exist. .
virtual Standard_EXPORT void | Bounds (gp_XYZ &XYZmax, gp_XYZ &XYZmin) const
| Each vertex of the mesh verifies the following relations : XYZMin.X() <= X <= XYZMax.X() XYZMin.Y() <= Y <= XYZMax.y() XYZMin.Z() <= Z <= XYZMax.Z() .
virtual Standard_EXPORT void | Clear ()
virtual Standard_EXPORT Standard_Real | Deflection (const Standard_Integer DomainIndex) const
| Returns the deflection of the mesh of the domain of range <domainindex>. //! Raised if <domainindex> is lower than 1 or greater than the number of domains. .
virtual Standard_Boolean | IsEmpty () const
virtual Standard_Integer | NbDomains () const
| Number of domains in the mesh. .
Standard_Integer | NbTriangles () const
| Cumulative Number of triangles in the mesh. .
virtual Standard_EXPORT Standard_Integer | NbTriangles (const Standard_Integer DomainIndex) const
| Number of triangles in the domain of range <domainindex>. //! Raised if <domainindex> is lower than 1 or greater than the number of domains. .
virtual Standard_Integer | NbVertices () const
| Cumulative Number of vertices in the mesh. .
virtual Standard_EXPORT Standard_Integer | NbVertices (const Standard_Integer DomainIndex) const
| Number of vertices in the domain of range <domainindex>. //! Raised if <domainindex> is lower than 1 or greater than the number of domains. .
virtual Standard_EXPORT const StlMesh_SequenceOfMeshTriangle & | Triangles (const Standard_Integer DomainIndex=1) const
| Returns the set of triangle of the mesh domain of range <domainindex>. //! Raised if <domainindex> is lower than 1 or greater than the number of domains. .
virtual Standard_EXPORT const TColgp_SequenceOfXYZ & | Vertices (const Standard_Integer DomainIndex=1) const
| Returns the coordinates of the vertices of the mesh domain of range <domainindex>. {XV1, YV1, ZV1, XV2, YV2, ZV2, XV3,.....} //! Raised if <domainindex> is lower than 1 or greater than the number of domains. .
Standard_EXPORT const | Handle (Standard_Type)&DynamicType() const

## Private Attributes

Standard_Integer | nbTriangles
Standard_Integer | nbVertices
StlMesh_SequenceOfMeshDomain | domains
gp_XYZ | xyzmax
gp_XYZ | xyzmin

## Constructor & Destructor Documentation

Standard_EXPORT StlMesh_Mesh::StlMesh_Mesh | ( |  | ) |

## Member Function Documentation

virtual Standard_EXPORT void StlMesh_Mesh::AddDomain | ( | const Standard_Real | Deflection | ) | `[virtual]`

virtual Standard_EXPORT void StlMesh_Mesh::AddDomain | ( |  | ) | `[virtual]`

virtual Standard_EXPORT Standard_Integer StlMesh_Mesh::AddOnlyNewVertex | ( | const Standard_Real | X,
|  | const Standard_Real | Y,
|  | const Standard_Real | Z
| ) | `[virtual]`

virtual Standard_EXPORT Standard_Integer StlMesh_Mesh::AddTriangle | ( | const Standard_Integer | V1,
|  | const Standard_Integer | V2,
|  | const Standard_Integer | V3,
|  | const Standard_Real | Xn,
|  | const Standard_Real | Yn,
|  | const Standard_Real | Zn
| ) | `[virtual]`

virtual Standard_EXPORT Standard_Integer StlMesh_Mesh::AddVertex | ( | const Standard_Real | X,
|  | const Standard_Real | Y,
|  | const Standard_Real | Z
| ) | `[virtual]`

virtual Standard_EXPORT void StlMesh_Mesh::Bounds | ( | gp_XYZ & | XYZmax,
|  | gp_XYZ & | XYZmin
| ) | const`[virtual]`

virtual Standard_EXPORT void StlMesh_Mesh::Clear | ( |  | ) | `[virtual]`

virtual Standard_EXPORT Standard_Real StlMesh_Mesh::Deflection | ( | const Standard_Integer | DomainIndex | ) | const`[virtual]`

Standard_EXPORT const StlMesh_Mesh::Handle | ( | Standard_Type |  | ) | const

Standard_Boolean StlMesh_Mesh::IsEmpty | ( |  | ) | const`[inline, virtual]`

Standard_Integer StlMesh_Mesh::NbDomains | ( |  | ) | const`[inline, virtual]`

virtual Standard_EXPORT Standard_Integer StlMesh_Mesh::NbTriangles | ( | const Standard_Integer | DomainIndex | ) | const`[virtual]`

Standard_Integer StlMesh_Mesh::NbTriangles | ( |  | ) | const`[inline]`

virtual Standard_EXPORT Standard_Integer StlMesh_Mesh::NbVertices | ( | const Standard_Integer | DomainIndex | ) | const`[virtual]`

Standard_Integer StlMesh_Mesh::NbVertices | ( |  | ) | const`[inline, virtual]`

virtual Standard_EXPORT const StlMesh_SequenceOfMeshTriangle& StlMesh_Mesh::Triangles | ( | const Standard_Integer | DomainIndex = `1` | ) | const`[virtual]`

virtual Standard_EXPORT const TColgp_SequenceOfXYZ& StlMesh_Mesh::Vertices | ( | const Standard_Integer | DomainIndex = `1` | ) | const`[virtual]`

## Field Documentation

StlMesh_SequenceOfMeshDomain StlMesh_Mesh::domains `[private]`

Standard_Integer StlMesh_Mesh::nbTriangles `[private]`

Standard_Integer StlMesh_Mesh::nbVertices `[private]`

gp_XYZ StlMesh_Mesh::xyzmax `[private]`

gp_XYZ StlMesh_Mesh::xyzmin `[private]`

The documentation for this class was generated from the following files:

- StlMesh_Mesh.hxx
- StlMesh_Mesh.lxx