|
TransformationsALLEGRO_TRANSFORM
Defines the generic transformation type, a 4x4 matrix. 2D transforms use only a small subsection of this matrix, namely the top left 2x2 matrix, and the right most 2x1 matrix, for a total of 6 values. Fields:
al_copy_transform
Makes a copy of a transformation. Parameters:
al_use_transform
Sets the transformation to be used for the the drawing operations. Every drawing operation after this call will be transformed using this transformation. Call this function with an identity transformation to return to the default behaviour. Parameters:
al_get_current_transform
Returns the current transformation, as set by al_use_transform. Returns: A pointer to the current transformation. al_invert_transform
Inverts the passed transformation. If the transformation is nearly singular (close to not having an inverse) then the returned transformation may be invalid. Use al_check_inverse to assertain if the transformation has an inverse before inverting it if you are in doubt. Parameters:
See Also: al_check_inverse al_check_inverse
Checks if the transformation has an inverse using the supplied tolerance. Tolerance should be a small value between 0 and 1, with 0.001 being sufficient for most applications. Note that this check is superfluous most of the time if you never touched the transformation matrix values yourself. The only thing that would cause the transformation to not have an inverse is if you applied a 0 (or very small) scale to the transformation. As long as the scale is comfortably above 0, the transformation will be invertible. Parameters:
Returns: 1 if the transformation is invertible, 0 otherwise See Also: al_invert_transform al_identity_transform
Sets the transformation to be the identity transformation. Parameters:
al_build_transform
Builds a transformation given some parameters. This call is equivalent to calling the transformations in this order: make identity, scale, rotate, translate. This method is faster, however, than actually calling those functions. Parameters:
al_translate_transform
Apply a translation to a transformation. Parameters:
al_rotate_transform
Apply a rotation to a transformation. Parameters:
al_scale_transform
Apply a scale to a transformation. Parameters:
al_transform_coordinates
Transform a pair of coordinates. Parameters:
al_transform_transform
Transform a transformation. Parameters:
|
Last updated: 2009-11-29 01:41:17 UTC