Class NURBSIsoCurve
See Also: Class NURBSCurve.
class NURBSIsoCurve : public NURBSCurve
Description:
This class is available in release 2.0 and later only.
This class defines a dependent iso curve. U and V iso curves are dependent curves created along lines of constant parameter value of a NURBS surface. Note the difference between "Iso Lines", which are a display artifact, and "Iso Curves" which are the dependent objects. There are methods available to get/set the parent surface index and id, get/set the direction of the iso curve, and get/set the parameter which determines the location on the surface the curve matches.
All methods of this class are implemented by the system.
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:
NURBSIsoCurve();
Remarks:
Constructor. The data members are initialized as follows:
mType = kNIsoCurve;
mpObject = NULL;
mpNSet = NULL;
mParentId = 0;
mParentIndex = -1;
mIsU = TRUE;
mParam = 0.0;
mTrim = FALSE;
mFlipTrim = FALSE;
mSeed = Point2(0.0, 0.0);
Prototype:
~NURBSIsoCurve();
Remarks:
Destructor.
Prototype:
void SetParent(int index);
Remarks:
Sets the index in the NURBSSet of the specified parent object.
Parameters:
int index
The index into the NURBSSet of the parent surface.
Prototype:
void SetParentId(NURBSId id);
Remarks:
Sets the NURBSId of the specified parent.
Parameters:
NURBSId id
The id to set.
Prototype:
int GetParent();
Remarks:
Returns the index in the NURBSSet of the parent object.
Prototype:
NURBSId GetParentId();
Remarks:
Returns the NURBSId of the parent. Note that a NURBSId won't be valid until the object has been instantiated in the scene.
Prototype:
void SetDirection(BOOL isU);
Remarks:
Sets the direction of the iso curve, either U or V.
Parameters:
BOOL isU
TRUE for U; FALSE for V.
Prototype:
BOOL GetDirection();
Remarks:
Returns TRUE if the iso curve is in the U direction; FALSE for the V direction.
Prototype:
void SetParam(TimeValue t, double p);
Remarks:
Sets the parameter which determines where on the surface the iso curve is defined.
Parameters:
TimeValue t
The time at which to evaluate the surface.
double p
The parameter defining the location on the surface.
Prototype:
double GetParam(TimeValue t);
Remarks:
Returns the parameter which determines where on the surface the iso curve is defined.
Parameters:
TimeValue t
The time at which to evaluate the surface.
Prototype:
BOOL GetTrim();
Remarks:
Returns the state of the trim flag. When set the surface is trimmed against the curve. When not set, the surface isn’t trimmed
Prototype:
void SetTrim(BOOL trim);
Remarks:
Sets the state of the trim flag. When set the surface is trimmed against the curve. When not set, the surface isn’t trimmed
Parameters:
BOOL trim
TRUE to trim; FALSE to not trim.
Prototype:
BOOL GetFlipTrim();
Remarks:
Returns the state of the trim flip flag. When set this trims the surface in the opposite direction
Prototype:
void SetFlipTrim(BOOL flip);
Remarks:
Sets the state of the trim flip flag. When set this trims the surface in the opposite direction
Parameters:
BOOL flip
TRUE to flip; FALSE to not flip.
Prototype:
Point2 GetSeed();
Remarks:
Returns the UV location of the seed value on the curve.
Prototype:
void SetSeed(Point2& seed);
Remarks:
Sets the UV location of the seed value on the curve.
Parameters:
Point2& seed
The seed value to set.
Operators:
Prototype:
NURBSIsoCurve & operator=(const NURBSIsoCurve& curve);
Remarks:
Assignment operator.
Parameters:
const NURBSIsoCurve& curve
The curve to assign.