AngelCAD  1.5-00
Public Member Functions | List of all members
hmatrix Class Reference

Homogeneous transformation matrix. More...

#include <angelcad.h>

Inheritance diagram for hmatrix:
tmatrix

Public Member Functions

 hmatrix (const vec3d@ xvec, const vec3d@ yvec, const pos3d@ pos=pos3d(0, 0, 0))
 Create 4x4 homogenous matrix from x and y direction vectors and an optional origin position, z direction is computed. More...
 
 hmatrix (const vec3d@ xvec, const vec3d@ yvec, const vec3d@ zvec, const pos3d@ pos=pos3d(0, 0, 0))
 Create 4x4 homogenous matrix from 3 direction vectors and an optional origin position. More...
 
- Public Member Functions inherited from tmatrix
pos2dopMul (pos2d@ obj)
 Multiply a position with transformation and return a new position. More...
 
pos3dopMul (pos3d@ obj)
 transform a point: pos3d@ p = T*obj; More...
 
pos3dorigin () const
 Return origin of transformation (4th column) More...
 
shape2dopMul (shape2d@ obj)
 transform a 2d shape: shape2d@ s = T*obj; More...
 
solidopMul (solid@ obj)
 transform a solid: solid@ s = T*obj; More...
 
tmatrixopMul (const tmatrix@ B)
 matrix multiplication: A = T*B More...
 
vec3dxdir () const
 Return x direction vector. More...
 
vec3dydir () const
 Return y direction vector. More...
 
vec3dzdir () const
 Return z direction vector. More...
 
void dump () const
 dump matrix to console More...
 

Detailed Description

Homogeneous transformation matrix.

hmatrix is a transformation expressed as homogenous transformation matrix.

Constructor & Destructor Documentation

◆ hmatrix() [1/2]

hmatrix::hmatrix ( const vec3d xvec,
const vec3d yvec,
const pos3d pos = pos3d(0, 0, 0) 
)

Create 4x4 homogenous matrix from x and y direction vectors and an optional origin position, z direction is computed.

Parameters
xvecvec3d@, 1st matrix column, local x-direction vector
yvecvec3d@, 1nd matrix column, local y-direction vector
pospos3d@, 4th matrix column, local origin postion

◆ hmatrix() [2/2]

hmatrix::hmatrix ( const vec3d xvec,
const vec3d yvec,
const vec3d zvec,
const pos3d pos = pos3d(0, 0, 0) 
)

Create 4x4 homogenous matrix from 3 direction vectors and an optional origin position.

Parameters
xvecvec3d@, 1st matrix column
yvecvec3d@, 2nd matrix column
zvecvec3d@, 3rd matrix column
pospos3d@, 4rd matrix column

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