3ds Max C++ API Reference
Loading...
Searching...
No Matches
SplineKnotAssy Class Reference

Used for the internal storage of spline knot assemblies in the Spline3D class. More...

#include <C:/adskgit/3dsmax/3dsmax/3dswin/src/maxsdk/include/spline3d.h>

Inheritance diagram for SplineKnotAssy:

Public Member Functions

CoreExport SplineKnotAssy ()
CoreExport SplineKnotAssy (int k, int l, const Point3 &p, const Point3 &in, const Point3 &out, int a1=-1, int a2=-1, int a3=-1, int Ia1=-1, int Ia2=-1, int Ia3=-1, int Oa1=-1, int Oa2=-1, int Oa3=-1, DWORD f=0)
CoreExport SplineKnotAssy (int k, int l, const SplinePoint &p, const SplinePoint &in, const SplinePoint &out, DWORD f=0)
CoreExport SplineKnotAssy (const SplineKnot &k)
int Ktype () const
void SetKtype (int t)
int Ltype () const
void SetLtype (int t)
Point3 Knot () const
void SetKnot (const Point3 &p)
Point3 InVec () const
void SetInVec (const Point3 &p)
Point3 OutVec () const
void SetOutVec (const Point3 &p)
float GetParm () const
void SetParm (float p)
MtlID GetMatID () const
void SetMatID (MtlID id)
CoreExport int GetAux (int index, int which) const
 Allow access as if the in/knot/out components are contained vertices.
CoreExport void SetAux (int index, int which, int value)
 Allow access as if the in/knot/out components are contained vertices.
CoreExport Point3 GetVert (int index) const
 Allow access as if the in/knot/out components are contained vertices.
CoreExport void SetVert (int index, const Point3 &p)
 Allow access as if the in/knot/out components are contained vertices.
SplinePoint GetKnot () const
SplinePoint GetInVec () const
SplinePoint GetOutVec () const
void SetKnot (SplinePoint &sp)
void SetInVec (SplinePoint &sp)
void SetOutVec (SplinePoint &sp)
DWORD GetFlags () const
BOOL IsHidden () const
void Hide ()
void Unhide ()
BOOL IsNoSnap () const
void SetNoSnap ()
void ClearNoSnap ()
BOOL GetFlag (DWORD fl) const
void SetFlag (DWORD fl, BOOL val=TRUE)
void ClearFlag (DWORD fl)

Friends

class Spline3D
class SplineKnot

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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
static UtilExport voidoperator new[] (size_t size, int block_type, const char *filename, int line)
 New operator used to allocate arrays of objects.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
static UtilExport voidoperator new (size_t size, void *placement_ptr)
 Placement new operator.
static UtilExport void operator delete (void *ptr, void *placement_ptr)
 Placement delete operator.
static UtilExport voidaligned_malloc (size_t size, size_t alignment)
 Allocates memory on a specified alignment boundary.
static UtilExport voidaligned_realloc (void *ptr, size_t size, size_t alignment)
 Reallocates memory on a specified alignment boundary.
static UtilExport void aligned_free (void *ptr)
 Frees a block of memory that was allocated with aligned_malloc/aligned_realloc.

Detailed Description

Used for the internal storage of spline knot assemblies in the Spline3D class.

Constructor & Destructor Documentation

◆ SplineKnotAssy() [1/4]

◆ SplineKnotAssy() [2/4]

CoreExport SplineKnotAssy ( int k,
int l,
const Point3 & p,
const Point3 & in,
const Point3 & out,
int a1 = -1,
int a2 = -1,
int a3 = -1,
int Ia1 = -1,
int Ia2 = -1,
int Ia3 = -1,
int Oa1 = -1,
int Oa2 = -1,
int Oa3 = -1,
DWORD f = 0 )

◆ SplineKnotAssy() [3/4]

CoreExport SplineKnotAssy ( int k,
int l,
const SplinePoint & p,
const SplinePoint & in,
const SplinePoint & out,
DWORD f = 0 )

◆ SplineKnotAssy() [4/4]

Member Function Documentation

◆ Ktype()

int Ktype ( ) const
inline
163{ return ktype; }

◆ SetKtype()

void SetKtype ( int t)
inline
164{ ktype=t; }

◆ Ltype()

int Ltype ( ) const
inline
165{ return ltype; }

◆ SetLtype()

void SetLtype ( int t)
inline
166{ ltype=t; }

◆ Knot()

Point3 Knot ( ) const
inline
167{ return knot.point; }

◆ SetKnot() [1/2]

void SetKnot ( const Point3 & p)
inline
168{ knot.point=p; }

◆ InVec()

Point3 InVec ( ) const
inline
169{ return inVec.point; }

◆ SetInVec() [1/2]

void SetInVec ( const Point3 & p)
inline
170{ inVec.point=p; }

◆ OutVec()

Point3 OutVec ( ) const
inline
171{ return outVec.point; }

◆ SetOutVec() [1/2]

void SetOutVec ( const Point3 & p)
inline
172{ outVec.point=p; }

◆ GetParm()

float GetParm ( ) const
inline
173{ return du; }

◆ SetParm()

void SetParm ( float p)
inline
174{ du = p; }

◆ GetMatID()

MtlID GetMatID ( ) const
inline
175{return (int)((flags>>SPLINE_MATID_SHIFT)&SPLINE_MATID_MASK);}
#define SPLINE_MATID_SHIFT
The mat ID is stored in the HIWORD of the knot flags.
Definition spline3d.h:116
#define SPLINE_MATID_MASK
The mat ID is stored in the HIWORD of the knot flags.
Definition spline3d.h:117

◆ SetMatID()

void SetMatID ( MtlID id)
inline
176{flags &= 0xFFFF; flags |= (DWORD)(id<<SPLINE_MATID_SHIFT);}

◆ GetAux()

CoreExport int GetAux ( int index,
int which ) const

Allow access as if the in/knot/out components are contained vertices.


Parameters
index0=inVec 1=knot 2=outVec
which0=aux1 1=aux2 2=aux3

◆ SetAux()

CoreExport void SetAux ( int index,
int which,
int value )

Allow access as if the in/knot/out components are contained vertices.


Parameters
index0=inVec 1=knot 2=outVec
which0=aux1 1=aux2 2=aux3
value

◆ GetVert()

CoreExport Point3 GetVert ( int index) const

Allow access as if the in/knot/out components are contained vertices.


Parameters
index0=inVec 1=knot 2=outVec

◆ SetVert()

CoreExport void SetVert ( int index,
const Point3 & p )

Allow access as if the in/knot/out components are contained vertices.


Parameters
index0=inVec 1=knot 2=outVec
p0=aux1 1=aux2 2=aux3

◆ GetKnot()

SplinePoint GetKnot ( ) const
inline
200{ return knot; }

◆ GetInVec()

SplinePoint GetInVec ( ) const
inline
201{ return inVec; }

◆ GetOutVec()

SplinePoint GetOutVec ( ) const
inline
202{ return outVec; }

◆ SetKnot() [2/2]

void SetKnot ( SplinePoint & sp)
inline
203{ knot = sp; }

◆ SetInVec() [2/2]

void SetInVec ( SplinePoint & sp)
inline
204{ inVec = sp; }

◆ SetOutVec() [2/2]

void SetOutVec ( SplinePoint & sp)
inline
205{ outVec = sp; }

◆ GetFlags()

DWORD GetFlags ( ) const
inline
206{ return flags; }

◆ IsHidden()

BOOL IsHidden ( ) const
inline
209{return (flags&SEGMENT_VISIBLE);}
#define SEGMENT_VISIBLE
Definition spline3d.h:119

◆ Hide()

void Hide ( )
inline
210{ flags |= (DWORD)(SEGMENT_VISIBLE);}

◆ Unhide()

void Unhide ( )
inline
211{ flags &= (DWORD)(~SEGMENT_VISIBLE);}

◆ IsNoSnap()

BOOL IsNoSnap ( ) const
inline
213{return (flags&SPLINEKNOT_NO_SNAP);}
#define SPLINEKNOT_NO_SNAP
Suppresses snapping to knot if set.
Definition spline3d.h:120

◆ SetNoSnap()

void SetNoSnap ( )
inline
214{ flags |= (DWORD)(SPLINEKNOT_NO_SNAP);}

◆ ClearNoSnap()

void ClearNoSnap ( )
inline
215{ flags &= (DWORD)(~SPLINEKNOT_NO_SNAP);}

◆ GetFlag()

BOOL GetFlag ( DWORD fl) const
inline
217{ return (flags & fl) ? TRUE : FALSE; }

◆ SetFlag()

void SetFlag ( DWORD fl,
BOOL val = TRUE )
inline
218{ if (val) flags |= fl; else flags &= ~fl; }

◆ ClearFlag()

void ClearFlag ( DWORD fl)
inline
219{ flags &= ~fl; }

◆ Spline3D

friend class Spline3D
friend

◆ SplineKnot

friend class SplineKnot
friend