3ds Max C++ API Reference
NURBSSurfConstPoint Class Reference

#include <surf_api.h>

+ Inheritance diagram for NURBSSurfConstPoint:

Public Member Functions

DllExport NURBSSurfConstPoint (void)
 
virtual DllExport ~NURBSSurfConstPoint (void)
 
DllExport NURBSSurfConstPointoperator= (const NURBSSurfConstPoint &pt)
 
DllExport void SetParent (int index)
 
DllExport void SetParentId (NURBSId id)
 
DllExport int GetParent (void)
 
DllExport NURBSId GetParentId (void)
 
DllExport void SetPointType (NURBSConstType type)
 
DllExport NURBSConstType GetPointType (void)
 
DllExport void SetUParam (TimeValue t, double param)
 
DllExport double GetUParam (TimeValue t)
 
DllExport void SetVParam (TimeValue t, double param)
 
DllExport double GetVParam (TimeValue t)
 
DllExport void SetOffset (TimeValue t, Point3 pt)
 
DllExport Point3 GetOffset (TimeValue t)
 
DllExport void SetNormal (TimeValue t, float dist)
 
DllExport float GetNormal (TimeValue t)
 
DllExport void SetUTangent (TimeValue t, float dist)
 
DllExport float GetUTangent (TimeValue t)
 
DllExport void SetVTangent (TimeValue t, float dist)
 
DllExport float GetVTangent (TimeValue t)
 
- Public Member Functions inherited from NURBSPoint
DllExport NURBSPoint ()
 
virtual DllExport Point3 GetPosition (TimeValue t)
 
virtual DllExport void GetPosition (TimeValue t, float &x, float &y, float &z)
 
virtual DllExport void GetPosition (TimeValue t, double &x, double &y, double &z)
 
- 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)
 

Protected Member Functions

DllExport void Clean (NURBSIdTab ids)
 
- Protected Member Functions inherited from NURBSObject
DllExport void Clean (NURBSIdTab ids)
 

Protected Attributes

NURBSId mParentId
 
int mParentIndex
 
NURBSConstType mCType
 
Point3 mOffset
 
float mNormal
 
float mUTangent
 
double mUParam
 
float mVTangent
 
double mVParam
 
- Protected Attributes inherited from NURBSPoint
double mX
 
double mY
 
double mZ
 
- Protected Attributes inherited from NURBSObject
MCHAR mName [NURBS_NAME_SIZE]
 
NURBSType mType
 
NURBSKind mKind
 
NURBSId mId
 
ObjectmpObject
 
NURBSSetmpNSet
 
BOOL mSelected
 

Friends

class NURBSSet
 

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...
 

Detailed Description

See also
Class NURBSObject, NURBSConst Types
Description:
This class is used to create a dependent point on a surface or related to it.

All methods of this class are implemented by the system.
Data Members:
protected:

NURBSId mParentId;

The NURBSId of the parent surface.

int mParentIndex;

The index in the NURBSSet of the parent surface.

NURBSConstType mCType;

The type of constraint used by the point.

Point3 mOffset;

The offset amount.

float mNormal;

The distance along the normal.

float mUTangent;

The positive tangent offset in U. At the location in parameter space of the constrained point is a tangent to the surface. This is the distance along the positive U tangent in parameter space.

double mUParam;

The point is constrained to exist on the parent surface. The surface itself is defined over a parameter range. The point is defined at a point in the parent surface parameter space. This is the location of the point in the parent surface parameter space in U.

float mVTangent;

This is the distance along the positive V tangent in parameter space.

double mVParam;

This is the location of the point in the parent surface parameter space in V.

Constructor & Destructor Documentation

◆ NURBSSurfConstPoint()

Remarks
Constructor. The data members are initialized as follows:

mType = kNSurfaceCPoint;

mpObject = NULL;

mpNSet = NULL;

mParentId = 0;

mParentIndex = -1;

mCType = kNConstOnObject;

mOffset = Point3(0,0,0);

mNormal = 0.0f;

mUTangent = 0.0f;

mUParam = 0.0;

mVTangent = 0.0f;

mVParam = 0.0;

◆ ~NURBSSurfConstPoint()

virtual DllExport ~NURBSSurfConstPoint ( void  )
virtual
Remarks
Destructor.

Member Function Documentation

◆ Clean()

DllExport void Clean ( NURBSIdTab  ids)
protected
Remarks
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.

◆ operator=()

Remarks
Assignment operator.
Parameters:
const NURBSSurfConstPoint& pt

The point to assign.

◆ SetParent()

DllExport 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.

◆ SetParentId()

DllExport void SetParentId ( NURBSId  id)
Remarks
Sets the NURBSId of the specified parent.
Parameters:
NURBSId id

The id to set.

◆ GetParent()

DllExport int GetParent ( void  )
Remarks
Returns the index in the NURBSSet of the parent object.

◆ GetParentId()

DllExport NURBSId GetParentId ( void  )
Remarks
Returns the NURBSId of the parent. Note that a NURBSId won't be valid until the object has been instantiated in the scene

◆ SetPointType()

DllExport void SetPointType ( NURBSConstType  type)
Remarks
Sets the type of constrained point this is. See NURBSConst Types.
Parameters:
NURBSConstType type

The type of the constrained point.

◆ GetPointType()

DllExport NURBSConstType GetPointType ( void  )
Remarks
Returns the type of constrained point this is. See NURBSConst Types

◆ SetUParam()

DllExport void SetUParam ( TimeValue  t,
double  param 
)
Remarks
Sets the position of the point in the parent U parameter space.
Parameters:
TimeValue t

The time to set the U parameter.

double param

The value to set.

◆ GetUParam()

DllExport double GetUParam ( TimeValue  t)
Remarks
Returns the position of the point in the parent U parameter space.
Parameters:
TimeValue t

The time to get the U parameter.

◆ SetVParam()

DllExport void SetVParam ( TimeValue  t,
double  param 
)
Remarks
Sets the position of the point in the parent V parameter space.
Parameters:
TimeValue t

The time to set the U parameter.

double param

The value to set.

◆ GetVParam()

DllExport double GetVParam ( TimeValue  t)
Remarks
Returns the position of the point in the parent V parameter space.
Parameters:
TimeValue t

The time to get the Vparameter.

◆ SetOffset()

DllExport void SetOffset ( TimeValue  t,
Point3  pt 
)
Remarks
Sets the offset of the point from the parent surface.
Parameters:
TimeValue t

The time at which to set the offset.

Point3 pt

The offset to set.

◆ GetOffset()

DllExport Point3 GetOffset ( TimeValue  t)
Remarks
Returns the offset of the point from the parent surface at the specified time.
Parameters:
TimeValue t

The time at which to get the offset.

◆ SetNormal()

DllExport void SetNormal ( TimeValue  t,
float  dist 
)
Remarks
Sets the distance along the normal to the surface of the point at the specified time.
Parameters:
TimeValue t

The time at which to set the distance.

float dist

The distance to set.

◆ GetNormal()

DllExport float GetNormal ( TimeValue  t)
Remarks
Returns the distance along the normal to the surface of the point at the specified time.
Parameters:
TimeValue t

The time at which to get the distance.

◆ SetUTangent()

DllExport void SetUTangent ( TimeValue  t,
float  dist 
)
Remarks
Sets the distance along the U tangent of the point.
Parameters:
TimeValue t

The time at which to set the distance.

float dist

The distance to set.

◆ GetUTangent()

DllExport float GetUTangent ( TimeValue  t)
Remarks
Returns the distance along the U tangent of the point.
Parameters:
TimeValue t

The time at which to get the distance.

◆ SetVTangent()

DllExport void SetVTangent ( TimeValue  t,
float  dist 
)
Remarks
Sets the distance along the V tangent of the point.
Parameters:
TimeValue t

The time at which to set the distance.

float dist

The distance to set.

◆ GetVTangent()

DllExport float GetVTangent ( TimeValue  t)
Remarks
Returns the distance along the V tangent of the point.
Parameters:
TimeValue t

The time at which to get the distance.
Operators:

Friends And Related Function Documentation

◆ NURBSSet

friend class NURBSSet
friend

Member Data Documentation

◆ mParentId

NURBSId mParentId
protected

◆ mParentIndex

int mParentIndex
protected

◆ mCType

NURBSConstType mCType
protected

◆ mOffset

Point3 mOffset
protected

◆ mNormal

float mNormal
protected

◆ mUTangent

float mUTangent
protected

◆ mUParam

double mUParam
protected

◆ mVTangent

float mVTangent
protected

◆ mVParam

double mVParam
protected