GMModelInterfaces Interface CATICGMBodyTessellator

Usage: an implementation of this interface is supplied and you must use it as is. You should not reimplement it.


interface CATICGMBodyTessellator

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:


Method Index


o GetEdge(CATEdge*,CATCGMTessEdgeIter**)
Retrieves the tessellation point numbers on an edge relative to an adjacent face point.
o GetEdge(CATEdge*,CATLONG32&,float**)
Retrieves the result (in floats) associated with a topological edge of the input body.
o GetEdge(CATEdge*,CATLONG32&,double**)
Retrieves the results (in doubles) 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 GetFace(CATFace*,CATBoolean&,CATCGMTessPointIter**,CATCGMTessStripeIter**,CATCGMTessFanIter**,CATCGMTessPolyIter**,CATCGMTessTrianIter**,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 CATICGMBodyTessellator.
o SetStep(double)
Defines a finite step for this CATICGMBodyTessellator.

Methods


o GetEdge
public virtual GetEdge( iEdge,
oEdgeIter)
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 GetEdge
public virtual GetEdge( iEdge,
oNumberOfPoints,
oPointData)
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
public virtual GetEdge( iEdge,
oNumberOfPoints,
oPointData)
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
public virtual GetEdge( iEdge,
oMathPoints,
oCrvParams)
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 GetFace
public virtual GetFace( iFace,
oPlane,
oPoints,
oStrips,
oFans,
oPolygons,
oTriangles,
oSide=(short*)0)
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 CATCGMTessPointIter, to retrieve the computed points.
oStrips
The pointer to the created CATCGMTessStripeIter, to retrieve the computed triangle strips.
oFans
The pointer to the created CATCGMTessFanIter, to retrieve the computed triangle fans.
oPolygons
The pointer to the created CATCGMTessPolyIter, to retrieve the computed polygons.
oTriangles
The pointer to the created CATCGMTessTrianIter, 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
public virtual GetVertex( iVertex,
oMathPoint)
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
public virtual Run()
Runs this CATICGMBodyTessellator.
o SetStep
public virtual SetStep( iStep)
Defines a finite step for this CATICGMBodyTessellator.
Parameters:
iStep
The Step value.

This object is included in the file: CATICGMBodyTessellator.h
If needed, your Imakefile.mk should include the module: CATGMModelInterfaces

Copyright © 1999-2015, Dassault Systèmes. All rights reserved.