All Frameworks Class Hierarchy This Framework Next Indexes
Tessellation Class CATBodyTessellator
CATBodyTessellator
Usage: you must use this class as is. You should never derive it.
public class CATBodyTessellator
Class defining a Tessellation operator on a body.
This operator computes a discretized geometry on the skin of a body, as triangles and bars.
The extremities of the bars are called points. Three parameters tune the tessellation result:
- Sag
- Defines the maximum distance between a bar and the object to tessellate
- Step
- Defines the maximum length of a bar. If not defined, the step is infinite
(this parameter is unused)
- Angle
- Defines the maximum angle between the normals at each bar end.
The Tessellation operator follows the scheme of all the CGM operators:
- Create an operator instance,
- Run,
- Recover the results by the means of iterators,
- Delete the operator instance. The deletion of the operator leads to the deletion
of the iterators and the arrays of results.
Constructor and Destructor Index
- o
CATBodyTessellator(CATBody*,double,double)
- Constructs a CATBodyTessellator with an infinite step.
- o
~CATBodyTessellator()
-
Method Index
- o
GetEdge(CATEdge*,CATLONG32&,double**)
- Retrieves the results (in doubles) associated with a topological edge of the input body.
- o
GetEdge(CATEdge*,CATLONG32&,float**)
- Retrieves the result (in floats) associated with a topological edge of the input body.
- o
GetEdge(CATEdge*,CATMathSetOfPointsND**,CATMathSetOfPointsND**)
- Retrieves the results associated with a topological edge of the input body.
- o
GetEdge(CATEdge*,CATTessEdgeIter**)
- Retrieves the tessellation point numbers on an edge relative to an adjacent face point.
- o
GetFace(CATFace*,CATBoolean&,CATTessPointIter**,CATTessStripeIter**,CATTessFanIter**,CATTessPolyIter**,CATTessTrianIter**,short*)
- Retrieves the results associated with a topological face of the input body.
- o
GetVertex(CATVertex*,CATMathPoint*)
- Retrieves the result associated with a topological vertex of the input body.
- o
Run()
- Runs this CATBodyTessellator.
- o
SetStep(double)
- Defines a finite step for this CATBodyTessellator.
Constructor and Destructor
o CATBodyTessellator
public CATBodyTessellator( | CATBody* | iBody, |
| double | iSag, |
| double | iAngle | =CATPIBY4) |
-
Constructs a CATBodyTessellator with an infinite step.
- Parameters:
-
- iBody
- The body to tessellate.
- iSag
- The Sag value.
- iAngle
- The Angle value in radian.
o ~CATBodyTessellator
public ~CATBodyTessellator( | ) |
-
Methods
o GetEdge
-
Retrieves the results (in doubles) associated with a topological edge of the input body.
- Parameters:
-
- iEdge
- The pointer to an edge of the input body.
- oNumberOfPoints
- The number of points of the resulting tessellation.
- oPointData
- The array of the resulting points. This array is allocated by the GetEdge
method. The j-th coordinate of the i-th point is
oPointData[3*(i-1)+j-1].
o GetEdge
-
Retrieves the result (in floats) associated with a topological edge of the input body.
- Parameters:
-
- iEdge
- The pointer to an edge of the input body.
- oNumberOfPoints
- The number of points of the resulting tessellation.
- oPointData
- The array of the resulting points. This array is allocated by the GetEdge
method. The j-th coordinate of the i-th point is
oPointData[3*(i-1)+j-1].
of the resulting tessellation.
o GetEdge
-
Retrieves the results associated with a topological edge of the input body.
- Parameters:
-
- iEdge
- The pointer to an edge of the input body.
- oMathPoints
- The pointer to the created CATMathSetOfPointsND. This set contains the points (as 3 Cartesian coordinates)
of the resulting tessellation.
- oCrvParams
- The pointer to the created CATMathSetOfPointsND. This set contains the points (as a CATCrvParam on the
underlying edge curve)
of the resulting tessellation.
o GetEdge
-
Retrieves the tessellation point numbers on an edge relative to an adjacent face point.
- Parameters:
-
- iEdge
- The pointer to an edge of the input body.
- oEdgeIter
- The pointer to the created CATTessEdgeIterator.
o GetFace
-
Retrieves the results associated with a topological face of the input body.
All the output iterators are allocated by the GetFace method,
and are deleted when the operator is deleted.
Note: The results do not necessarily contain all types of tessellation
objects for a single body. You can have no isolated triangles or no triangle strips
in a tessellated body. For a example, for a degenerated face with a small width,
the result can be made up of two vertices.
- Parameters:
-
- iFace
- The pointer to a face of the input body.
- oPlane
- Retrieves 1 if the face is planar, 0 otherwise.
- oPoints
- The pointer to the created CATTessPointIter, to retrieve the computed points.
- oStrips
- The pointer to the created CATTessStripeIter, to retrieve the computed triangle strips.
- oFans
- The pointer to the created CATTessFanIter, to retrieve the computed triangle fans.
- oPolygons
- The pointer to the created CATTessPolyIter, to retrieve the computed polygons.
- oTriangles
- The pointer to the created CATTessTrianIter, to retrieve the isolated triangles.
- oSide
- The face orientation.
Legal values: 1 if the face orientation is outwards, -1 if it is inwards.
o GetVertex
-
Retrieves the result associated with a topological vertex of the input body.
- Parameters:
-
- iVertex
- The pointer to a vertex of the input body.
- oMathPoint
- The corresponding CATMathPoint.
o Run
-
Runs this CATBodyTessellator.
o SetStep
public void SetStep( | double | iStep) |
-
Defines a finite step for this CATBodyTessellator.
- Parameters:
-
- iStep
- The Step value.
This object is included in the file: CATBodyTessellator.h
If needed, your Imakefile.mk should include the module: CATTessellation