4
$\begingroup$

All geometry in computer graphics are transformed by position * transform matrix; The issue is the fact that position is a vector with 3 components (x,y,z); And transform matrix is a 4 by 4 with one column that can be dumped(at least in my case). So my transform matrix is now a 3 by 4 matrix:
axis x { x, y, z }
axis y { x, y, z }
axis z { x, y, z }
position axis { x, y, z }

                         multiplied with position vector { x, y ,z } 

If I dump position axis this can be done with standard formula of matrix multiplication. But it does not transform it. I can make the position vector with 4 components { x, y, z, w } but don't know what to do with the w? My only solution is a slow one, put position vector in a new transform matrix in position axis and multiply them. But it is computationally expensive. How to approach such problem?

  • 2
    I suspect the 3 by 4 matrix encodes an affine transformation, perhaps multiplying by the 3x3 initial columns, then adding the last column. Another possibility is [this isometry](http://www.euclideanspace.com/maths/geometry/affine/matrix4x4/index.htm). Your description isn't enough to tell what the 4x4 transformation matrix means, but this is my best guess.2011-12-08
  • 0
    http://www.euclideanspace.com, nice link; I'll look into it. My transform matrix has a rotation matrix made of first 3 by 3 part and the last is the position. More precisely axis x = will indicate were the axis x is pointing, same for axis y and z; And the position axis tells were is in space located this transform. A box can be placed somewhere by specifying position in position axis, and rotated with the rest 3 axis vectors. X Y Z axis are unit vectors.2011-12-08
  • 0
    Thanks hardmath, http://www.euclideanspace.com/maths/geometry/affine/matrix4x4/index.htm solution works like charm.2011-12-08

2 Answers 2