#include <SFML/Graphics/Export.h>#include <SFML/Graphics/Rect.h>#include <SFML/Graphics/Types.h>#include <SFML/System/Vector2.h>Go to the source code of this file.
| Data Structures | |
| struct | sfTransform | 
| Encapsulate a 3x3 transform matrix.  More... | |
| Functions | |
| CSFML_GRAPHICS_API sfTransform | sfTransform_fromMatrix (float a00, float a01, float a02, float a10, float a11, float a12, float a20, float a21, float a22) | 
| Create a new transform from a matrix.  More... | |
| CSFML_GRAPHICS_API void | sfTransform_getMatrix (const sfTransform *transform, float *matrix) | 
| Return the 4x4 matrix of a transform.  More... | |
| CSFML_GRAPHICS_API sfTransform | sfTransform_getInverse (const sfTransform *transform) | 
| Return the inverse of a transform.  More... | |
| CSFML_GRAPHICS_API sfVector2f | sfTransform_transformPoint (const sfTransform *transform, sfVector2f point) | 
| Apply a transform to a 2D point.  More... | |
| CSFML_GRAPHICS_API sfFloatRect | sfTransform_transformRect (const sfTransform *transform, sfFloatRect rectangle) | 
| Apply a transform to a rectangle.  More... | |
| CSFML_GRAPHICS_API void | sfTransform_combine (sfTransform *transform, const sfTransform *other) | 
| Combine two transforms.  More... | |
| CSFML_GRAPHICS_API void | sfTransform_translate (sfTransform *transform, float x, float y) | 
| Combine a transform with a translation.  More... | |
| CSFML_GRAPHICS_API void | sfTransform_rotate (sfTransform *transform, float angle) | 
| Combine the current transform with a rotation.  More... | |
| CSFML_GRAPHICS_API void | sfTransform_rotateWithCenter (sfTransform *transform, float angle, float centerX, float centerY) | 
| Combine the current transform with a rotation.  More... | |
| CSFML_GRAPHICS_API void | sfTransform_scale (sfTransform *transform, float scaleX, float scaleY) | 
| Combine the current transform with a scaling.  More... | |
| CSFML_GRAPHICS_API void | sfTransform_scaleWithCenter (sfTransform *transform, float scaleX, float scaleY, float centerX, float centerY) | 
| Combine the current transform with a scaling.  More... | |
| Variables | |
| CSFML_GRAPHICS_API const sfTransform | sfTransform_Identity | 
| Identity transform (does nothing)  More... | |
| CSFML_GRAPHICS_API void sfTransform_combine | ( | sfTransform * | transform, | 
| const sfTransform * | other | ||
| ) | 
Combine two transforms.
The result is a transform that is equivalent to applying transform followed by other. Mathematically, it is equivalent to a matrix multiplication.
| transform | Transform object | 
| other | Transform to combine to transform | 
| CSFML_GRAPHICS_API sfTransform sfTransform_fromMatrix | ( | float | a00, | 
| float | a01, | ||
| float | a02, | ||
| float | a10, | ||
| float | a11, | ||
| float | a12, | ||
| float | a20, | ||
| float | a21, | ||
| float | a22 | ||
| ) | 
Create a new transform from a matrix.
| a00 | Element (0, 0) of the matrix | 
| a01 | Element (0, 1) of the matrix | 
| a02 | Element (0, 2) of the matrix | 
| a10 | Element (1, 0) of the matrix | 
| a11 | Element (1, 1) of the matrix | 
| a12 | Element (1, 2) of the matrix | 
| a20 | Element (2, 0) of the matrix | 
| a21 | Element (2, 1) of the matrix | 
| a22 | Element (2, 2) of the matrix | 
| CSFML_GRAPHICS_API sfTransform sfTransform_getInverse | ( | const sfTransform * | transform | ) | 
Return the inverse of a transform.
If the inverse cannot be computed, a new identity transform is returned.
| transform | Transform object | 
| CSFML_GRAPHICS_API void sfTransform_getMatrix | ( | const sfTransform * | transform, | 
| float * | matrix | ||
| ) | 
Return the 4x4 matrix of a transform.
This function fills an array of 16 floats with the transform converted as a 4x4 matrix, which is directly compatible with OpenGL functions.
| transform | Transform object | 
| matrix | Pointer to the 16-element array to fill with the matrix | 
| CSFML_GRAPHICS_API void sfTransform_rotate | ( | sfTransform * | transform, | 
| float | angle | ||
| ) | 
Combine the current transform with a rotation.
| transform | Transform object | 
| angle | Rotation angle, in degrees | 
| CSFML_GRAPHICS_API void sfTransform_rotateWithCenter | ( | sfTransform * | transform, | 
| float | angle, | ||
| float | centerX, | ||
| float | centerY | ||
| ) | 
Combine the current transform with a rotation.
The center of rotation is provided for convenience as a second argument, so that you can build rotations around arbitrary points more easily (and efficiently) than the usual [translate(-center), rotate(angle), translate(center)].
| transform | Transform object | 
| angle | Rotation angle, in degrees | 
| centerX | X coordinate of the center of rotation | 
| centerY | Y coordinate of the center of rotation | 
| CSFML_GRAPHICS_API void sfTransform_scale | ( | sfTransform * | transform, | 
| float | scaleX, | ||
| float | scaleY | ||
| ) | 
Combine the current transform with a scaling.
| transform | Transform object | 
| scaleX | Scaling factor on the X axis | 
| scaleY | Scaling factor on the Y axis | 
| CSFML_GRAPHICS_API void sfTransform_scaleWithCenter | ( | sfTransform * | transform, | 
| float | scaleX, | ||
| float | scaleY, | ||
| float | centerX, | ||
| float | centerY | ||
| ) | 
Combine the current transform with a scaling.
The center of scaling is provided for convenience as a second argument, so that you can build scaling around arbitrary points more easily (and efficiently) than the usual [translate(-center), scale(factors), translate(center)]
| transform | Transform object | 
| scaleX | Scaling factor on X axis | 
| scaleY | Scaling factor on Y axis | 
| centerX | X coordinate of the center of scaling | 
| centerY | Y coordinate of the center of scaling | 
| CSFML_GRAPHICS_API sfVector2f sfTransform_transformPoint | ( | const sfTransform * | transform, | 
| sfVector2f | point | ||
| ) | 
Apply a transform to a 2D point.
| transform | Transform object | 
| point | Point to transform | 
| CSFML_GRAPHICS_API sfFloatRect sfTransform_transformRect | ( | const sfTransform * | transform, | 
| sfFloatRect | rectangle | ||
| ) | 
Apply a transform to a rectangle.
Since SFML doesn't provide support for oriented rectangles, the result of this function is always an axis-aligned rectangle. Which means that if the transform contains a rotation, the bounding rectangle of the transformed rectangle is returned.
| transform | Transform object | 
| rectangle | Rectangle to transform | 
| CSFML_GRAPHICS_API void sfTransform_translate | ( | sfTransform * | transform, | 
| float | x, | ||
| float | y | ||
| ) | 
Combine a transform with a translation.
| transform | Transform object | 
| x | Offset to apply on X axis | 
| y | Offset to apply on Y axis | 
| CSFML_GRAPHICS_API const sfTransform sfTransform_Identity | 
Identity transform (does nothing)
Definition at line 52 of file Transform.h.