Geo-transform Extension¶
describe a standard set of geometry matrix transforms, as found in computer graphics and 3D modelling:
http://en.wikipedia.org/wiki/Affine_transformation
The Geometry Transform extension describes affine transformations of geometry parameters.
In general, an affine transformation is composed of linear transformations (rotation, scaling, shear or reflect (mirror)) and a translation.
If several transformations are executed, the order of processes is important, they are not commutative.
For this reason, each transform-operation must to be defined with a single SpatDIF statement.
The subsequent order of the transform statements determines the order of transform operations.
transform a (set of) point(s) by use of a geometry matrix.
common operations:
- translate
- rotate
- scale
- shear
- reflect
these operations are non commutable, order is important.
transmit either the factors controlling the individual transforms:
/translate 0.0 0.0 0.0 /rotate 0.0 0.0 90.0 /scale 1.0 1.0 1.0 /shear 0.0 0.0 0.0 0.0 0.0 0.0 /reflect 0 0 0
<!--or the entire matrix, in specific matrix format (tbd.)-->
Example Implementations:¶
Nils Peters: jmod.scene3D for Jamoma, github repository
Jasch: 3Dmatrix External for MaxMSP, jasch objects site