Classes | Typedefs | Enumerations | Functions | Variables
IceMaths Namespace Reference

Classes

class  AABB
 
class  Axes
 
class  HPoint
 
class  IndexedTriangle
 
class  Matrix3x3
 
class  Matrix4x4
 
class  OBB
 
class  Plane
 
class  Point
 
class  Ray
 
class  Sphere
 

Typedefs

typedef int CubeIndex
 

Enumerations

enum  AABBType { AABB_RENDER = 0, AABB_UPDATE = 1, AABB_FORCE_DWORD = 0x7fffffff }
 
enum  AxisOrder {
  AXES_XYZ = (_X)|(_Y<<2)|(_Z<<4), AXES_XZY = (_X)|(_Z<<2)|(_Y<<4), AXES_YXZ = (_Y)|(_X<<2)|(_Z<<4), AXES_YZX = (_Y)|(_Z<<2)|(_X<<4),
  AXES_ZXY = (_Z)|(_X<<2)|(_Y<<4), AXES_ZYX = (_Z)|(_Y<<2)|(_X<<4), AXES_FORCE_DWORD = 0x7fffffff
}
 
enum  BSphereMethod { BS_NONE, BS_GEMS, BS_MINIBALL, BS_FORCE_DWORD = 0x7fffffff }
 
enum  PointComponent {
  _X = 0, _Y = 1, _Z = 2, _W = 3,
  _FORCE_DWORD = 0x7fffffff
}
 

Functions

inline_ void ComputeAABB (AABB &aabb, const Point *list, udword nb_pts)
 
inline_ void ComputeLocalDirection (Point &local_dir, const Point &world_dir, const Matrix4x4 &world)
 
inline_ void ComputeLocalPoint (Point &local_pt, const Point &world_pt, const Matrix4x4 &world)
 
inline_ void ComputeLocalRay (Ray &local_ray, const Ray &world_ray, const Matrix4x4 &world)
 
inline_ void ComputeMinMax (const Point &p, Point &min, Point &max)
 
inline_ void ComputeReflexionVector (Point &reflected, const Point &incoming_dir, const Point &outward_normal)
 
inline_ void ComputeReflexionVector (Point &reflected, const Point &source, const Point &impact, const Point &normal)
 
inline_ void DecomposeVector (Point &normal_compo, Point &tangent_compo, const Point &outward_dir, const Point &outward_normal)
 
ICEMATHS_API void InvertPRMatrix (Matrix4x4 &dest, const Matrix4x4 &src)
 
FUNCTION ICEMATHS_API void Normalize1 (Point &a)
 
FUNCTION ICEMATHS_API void Normalize2 (Point &a)
 
inline_ void TransformPlane (Plane &transformed, const Plane &plane, const Matrix4x4 &transform)
 
inline_ void TransformPlane (Plane &plane, const Matrix4x4 &transform)
 
inline_ void TransformPoint3x3 (Point &dest, const Point &source, const Matrix4x4 &rot)
 Quickly rotates a vector, using the 3x3 part of a 4x4 matrix. More...
 
inline_ void TransformPoint4x3 (Point &dest, const Point &source, const Matrix4x4 &rot)
 Quickly rotates & translates a vector, using the 4x3 part of a 4x4 matrix. More...
 

Variables

const float EPSILON2 = 1.0e-20f
 

Detailed Description

Author
Shin'ichiro Nakaoka

Typedef Documentation

◆ CubeIndex

Definition at line 20 of file OPC_IceHook.h.

Enumeration Type Documentation

◆ AABBType

Enumerator
AABB_RENDER 

AABB used for rendering. Not visible == not rendered.

AABB_UPDATE 

AABB used for dynamic updates. Not visible == not updated.

AABB_FORCE_DWORD 

Definition at line 40 of file OPC_IceHook.h.

◆ AxisOrder

Enumerator
AXES_XYZ 
AXES_XZY 
AXES_YXZ 
AXES_YZX 
AXES_ZXY 
AXES_ZYX 
AXES_FORCE_DWORD 

Definition at line 26 of file OPC_IceHook.h.

◆ BSphereMethod

Enumerator
BS_NONE 
BS_GEMS 
BS_MINIBALL 
BS_FORCE_DWORD 

Definition at line 16 of file OPC_IceHook.h.

◆ PointComponent

Enumerator
_X 
_Y 
_Z 
_W 
_FORCE_DWORD 

Definition at line 16 of file OPC_IceHook.h.

Function Documentation

◆ ComputeAABB()

inline_ void IceMaths::ComputeAABB ( AABB aabb,
const Point list,
udword  nb_pts 
)

Definition at line 491 of file OPC_IceHook.h.

◆ ComputeLocalDirection()

inline_ void IceMaths::ComputeLocalDirection ( Point local_dir,
const Point world_dir,
const Matrix4x4 world 
)

Transforms a direction vector from world space to local space

Parameters
local_dir[out] direction vector in local space
world_dir[in] direction vector in world space
world[in] world transform

Definition at line 60 of file OPC_IceHook.h.

◆ ComputeLocalPoint()

inline_ void IceMaths::ComputeLocalPoint ( Point local_pt,
const Point world_pt,
const Matrix4x4 world 
)

Transforms a position vector from world space to local space

Parameters
local_pt[out] position vector in local space
world_pt[in] position vector in world space
world[in] world transform

Definition at line 76 of file OPC_IceHook.h.

◆ ComputeLocalRay()

inline_ void IceMaths::ComputeLocalRay ( Ray local_ray,
const Ray world_ray,
const Matrix4x4 world 
)

Transforms a ray from world space to local space

Parameters
local_ray[out] ray in local space
world_ray[in] ray in world space
world[in] world transform

Definition at line 92 of file OPC_IceHook.h.

◆ ComputeMinMax()

inline_ void IceMaths::ComputeMinMax ( const Point p,
Point min,
Point max 
)

Definition at line 479 of file OPC_IceHook.h.

◆ ComputeReflexionVector() [1/2]

inline_ void IceMaths::ComputeReflexionVector ( Point reflected,
const Point incoming_dir,
const Point outward_normal 
)

Definition at line 35 of file OPC_IceHook.h.

◆ ComputeReflexionVector() [2/2]

inline_ void IceMaths::ComputeReflexionVector ( Point reflected,
const Point source,
const Point impact,
const Point normal 
)

Definition at line 40 of file OPC_IceHook.h.

◆ DecomposeVector()

inline_ void IceMaths::DecomposeVector ( Point normal_compo,
Point tangent_compo,
const Point outward_dir,
const Point outward_normal 
)

Definition at line 46 of file OPC_IceHook.h.

◆ InvertPRMatrix()

ICEMATHS_API void IceMaths::InvertPRMatrix ( Matrix4x4 dest,
const Matrix4x4 src 
)

Definition at line 54 of file IceMatrix4x4.cpp.

◆ Normalize1()

FUNCTION ICEMATHS_API void IceMaths::Normalize1 ( Point a)

◆ Normalize2()

FUNCTION ICEMATHS_API void IceMaths::Normalize2 ( Point a)

◆ TransformPlane() [1/2]

inline_ void IceMaths::TransformPlane ( Plane transformed,
const Plane plane,
const Matrix4x4 transform 
)

Transforms a plane by a 4x4 matrix. Same as Plane * Matrix4x4 operator, but faster.

Parameters
transformed[out] transformed plane
plane[in] source plane
transform[in] transform matrix
Warning
the plane normal must be unit-length

Definition at line 88 of file OPC_IceHook.h.

◆ TransformPlane() [2/2]

inline_ void IceMaths::TransformPlane ( Plane plane,
const Matrix4x4 transform 
)

Transforms a plane by a 4x4 matrix. Same as Plane * Matrix4x4 operator, but faster.

Parameters
plane[in/out] source plane (transformed on return)
transform[in] transform matrix
Warning
the plane normal must be unit-length

Definition at line 105 of file OPC_IceHook.h.

◆ TransformPoint3x3()

inline_ void IceMaths::TransformPoint3x3 ( Point dest,
const Point source,
const Matrix4x4 rot 
)

Quickly rotates a vector, using the 3x3 part of a 4x4 matrix.

Definition at line 446 of file OPC_IceHook.h.

◆ TransformPoint4x3()

inline_ void IceMaths::TransformPoint4x3 ( Point dest,
const Point source,
const Matrix4x4 rot 
)

Quickly rotates & translates a vector, using the 4x3 part of a 4x4 matrix.

Definition at line 438 of file OPC_IceHook.h.

Variable Documentation

◆ EPSILON2

const float IceMaths::EPSILON2 = 1.0e-20f

Definition at line 24 of file OPC_IceHook.h.



openhrp3
Author(s): AIST, General Robotix Inc., Nakamura Lab of Dept. of Mechano Informatics at University of Tokyo
autogenerated on Thu Sep 8 2022 02:24:09