Class NURBSSurfSurfIntersectionCurve
See Also: Class NURBSCurve, Class Point2.
class NURBSSurfSurfIntersectionCurve : public NURBSCurve
Description:
This class is available in release 2.5 and later only.
This class provides access to the Surface-Surface Intersection Curve. This is a curve that is defined by the intersection of two surfaces. You can use surface-surface intersection curves for trimming.
Friend Classes:
friend class NURBSSet
Methods:
protected:
Prototype:
void Clean(NURBSIdTab ids);
Remarks:
This method is available in release 3.0 and later only.
This methods breaks the relation between this NURBSObject and a NURBSSet.
Parameters:
NURBSIdTab ids
A table with the IDs of each object in the NURBSSet.
public:
Prototype:
NURBSSurfSurfIntersectionCurve(void);
Remarks:
Constructor. The data members are initialized as follows:
mType = kNSurfSurfIntersectionCurve;
mpObject = NULL;
mpNSet = NULL;
mParentId[0] = mParentId[1] = 0;
mParentIndex[0] = mParentIndex[1] = -1;
mTrim[0] = mTrim[1] = FALSE;
mFlipTrim[0] = mFlipTrim[1] = FALSE;
mSeed = Point2(0.0, 0.0);
Prototype:
virtual ~NURBSSurfSurfIntersectionCurve(void);
Remarks:
Destructor.
Prototype:
void SetParent(int pnum, int index);
Remarks:
Sets the surface or curve by specifying its index into the NURBSSet.
Parameters:
int pnum
Pass 0 for the surface and 1 for the curve.
int index
The index into the NURBSSet of the object to set.
Prototype:
void SetParentId(int pnum, NURBSId id);
Remarks:
Sets the surface or curve by specifying its index into the NURBSSet.
Parameters:
int pnum
Pass 0 for the surface and 1 for the curve.
NURBSId id
The id of the object to set.
Prototype:
int GetParent(int pnum);
Remarks:
Returns the index into the NURBSSet of the curve or surface.
Parameters:
int pnum
Pass 0 for the surface and 1 for the curve.
Prototype:
NURBSId GetParentId(int pnum);
Remarks:
Returns the NURBSId of the curve or surface.
Parameters:
int pnum
Pass 0 for the surface and 1 for the curve.
Prototype:
BOOL GetTrim(int tnum);
Remarks:
Returns the state of the specified trim flag. When on, the surface is trimmed against the intersection curve. When off, the surface isn’t trimmed.
Parameters:
int tnum
Passing 0 trims the first parent surface, and passing 1 trims the second parent surface
Prototype:
void SetTrim(int tnum, BOOL trim);
Remarks:
Sets the state of the specified trim flag. When on, the surface is trimmed against the intersection curve. When off, the surface isn’t trimmed.
Parameters:
int tnum
Passing 0 trims the first parent surface, and passing 1 trims the second parent surface
BOOL trim
TRUE to trim; FALSE to not trim.
Prototype:
BOOL GetFlipTrim(int tnum);
Remarks:
Returns the state of the trim flip flag. When on, the specified surface is trimmed in the opposite direction.
Parameters:
int tnum
0 for the first surface; 1 for the second surface.
Prototype:
void SetFlipTrim(int tnum, BOOL flip);
Remarks:
Sets the state of the trim flip flag. When on, the specified surface is trimmed in the opposite direction.
Parameters:
int tnum
0 for the first surface; 1 for the second surface.
BOOL flip
TRUE to flip; FALSE not to flip.
Prototype:
void SetSeed(Point2& seed);
Remarks:
Change the UV location of the seed value on the first surface. If there is a choice of intersections, the intersection closest to the seed point is the one used to create the curve.
Parameters:
Point2& seed
The UV location.
Prototype:
Point2 GetSeed();
Remarks:
Returns the UV location of the seed value on the first surface. If there is a choice of intersections, the intersection closest to the seed point is the one used to create the curve.
Prototype:
NURBSSurfSurfIntersectionCurve & operator=(const NURBSSurfSurfIntersectionCurve& curve);
Remarks:
Assignment operator.
Parameters:
const NURBSSurfSurfIntersectionCurve& curve
The curve to assign.