GMModelInterfaces Interface CATTopology
Usage: an implementation of this interface is supplied and you must use it as is. You should not reimplement it.
interface CATTopology
Base interface of the cell-complexes, including
non manifold, non connected complexes, mixing dimensions of topological cells.
Method Index
- o
GetAllCells(CATLISTP(CATCell)&,short)
- Returns all the CATCells of a prescribed dimension of this CATTopology.
- o
GetAllDomains(short,short,CATLISTP(CATDomain)&)
- Returns all the CATDomains of prescribed low and high dimensions of this CATTopology.
- o
GetCellNumbers(int*,int*,int*,int*)
- Returns the number of Vertices, Edges, Faces and Volumes of this CATTopology.
- o
IsInside(CATBody*,CATTopology*,CATBoolean)
- Tests whether this CATTopology is recursively defined as a boundary of another CATTopology.
- o
IsTouched()
- Tests whether this CATTopology is touched.
- o
Touch(CATBody*)
- Declares that this CATTopology is touched by an operation inside the context of a given body.
Methods
o GetAllCells
public virtual GetAllCells( | | ioResult, |
| | iDimension | =-1 ) |
-
Returns all the CATCells of a prescribed dimension of this CATTopology.
- Parameters:
-
- ioResult
- The list of the resulting cells. Each cell only occurs once in the list.
- iDimension
- The dimension of the cells.
Legal values:
- -1
- All the the dimensions.
- 0
- The vertices.
- 1
- The edges.
- 2
- The faces.
- 3
- The volumes.
o GetAllDomains
public virtual GetAllDomains( | | iContainedCellsDimension, |
| | iContainingCellDimension, |
| | ioResult) |
-
Returns all the CATDomains of prescribed low and high dimensions of this CATTopology.
- Parameters:
-
- iContainedCellsDimension
- The dimension of the cells contained into the domain.
- iContainingCellDimension
- The dimension of the unique cell or body containing the domain.
Note that iContainedCellDimension <= iContainingCellDimension.
For a CATDomain contained into a CATBody, this dimension is 3.
- ioResult
- The list of the resulting domains. Each domain only occurs once in the list.
o GetCellNumbers
public virtual GetCellNumbers( | | iopNbVertices, |
| | iopNbEdges, |
| | iopNbFaces, |
| | iopNbVolumes) |
-
Returns the number of Vertices, Edges, Faces and Volumes of this CATTopology.
- Parameters:
-
- iopNbVertices,
- iopNbEdges, iopNbFaces, ioNbVolumes The pointers to the output numbers.
o IsInside
public virtual IsInside( | | iBody, |
| | iTopologyInside | = NULL, |
| | iGenerateUpwardLinks | = FALSE ) |
-
Tests whether this CATTopology is recursively defined as a boundary of another CATTopology.
- Parameters:
-
- iBody
- The pointer to the body inside which the search is done.
- iTopologyInside
- The pointer to the other CATTopology (that must belong to iBody).
If NULL the search is done in the entire body iBody.
- iGenerateUpwardLinks
- Reserved for future use (do not change the default value).
- Returns:
- The result of the test.
Legal values::
A TRUE value is returned if the body owns this CATTopology, FALSE otherwise.
o IsTouched
public virtual IsTouched( | ) |
-
Tests whether this CATTopology is touched.
After its creation a CATToplogy is modifiable.
It becomes non-modifiable when a body containing it is frozen.
For smart manipulations of a body, one can first Touch some cells of the body,
then use a CATSmartBodyDuplicator in order to duplicate only the touched cells and
the domains impacted by these modifications.
A non-modifiable touched cell will be duplicated during the smart duplication inside another body
where it the copy will be modifiable.
- Returns:
- The result of the test.
Legal values:
TRUE if this is touched, FALSE otherwise.
o Touch
public virtual Touch( | | iBodyForImpactPropagation) |
-
Declares that this CATTopology is touched by an operation inside the context of a given body.
The use of a smart duplicator after this method will duplicate the cells that are touched.
- Parameters:
-
- iBodyForImpactPropagation
- The pointer to the body inside which the propagation of the modifications of this has to be
done.
- See also:
-
This object is included in the file: CATTopology.h
If needed, your Imakefile.mk should include the module: CATGMModelInterfaces
Copyright © 1999-2015, Dassault Systèmes. All rights reserved.