An MTransformationMatrix allows the manipulation of the individual transformation components (eg scale, rotation, shear, etc) of a four by four transformation matrix.
A transformation matrix is composed of the following components:
Scale pivot point point around which scales are performed [-Sp]
Scale scaling about x, y, z axes [S]
Shear shearing in xy, xz, yx [Sh]
Scale pivot translation translation introduced to preserve existing scale transformations when moving pivot [St]
Rotate pivot point point about which rotations are performed [-Rp]
Rotation orientation rotation to orient local rotation space [Ro]
Rotation rotation [R]
Rotate pivot translation translation introduced to preserve exisitng scale transformations when moving pivot [Rt]
Rotation translation in x, y, z axes [T]
The transformation matrix is then constructed as follows:
[M] = [Sp] [S] [Sh] [-Sp] [St] [Rp] [Ro] [R] [-Rp] [Rt] [T]
and is used to transform a point in 3 space, represented by the row vector [P], via the operation
P' = [P] [M]
Partager