Class NURBSProjectVectorCurve
See Also: Class NURBSCurve, Class Point2, Class Point3.
class NURBSProjectVectorCurve : public NURBSCurve
Description:
This class is available in release 2.5 and later only.
This class provides access to the Vector Projected Curve. A Vector Projected curve lies on a surface. This is almost the same as a Normal Projected curve, except that the projection from the existing curve to the surface is in the direction of a vector that you can control. Vector projected curves may be used 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:
NURBSProjectVectorCurve(void);
Remarks:
Constructor. The data members are initialized as follows:
mType = kNProjectVectorCurve;
mpObject = NULL;
mpNSet = NULL;
mParentId[0] = mParentId[1] = 0;
mParentIndex[0] = mParentIndex[1] = -1;
mTrim = FALSE;
mFlipTrim = FALSE;
mSeed = Point2(0.0, 0.0);
mPVec = Point3(0.0, 0.0, 1.0);
Prototype:
virtual ~NURBSProjectVectorCurve(void);
Remarks:
Destructor.
Prototype:
void SetParent(int pnum, int index);
Remarks:
Parameters:
int pnum
Pass 0 for the surface and 1 for the curve.
int index
The index in the NURBSSet of the surface or curve.
Prototype:
void SetParentId(int pnum, NURBSId id);
Remarks:
Sets the surface or curve used by specifying its NURBSId.
Parameters:
int pnum
Pass 0 for the surface and 1 for the curve.
NURBSId id
The id of the surface or curve.
Prototype:
int GetParent(int pnum);
Remarks:
Returns the index into the NURBSSet of surface or curve used.
Parameters:
int pnum
Pass 0 for the surface and 1 for the curve.
Prototype:
NURBSId GetParentId(int pnum);
Remarks:
Returns the NURBSId of surface or curve used.
Parameters:
int pnum
Pass 0 for the surface and 1 for the curve.
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 surface.
Prototype:
void SetSeed(Point2& seed);
Remarks:
Sets the UV location of the seed value on the surface. If there is a choice of projections, the projection closest to the seed point is the one used to create the curve.
Parameters:
Point2& seed
The seed value to set.
Prototype:
void SetPVec(TimeValue t, Point3& pvec);
Remarks:
Sets the projection vector used at the time passed.
Parameters:
TimeValue t
The time at which to set the projection vector.
Point3& pvec
The vector to set.
Prototype:
Point3& GetPVec(TimeValue t);
Remarks:
Returns the projection vector used at the time passed.
Parameters:
TimeValue t
The time at which to get the projection vector.
Prototype:
NURBSProjectVectorCurve & operator=(const NURBSProjectVectorCurve& curve);
Remarks:
Assignment operator.
Parameters:
const NURBSProjectVectorCurve& curve
The curve to assign.