a transformation which stored the first row of a 3x3 perspective matrix More...
#include <libwps_internal.h>
| Public Member Functions | |
| WPSTransformation (WPSVec3f const &xRow=WPSVec3f(1, 0, 0), WPSVec3f const &yRow=WPSVec3f(0, 1, 0)) | |
| constructor  More... | |
| bool | isIdentity () const | 
| returns true if the matrix is an identity matrix  More... | |
| void | checkIdentity () const | 
| check if a matrix is the identity matrix  More... | |
| WPSVec3f const & | operator[] (int c) const | 
| the two extremum points which defined the box  More... | |
| Vec2f | operator* (Vec2f const &pt) const | 
| operator* for vec2f  More... | |
| Vec2f | multiplyDirection (Vec2f const &dir) const | 
| operator* for direction  More... | |
| WPSBox2f | operator* (WPSBox2f const &box) const | 
| operator* for box2f  More... | |
| WPSTransformation | operator* (WPSTransformation const &mat) const | 
| operator* for transform  More... | |
| WPSTransformation & | operator*= (WPSTransformation const &mat) | 
| operator*=  More... | |
| bool | operator== (WPSTransformation const &mat) const | 
| operator==  More... | |
| bool | operator!= (WPSTransformation const &mat) const | 
| operator!=  More... | |
| bool | operator< (WPSTransformation const &mat) const | 
| operator<  More... | |
| bool | operator<= (WPSTransformation const &mat) const | 
| operator<=  More... | |
| bool | operator> (WPSTransformation const &mat) const | 
| operator>  More... | |
| bool | operator>= (WPSTransformation const &mat) const | 
| operator>=  More... | |
| bool | decompose (float &rotation, Vec2f &shearing, WPSTransformation &transform, Vec2f const ¢er) const | 
| try to decompose the matrix in a rotation + scaling/translation matrix.  More... | |
| Static Public Member Functions | |
| static WPSTransformation | translation (Vec2f const &trans) | 
| returns a translation transformation  More... | |
| static WPSTransformation | scale (Vec2f const &trans) | 
| returns a scaling transformation  More... | |
| static WPSTransformation | rotation (float angle, Vec2f const ¢er=Vec2f(0, 0)) | 
| returns a rotation transformation around center.  More... | |
| static WPSTransformation | shear (Vec2f s, Vec2f const ¢er=Vec2f(0, 0)) | 
| returns a shear transformation letting center invariant, ie.  More... | |
| Protected Attributes | |
| std::pair< WPSVec3f, WPSVec3f > | m_data | 
| the data  More... | |
| bool | m_isIdentity | 
| flag to know if this matrix is an identity matrix  More... | |
a transformation which stored the first row of a 3x3 perspective matrix
| 
 | inlineexplicit | 
constructor
| 
 | inline | 
check if a matrix is the identity matrix
Referenced by operator*().
| bool WPSTransformation::decompose | ( | float & | rotation, | 
| Vec2f & | shearing, | ||
| WPSTransformation & | transform, | ||
| Vec2f const & | center | ||
| ) | const | 
try to decompose the matrix in a rotation + scaling/translation matrix.
Note: the center of rotation is given before applying the transformation(this)
Referenced by WPSGraphicShape::transform().
| 
 | inline | 
returns true if the matrix is an identity matrix
Referenced by LotusGraph::readGraphic(), LotusGraph::sendZone(), and WPSGraphicShape::transform().
operator* for direction
| 
 | inline | 
operator!=
| 
 | inline | 
operator* for transform
| 
 | inline | 
operator*=
| 
 | inline | 
operator<
| 
 | inline | 
operator<=
| 
 | inline | 
operator==
| 
 | inline | 
operator>
| 
 | inline | 
operator>=
| 
 | inline | 
the two extremum points which defined the box
| c | 0 means the minimum and 1 the maximum | 
| 
 | static | 
returns a rotation transformation around center.
Referenced by decompose(), and LotusGraphInternal::ZonePc::getTransformation().
| 
 | inlinestatic | 
returns a scaling transformation
| 
 | inlinestatic | 
returns a shear transformation letting center invariant, ie.
a matrix ( 1 s[0] -s[0]*center[1], s[1] 1 -s[1]*center[0], 0 0 1)
Referenced by decompose().
| 
 | inlinestatic | 
returns a translation transformation
Referenced by LotusGraphInternal::ZonePc::getTransformation().
the data
Referenced by operator!=(), operator*(), operator<(), operator<=(), operator==(), operator>(), and operator>=().
| 
 | mutableprotected | 
flag to know if this matrix is an identity matrix
Referenced by operator*(), and operator*=().