HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HOM_hmath Class Referenceabstract

#include <HOM_hmath.h>

Public Member Functions

virtual ~HOM_hmath ()
 
virtual std::string __repr__ ()=0
 
virtual HOM_Matrix4identityTransform ()=0
 
virtual HOM_Matrix4buildTranslate (double tx, double ty, double tz)=0
 
virtual HOM_Matrix4buildTranslate (const std::vector< double > &values)=0
 
virtual HOM_Matrix4buildScale (double sx, double sy, double sz)=0
 
virtual HOM_Matrix4buildScale (const std::vector< double > &values)=0
 
virtual HOM_Matrix4buildShear (double sxy, double sxz, double syz)=0
 
virtual HOM_Matrix4buildShear (const std::vector< double > &values)=0
 
virtual HOM_Matrix4buildRotate (double rx, double ry, double rz, const char *order="xyz")=0
 
virtual HOM_Matrix4buildRotate (const std::vector< double > &values, const char *order="xyz")=0
 
virtual HOM_Matrix4buildRotateAboutAxis (const std::vector< double > &axis, double angle_in_deg)=0
 
virtual HOM_Matrix4buildRotateZToAxis (const std::vector< double > &axis)=0
 
virtual HOM_Matrix4buildTransform (const std::map< std::string, std::vector< double > > &values_dict, const char *transform_order="srt", const char *rotate_order="xyz")=0
 
virtual HOM_Matrix4_buildTransformTRS (const HOM_Vector3 &translate, const HOM_Vector3 &rotate, const HOM_Vector3 &scale, const char *transform_order="srt", const char *rotate_order="xyz")=0
 
virtual HOM_Matrix4_buildTransformTRSS (const HOM_Vector3 &translate, const HOM_Vector3 &rotate, const HOM_Vector3 &scale, const HOM_Vector3 &shear, const char *transform_order="srt", const char *rotate_order="xyz")=0
 
virtual HOM_Matrix4_buildTransformTR (const HOM_Vector3 &translate, const HOM_Vector3 &rotate, const char *transform_order="srt", const char *rotate_order="xyz")=0
 
virtual HOM_Matrix4_buildTransform (const HOM_Vector3 &translate, const HOM_Vector3 &rotate, const HOM_Vector3 &scale, const HOM_Vector3 &shear, const HOM_Vector3 &pivot, const HOM_Vector3 &pivot_rotate, const char *transform_order="srt", const char *rotate_order="xyz")=0
 
virtual double degToRad (double degrees)=0
 
virtual double radToDeg (double radians)=0
 
virtual double noise1d (const std::vector< double > &pos) const =0
 
virtual HOM_Vector3 noise3d (const std::vector< double > &pos) const =0
 
double fit (double value, double oldmin, double oldmax, double newmin, double newmax)
 
double fit01 (double value, double newmin, double newmax)
 
double fit10 (double value, double newmin, double newmax)
 
double fit11 (double value, double newmin, double newmax)
 
double sign (double value)
 
double clamp (double value, double min, double max)
 
double smooth (double value, double min, double max)
 
virtual double wrap (double value, double min, double max) const =0
 
virtual double rand (double seed) const =0
 
virtual double orient2d (const std::vector< double > &pa, const std::vector< double > &pb, const std::vector< double > &point)=0
 
virtual double orient3d (const std::vector< double > &pa, const std::vector< double > &pb, const std::vector< double > &pc, const std::vector< double > &point)=0
 
virtual double inCircle (const std::vector< double > &pa, const std::vector< double > &pb, const std::vector< double > &pc, const std::vector< double > &point)=0
 
virtual double inSphere (const std::vector< double > &pa, const std::vector< double > &pb, const std::vector< double > &pc, const std::vector< double > &pd, const std::vector< double > &point)=0
 
virtual HOM_Vector3 intersectPlane (HOM_Vector3 const &plane_point, HOM_Vector3 const &plane_dir, HOM_Vector3 const &line_origin, HOM_Vector3 const &line_dir)=0
 
virtual HOM_Matrix4combineLocalTransform (HOM_Matrix4 &local, HOM_Matrix4 &parent_world, HOM_Matrix4 &parent_local, HOM_EnumValue &mode=HOM_scaleInheritanceMode::Default)=0
 
virtual HOM_Matrix4extractLocalTransform (HOM_Matrix4 &world, HOM_Matrix4 &target_parent_world, HOM_Matrix4 &target_parent_local, HOM_EnumValue &mode=HOM_scaleInheritanceMode::Default, HOM_Matrix4 *effective_local=nullptr)=0
 
virtual HOM_Matrix4slerpTransforms (const std::vector< HOM_Matrix4 > &xforms, const std::vector< double > &input_weights, bool normalize_weigths=true, int slerp_method=1, int slerp_flip_mehtod=1)=0
 

Static Public Member Functions

static UT_ScaleInheritanceMode scaleInheritanceModeForEnumValue (HOM_EnumValue &enum_value)
 
static HOM_EnumValuescaleInheritanceModeToEnumValue (UT_ScaleInheritanceMode mode)
 

Detailed Description

Definition at line 28 of file HOM_hmath.h.

Constructor & Destructor Documentation

virtual HOM_hmath::~HOM_hmath ( )
inlinevirtual

Definition at line 31 of file HOM_hmath.h.

Member Function Documentation

virtual std::string HOM_hmath::__repr__ ( )
pure virtual
virtual HOM_Matrix4* HOM_hmath::_buildTransform ( const HOM_Vector3 translate,
const HOM_Vector3 rotate,
const HOM_Vector3 scale,
const HOM_Vector3 shear,
const HOM_Vector3 pivot,
const HOM_Vector3 pivot_rotate,
const char *  transform_order = "srt",
const char *  rotate_order = "xyz" 
)
pure virtual
virtual HOM_Matrix4* HOM_hmath::_buildTransformTR ( const HOM_Vector3 translate,
const HOM_Vector3 rotate,
const char *  transform_order = "srt",
const char *  rotate_order = "xyz" 
)
pure virtual
virtual HOM_Matrix4* HOM_hmath::_buildTransformTRS ( const HOM_Vector3 translate,
const HOM_Vector3 rotate,
const HOM_Vector3 scale,
const char *  transform_order = "srt",
const char *  rotate_order = "xyz" 
)
pure virtual
virtual HOM_Matrix4* HOM_hmath::_buildTransformTRSS ( const HOM_Vector3 translate,
const HOM_Vector3 rotate,
const HOM_Vector3 scale,
const HOM_Vector3 shear,
const char *  transform_order = "srt",
const char *  rotate_order = "xyz" 
)
pure virtual
virtual HOM_Matrix4* HOM_hmath::buildRotate ( double  rx,
double  ry,
double  rz,
const char *  order = "xyz" 
)
pure virtual
virtual HOM_Matrix4* HOM_hmath::buildRotate ( const std::vector< double > &  values,
const char *  order = "xyz" 
)
pure virtual
virtual HOM_Matrix4* HOM_hmath::buildRotateAboutAxis ( const std::vector< double > &  axis,
double  angle_in_deg 
)
pure virtual
virtual HOM_Matrix4* HOM_hmath::buildRotateZToAxis ( const std::vector< double > &  axis)
pure virtual
virtual HOM_Matrix4* HOM_hmath::buildScale ( double  sx,
double  sy,
double  sz 
)
pure virtual
virtual HOM_Matrix4* HOM_hmath::buildScale ( const std::vector< double > &  values)
pure virtual
virtual HOM_Matrix4* HOM_hmath::buildShear ( double  sxy,
double  sxz,
double  syz 
)
pure virtual
virtual HOM_Matrix4* HOM_hmath::buildShear ( const std::vector< double > &  values)
pure virtual
virtual HOM_Matrix4* HOM_hmath::buildTransform ( const std::map< std::string, std::vector< double > > &  values_dict,
const char *  transform_order = "srt",
const char *  rotate_order = "xyz" 
)
pure virtual
virtual HOM_Matrix4* HOM_hmath::buildTranslate ( double  tx,
double  ty,
double  tz 
)
pure virtual
virtual HOM_Matrix4* HOM_hmath::buildTranslate ( const std::vector< double > &  values)
pure virtual
double HOM_hmath::clamp ( double  value,
double  min,
double  max 
)
inline

Definition at line 131 of file HOM_hmath.h.

virtual HOM_Matrix4* HOM_hmath::combineLocalTransform ( HOM_Matrix4 local,
HOM_Matrix4 parent_world,
HOM_Matrix4 parent_local,
HOM_EnumValue mode = HOM_scaleInheritanceMode::Default 
)
pure virtual
virtual double HOM_hmath::degToRad ( double  degrees)
pure virtual
virtual HOM_Matrix4* HOM_hmath::extractLocalTransform ( HOM_Matrix4 world,
HOM_Matrix4 target_parent_world,
HOM_Matrix4 target_parent_local,
HOM_EnumValue mode = HOM_scaleInheritanceMode::Default,
HOM_Matrix4 effective_local = nullptr 
)
pure virtual
double HOM_hmath::fit ( double  value,
double  oldmin,
double  oldmax,
double  newmin,
double  newmax 
)
inline

Definition at line 114 of file HOM_hmath.h.

double HOM_hmath::fit01 ( double  value,
double  newmin,
double  newmax 
)
inline

Definition at line 119 of file HOM_hmath.h.

double HOM_hmath::fit10 ( double  value,
double  newmin,
double  newmax 
)
inline

Definition at line 122 of file HOM_hmath.h.

double HOM_hmath::fit11 ( double  value,
double  newmin,
double  newmax 
)
inline

Definition at line 125 of file HOM_hmath.h.

virtual HOM_Matrix4* HOM_hmath::identityTransform ( )
pure virtual
virtual double HOM_hmath::inCircle ( const std::vector< double > &  pa,
const std::vector< double > &  pb,
const std::vector< double > &  pc,
const std::vector< double > &  point 
)
pure virtual
virtual double HOM_hmath::inSphere ( const std::vector< double > &  pa,
const std::vector< double > &  pb,
const std::vector< double > &  pc,
const std::vector< double > &  pd,
const std::vector< double > &  point 
)
pure virtual
virtual HOM_Vector3 HOM_hmath::intersectPlane ( HOM_Vector3 const plane_point,
HOM_Vector3 const plane_dir,
HOM_Vector3 const line_origin,
HOM_Vector3 const line_dir 
)
pure virtual
virtual double HOM_hmath::noise1d ( const std::vector< double > &  pos) const
pure virtual
virtual HOM_Vector3 HOM_hmath::noise3d ( const std::vector< double > &  pos) const
pure virtual
virtual double HOM_hmath::orient2d ( const std::vector< double > &  pa,
const std::vector< double > &  pb,
const std::vector< double > &  point 
)
pure virtual
virtual double HOM_hmath::orient3d ( const std::vector< double > &  pa,
const std::vector< double > &  pb,
const std::vector< double > &  pc,
const std::vector< double > &  point 
)
pure virtual
virtual double HOM_hmath::radToDeg ( double  radians)
pure virtual
virtual double HOM_hmath::rand ( double  seed) const
pure virtual
static UT_ScaleInheritanceMode HOM_hmath::scaleInheritanceModeForEnumValue ( HOM_EnumValue enum_value)
static
static HOM_EnumValue& HOM_hmath::scaleInheritanceModeToEnumValue ( UT_ScaleInheritanceMode  mode)
static
double HOM_hmath::sign ( double  value)
inline

Definition at line 128 of file HOM_hmath.h.

virtual HOM_Matrix4* HOM_hmath::slerpTransforms ( const std::vector< HOM_Matrix4 > &  xforms,
const std::vector< double > &  input_weights,
bool  normalize_weigths = true,
int  slerp_method = 1,
int  slerp_flip_mehtod = 1 
)
pure virtual
double HOM_hmath::smooth ( double  value,
double  min,
double  max 
)
inline

Definition at line 134 of file HOM_hmath.h.

virtual double HOM_hmath::wrap ( double  value,
double  min,
double  max 
) const
pure virtual

The documentation for this class was generated from the following file: