Class NURBSExtrudeSurface
See Also: Class NURBSSurface.
class NURBSExtrudeSurface : public NURBSSurface
Description:
This class is available in release 2.0 and later only.
This class defines a dependent extrude surface. An extrude surface is extruded from a curve sub-object. It is similar to a surface created with the Extrude modifier. The advantage is that an extrude sub-object is part of the NURBS model, so you can use it to construct other curve and surface sub-objects. Methods are available to get/set the parent index and id, get/set the extrusion vector and get/set the extrusion distance.
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:
NURBSExtrudeSurface();
Remarks:
Constructor. The data members are initialized as follows:
mType = kNExtrudeSurface;
mpObject = NULL;
mpNSet = NULL;
mParentId = 0;
mParentIndex = -1;
mXForm.IdentityMatrix();
mDistance = 0.0;
mCurveStartParam = 0.0;
Prototype:
virtual ~NURBSExtrudeSurface();
Remarks:
Destructor.
Prototype:
void SetParent(int index);
Remarks:
Sets the index in the NURBSSet of the 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 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 SetAxis(TimeValue t, Matrix3& ray);
Remarks:
This method is available in release 3.0 and later only.
Sets the extrusion axis at the specified time.
Parameters:
TimeValue t
The time at which to set the axis system.
Matrix3& ray
The extrusion axis.
Prototype:
Matrix3& GetAxis(TimeValue t);
Remarks:
This method is available in release 3.0 and later only.
Returns the extrusion axis at the specified time.
Parameters:
TimeValue t
The time at which to get the axis.
Prototype:
void SetDistance(TimeValue t, double d);
Remarks:
Sets the length of the extrudion at the specified time.
Parameters:
TimeValue t
The time at which to set the distance.
double d
The distance to set.
Prototype:
double GetDistance(TimeValue t);
Remarks:
Returns the length of the extrudion at the specified time.
Parameters:
TimeValue t
The time at which to return the distance.
Prototype:
void SetCurveStartPoint(TimeValue t, double startpoint);
Remarks:
This method is available in release 3.0 and later only.
Sets the start point at the specified time.
Parameters:
TimeValue t
The time at which to set the start point.
double startpoint
The start point in the range 0.0 to 1.0.
Prototype:
double GetCurveStartPoint(TimeValue t);
Remarks:
This method is available in release 3.0 and later only.
Returns the start point at the specified time.
Parameters:
TimeValue t
The time at which to get the start point.
Operators:
Prototype:
NURBSExtrudeSurface & operator=(const NURBSExtrudeSurface& surf);
Remarks:
Assignment operator.
Parameters:
const NURBSExtrudeSurface& surf
The surface to assign.