3ds Max C++ API Reference
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
3dmath.h File Reference
#include "../ScripterExport.h"
#include "../kernel/value.h"
#include <Geom/quat.h>
#include <Geom/ipoint3.h>
#include "..\protocols\vector.inl"
#include "..\protocols\quat.inl"
#include "..\protocols\matrix.inl"
#include "..\protocols\box.inl"

Classes

class  Point3Value
 
class  ConstPoint3Value
 
class  RayValue
 
class  QuatValue
 
class  AngAxisValue
 
class  EulerAnglesValue
 
class  Matrix3Value
 
class  Point2Value
 
class  Point4Value
 
class  Box2Value
 
class  Box3Value
 

Macros

#define is_point3(v)   ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(Point3Value))
 
#define is_ray(v)   ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(RayValue))
 
#define is_quat(v)   ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(QuatValue))
 
#define is_angaxis(v)   ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(AngAxisValue))
 
#define is_eulerangles(v)   ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(EulerAnglesValue))
 
#define is_matrix3(v)   ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(Matrix3Value))
 
#define is_point2(v)   ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(Point2Value))
 
#define is_point4(v)   ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(Point4Value))
 
#define is_box2(v)   ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(Box2Value))
 
#define is_box3(v)   ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(Box3Value))
 

Functions

ScripterExport void _QuatToEuler (const Quat &q, float *ang)
 
ScripterExport void _EulerToQuat (const float *ang, Quat &q)
 
IPoint3 to_ipoint3 (Value *val)
 
IPoint2 to_ipoint2 (Value *val)
 

Macro Definition Documentation

◆ is_point3

#define is_point3 (   v)    ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(Point3Value))

◆ is_ray

#define is_ray (   v)    ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(RayValue))

◆ is_quat

#define is_quat (   v)    ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(QuatValue))

◆ is_angaxis

#define is_angaxis (   v)    ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(AngAxisValue))

◆ is_eulerangles

#define is_eulerangles (   v)    ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(EulerAnglesValue))

◆ is_matrix3

#define is_matrix3 (   v)    ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(Matrix3Value))

◆ is_point2

#define is_point2 (   v)    ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(Point2Value))

◆ is_point4

#define is_point4 (   v)    ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(Point4Value))

◆ is_box2

#define is_box2 (   v)    ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(Box2Value))

◆ is_box3

#define is_box3 (   v)    ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(Box3Value))

Function Documentation

◆ _QuatToEuler()

ScripterExport void _QuatToEuler ( const Quat &  q,
float *  ang 
)

◆ _EulerToQuat()

ScripterExport void _EulerToQuat ( const float *  ang,
Quat &  q 
)

◆ to_ipoint3()

IPoint3 to_ipoint3 ( Value val)
inline
92 {
93 Point3 p = val->to_point3();
94 return IPoint3((int)p.x, (int)p.y, (int)p.z); }
virtual Point3 to_point3()
Definition: value.h:187

◆ to_ipoint2()

IPoint2 to_ipoint2 ( Value val)
inline
418 {
419 Point2 p = val->to_point2();
420 return IPoint2((int)p.x, (int)p.y); }
virtual Point2 to_point2()
Definition: value.h:188