3ds Max C++ API Reference
NURBSControlVertex Class Reference

#include <surf_api.h>

+ Inheritance diagram for NURBSControlVertex:

Public Member Functions

DllExport NURBSControlVertex (void)
 
virtual DllExport ~NURBSControlVertex (void)
 
DllExport NURBSControlVertexoperator= (const NURBSControlVertex &cv)
 
DllExport BOOL operator== (const NURBSControlVertex &cv)
 
DllExport BOOL operator!= (const NURBSControlVertex &cv)
 
DllExport void SetPosition (TimeValue t, Point3 pt)
 
DllExport void SetPosition (TimeValue t, float x, float y, float z)
 
DllExport void SetPosition (TimeValue t, double x, double y, double z)
 
DllExport Point3 GetPosition (TimeValue t)
 
DllExport void GetPosition (TimeValue t, float &x, float &y, float &z)
 
DllExport void GetPosition (TimeValue t, double &x, double &y, double &z)
 
DllExport void SetWeight (TimeValue t, float wt)
 
DllExport void SetWeight (TimeValue t, double wt)
 
DllExport void GetWeight (TimeValue t, float &wt)
 
DllExport double GetWeight (TimeValue t)
 
DllExport void GetWeight (TimeValue t, double &wt)
 
- Public Member Functions inherited from NURBSObject
DllExport NURBSObject (void)
 
virtual DllExport ~NURBSObject (void)
 
DllExport NURBSObjectoperator= (const NURBSObject &pt)
 
DllExport void SetName (const MCHAR *name)
 
DllExport const MCHARGetName (void)
 
DllExport NURBSType GetType () const
 
DllExport NURBSKind GetKind () const
 
DllExport NURBSId GetId () const
 
DllExport void SetId (NURBSId id)
 
DllExport void SetNSet (NURBSSet *nset)
 
DllExport void SetObject (Object *object)
 
DllExport ObjectGetMAXObject ()
 
DllExport NURBSSetGetNSet ()
 
DllExport int GetIndex ()
 
DllExport BOOL IsSelected ()
 
DllExport void SetSelected (BOOL set)
 

Additional Inherited Members

- Static Public Member Functions inherited from MaxHeapOperators
static UtilExport voidoperator new (size_t size)
 Standard new operator used to allocate objects If there is insufficient memory, an exception will be thrown. More...
 
static UtilExport voidoperator new (size_t size, const std::nothrow_t &e)
 Standard new operator used to allocate objects if there is insufficient memory, NULL will be returned. More...
 
static UtilExport voidoperator new (size_t size, const char *filename, int line)
 New operator used to allocate objects that takes the filename and line number where the new was called If there is insufficient memory, an exception will be thrown. More...
 
static UtilExport voidoperator new (size_t size, int block_type, const char *filename, int line)
 New operator used to allocate objects that takes the type of memory, filename and line number where the new was called If there is insufficient memory, an exception will be thrown. More...
 
static UtilExport voidoperator new (size_t size, const std::nothrow_t &e, const char *filename, int line)
 New operator used to allocate objects that takes the filename and line number where the new was called If there is insufficient memory, NULL will be returned. More...
 
static UtilExport voidoperator new (size_t size, unsigned long flags)
 New operator used to allocate objects that takes extra flags to specify special operations If there is insufficient memory, an exception will be thrown. More...
 
static UtilExport voidoperator new (size_t size, const std::nothrow_t &e, unsigned long flags)
 New operator used to allocate objects that takes extra flags to specify special operations If there is insufficient memory, NULL will be returned. More...
 
static UtilExport voidoperator new[] (size_t size)
 New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown. More...
 
static UtilExport voidoperator new[] (size_t size, const std::nothrow_t &e)
 New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned. More...
 
static UtilExport voidoperator new[] (size_t size, const char *filename, int line)
 New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown. More...
 
static UtilExport voidoperator new[] (size_t size, int block_type, const char *filename, int line)
 New operator used to allocate arrays of objects. More...
 
static UtilExport voidoperator new[] (size_t size, const std::nothrow_t &e, const char *filename, int line)
 New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned. More...
 
static UtilExport voidoperator new[] (size_t size, unsigned long flags)
 New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown. More...
 
static UtilExport voidoperator new[] (size_t size, const std::nothrow_t &e, unsigned long flags)
 New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned. More...
 
static UtilExport void operator delete (void *ptr)
 Standard delete operator used to deallocate an object If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport void operator delete (void *ptr, const std::nothrow_t &e)
 Standard delete operator used to deallocate an object If the pointer is invalid, nothing will happen. More...
 
static UtilExport void operator delete (void *ptr, const char *filename, int line)
 Delete operator used to deallocate an object that takes the filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport void operator delete (void *ptr, int block_type, const char *filename, int line)
 Delete operator used to deallocate an object that takes the type of memory, filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport void operator delete (void *ptr, const std::nothrow_t &e, const char *filename, int line)
 Delete operator used to deallocate an object that takes the filename and line number where the delete was called If the pointer is invalid, nothing will happen. More...
 
static UtilExport void operator delete (void *ptr, unsigned long flags)
 Delete operator used to deallocate an object that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport void operator delete (void *ptr, const std::nothrow_t &e, unsigned long flags)
 Delete operator used to deallocate an object that takes extra flags to specify special operations If the pointer is invalid, nothing will happen. More...
 
static UtilExport void operator delete[] (void *ptr)
 Standard delete operator used to deallocate an array of objects If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport void operator delete[] (void *ptr, const std::nothrow_t &e)
 Standard delete operator used to deallocate an array of objects If the pointer is invalid, nothing will happen. More...
 
static UtilExport void operator delete[] (void *ptr, const char *filename, int line)
 Delete operator used to deallocate an array of objects that takes the filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport void operator delete[] (void *ptr, int block_type, const char *filename, int line)
 Delete operator used to deallocate an array of objects that takes the type of memory, filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport void operator delete[] (void *ptr, const std::nothrow_t &e, const char *filename, int line)
 Delete operator used to deallocate an array of objects that takes the filename and line number where the delete was called If the pointer is invalid, nothing will happen. More...
 
static UtilExport void operator delete[] (void *ptr, unsigned long flags)
 Delete operator used to deallocate an array of objects that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport void operator delete[] (void *ptr, const std::nothrow_t &e, unsigned long flags)
 Delete operator used to deallocate an array of objects that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport voidoperator new (size_t size, void *placement_ptr)
 Placement new operator. More...
 
static UtilExport void operator delete (void *ptr, void *placement_ptr)
 Placement delete operator. More...
 
static UtilExport voidaligned_malloc (size_t size, size_t alignment)
 Allocates memory on a specified alignment boundary. More...
 
static UtilExport voidaligned_realloc (void *ptr, size_t size, size_t alignment)
 Reallocates memory on a specified alignment boundary. More...
 
static UtilExport void aligned_free (void *ptr)
 Frees a block of memory that was allocated with aligned_malloc/aligned_realloc. More...
 
- Protected Member Functions inherited from NURBSObject
DllExport void Clean (NURBSIdTab ids)
 
- Protected Attributes inherited from NURBSObject
MCHAR mName [NURBS_NAME_SIZE]
 
NURBSType mType
 
NURBSKind mKind
 
NURBSId mId
 
ObjectmpObject
 
NURBSSetmpNSet
 
BOOL mSelected
 

Detailed Description

See also
Class NURBSObject, Class NURBSSurface, Class NURBSSet, Class NURBSPoint, Class NURBSCurve, Class NURBSFuseSurfaceCV, Class NURBSFuseCurveCV.

Description:
This class represents a control vertex in a NURBS curve. Methods are available to get and set the point position, and get/set the weight.

All methods of this class are implemented by the system.

Constructor & Destructor Documentation

◆ NURBSControlVertex()

Remarks
Constructor. The name is set to NULL, the points are set to 0.0f and the weight is set to 1.0.

◆ ~NURBSControlVertex()

virtual DllExport ~NURBSControlVertex ( void  )
virtual
Remarks
Destructor.

Member Function Documentation

◆ operator=()

DllExport NURBSControlVertex& operator= ( const NURBSControlVertex cv)
Remarks
Assignment operator.
Parameters:
const NURBSControlVertex& cv

The control vertex to assign.

◆ operator==()

DllExport BOOL operator== ( const NURBSControlVertex cv)
Remarks
Equality operator. Compares if the coordinates and weight are the same.
Parameters:
const NURBSControlVertex& cv

The control vertex to compare.
Returns
TRUE if the CVs are equal; otherwise FALSE.

◆ operator!=()

DllExport BOOL operator!= ( const NURBSControlVertex cv)
Remarks
Inequality operator. Compares if the coordinates or weight are not the same.
Parameters:
const NURBSControlVertex& cv

The control vertex to compare.
Returns
TRUE if the CVs are not equal; otherwise FALSE.

◆ SetPosition() [1/3]

DllExport void SetPosition ( TimeValue  t,
Point3  pt 
)
Remarks
Sets the position of the control vertex.
Parameters:
TimeValue t

The time to set the position.

Point3 pt

Specifies the position to set.

◆ SetPosition() [2/3]

DllExport void SetPosition ( TimeValue  t,
float  x,
float  y,
float  z 
)
Remarks
Sets the position of the control vertex.
Parameters:
TimeValue t

The time to set the position.

float x, float y, float z

Specifies the position to set.

◆ SetPosition() [3/3]

DllExport void SetPosition ( TimeValue  t,
double  x,
double  y,
double  z 
)
Remarks
Sets the position of the control vertex.
Parameters:
TimeValue t

The time to set the position.

double x, double y, double z

Specifies the position to set.

◆ GetPosition() [1/3]

DllExport Point3 GetPosition ( TimeValue  t)
Remarks
Returns the position of the control vertex.
Parameters:
TimeValue t

The time to get the position.

◆ GetPosition() [2/3]

DllExport void GetPosition ( TimeValue  t,
float &  x,
float &  y,
float &  z 
)
Remarks
Retrieves the position of the control vertex.
Parameters:
TimeValue t

The time to get the position.

float& x

The X coordinates is returned here.

float& y

The Y coordinates is returned here.

float& z

The Z coordinates is returned here.

◆ GetPosition() [3/3]

DllExport void GetPosition ( TimeValue  t,
double &  x,
double &  y,
double &  z 
)
Remarks
Retrieves the position of the control vertex.
Parameters:
TimeValue t

The time to get the position.

double& x

The X coordinates is returned here.

double& y

The Y coordinates is returned here.

double& z

The Z coordinates is returned here.

◆ SetWeight() [1/2]

DllExport void SetWeight ( TimeValue  t,
float  wt 
)
Remarks
Sets the weight of the control vertex.
Parameters:
TimeValue t

The time to set the weight.

float wt

Specifies the weight to set. This is a value greater than zero. Larger values cause the CV to have a greater effect, thus the curve or surface will try to pass closer to the CV.

◆ SetWeight() [2/2]

DllExport void SetWeight ( TimeValue  t,
double  wt 
)
Remarks
Sets the weight of the control vertex.
Parameters:
TimeValue t

The time to set the weight.

double wt

Specifies the weight to set. . This is a value greater than zero. Larger values cause the CV to have a greater effect, thus the curve or surface will try to pass closer to the CV.

◆ GetWeight() [1/3]

DllExport void GetWeight ( TimeValue  t,
float &  wt 
)
Remarks
Retrieves the weight of the control vertex.
Parameters:
TimeValue t

The time to get the weight.

float& wt

The weight is returned here.

◆ GetWeight() [2/3]

DllExport double GetWeight ( TimeValue  t)
Remarks
Returns the weight of the control vertex.
Parameters:
TimeValue t

The time to get the weight.

◆ GetWeight() [3/3]

DllExport void GetWeight ( TimeValue  t,
double &  wt 
)
Remarks
Retrieves the weight of the control vertex.
Parameters:
TimeValue t

The time to get the weight.

double& wt

The weight is returned here.
Operators: