GeometricObjects CATEdgeCurveIterator

Usage: you must use this class as is. You should never derive it.


public class CATEdgeCurveIterator

Class defining the iterator to scan the curves of a CATEdgeCurve.

By default, a given curve is retrieved as many times as it appears in the tree structure below the root CATEdgeCurve. Stuttering shared curves can be turned off upon request by the method.


Constructor and Destructor Index


o CATEdgeCurveIterator(CATEdgeCurve*)
Constructs a CATEdgeCurveIterator.
o CATEdgeCurveIterator(CATEdgeCurveIterator&)
Copy constructor.
o ~CATEdgeCurveIterator()

Method Index


o GetElement()
Returns the CATEdgeCurve that is scanned.
o Next(short*,CATLONG32*,CATLONG32*)
Skips to the next curve of the CATEdgeCurve.
o Reset()
Initializes the iterator to the beginning curve.
o Set(CATEdgeCurve*)
Defines a new CATEdgeCurve to scan.
o SetLeafScan(short)
Only scans the leaf curves.
o SetRepetitions(short)
Defines whether a curve that appears several times in the root must be output only one time.
o SetTargetType(CATGeometricType)
Only scans a defined type of curves.
o operator=(CATEdgeCurveIterator&)
Assignment operator.

Constructor and Destructor


o CATEdgeCurveIterator
public CATEdgeCurveIterator( const iEdgeCurve)
Constructs a CATEdgeCurveIterator.
Parameters:
iEdgeCurve
The pointer to the CATEdgeCurve to be scanned.
o CATEdgeCurveIterator
public CATEdgeCurveIterator( const )
Copy constructor. An unfinished scan will not be memorized in the new iterator.
o ~CATEdgeCurveIterator
public ~CATEdgeCurveIterator()

Methods


o GetElement
public GetElement()
Returns the CATEdgeCurve that is scanned.
Returns:
The pointer to the curve to scan.
o Next
public Next( oOrientation=0,
oNbPCurves=0,
oNbSurfaces=0)
Skips to the next curve of the CATEdgeCurve.
If this mehod is called without arguments the first time, it is forbidden to swap to the signature with arguments within the same scanning sequence.
Parameters:
oOrientation
The orientation with respect to the root curve (curve that has been provided to the constructor, or to the Set method). If NULL, this information is not retrieved.
oNbPCurves
The actual number of imbedded pcurves: 1 if the current curve is a pcurve itself, and one for each of the imbedded pcurves, whatever their number of occurences. If NULL, this information is not retrieved.
oNbSurfaces
The number of underlying surfaces of the imbedded pcurves. For example, the edge curve reprensenting the edge of the closure of a cylinder yields to two pcurves and one surface. A 3d curve yields zero pcurve and zero surface. If NULL, this information is not retrieved.
Returns:
The pointer to the next curve, NULL when the scan is over.
o Reset
public Reset()
Initializes the iterator to the beginning curve.
This allows you to change the target type or any of the scanning specifications.
o Set
public Set( const iNewCurve)
Defines a new CATEdgeCurve to scan.
Resets the iterator at the beginning.
Parameters:
iNewCurve
The pointer to the new curve to scan.
o SetLeafScan
public SetLeafScan( iOnlyLeaves= 1)
Only scans the leaf curves.
Parameters:
iOnlyLeaves
1 to only scan the leaf curves, 0 otherwise. Note that the 1 value in this option is incompatible with the CATEdgeCurveType value in the
method.
o SetRepetitions
public SetRepetitions( iStutter= 1)
Defines whether a curve that appears several times in the root must be output only one time.
Parameters:
iStutter
1 if it is output as many times as it appears (default value), 0 otherwise.
o SetTargetType
public SetTargetType( iTarget=0)
Only scans a defined type of curves.
Parameters:
iTarget
The geometry type that is scanned, like CATPCurveType, or CATIntCurveType. For instance, use CATEdgeCurveType to skip the leaves in the tree. Type 0 means no type filter at all.
o operator=
public operator=( const )
Assignment operator. An unfinished scan will not be memorized in the new iterator.

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

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