Matrix2x4& SetRectToParl(T x1, T y1, T x2, T y2, const T* parl);
SetRectToParl transforms a rectangle to a parallelogram. In effect, any object shape say a circle within the rectangle gets transformed to an ellipse in the parallelogram.
The parallelograms are defined by the matrices which represent the edge coordinates of the parallelogram. The 3 corners of the parallelogram are identified by a float array Float[6] mapped to x1, y1, x2, y2, x3, y3 and the fourth point is calculated internally.
*----------*(x2,y2) *---------------*(a3,b3) | | / / | | ----> / / (x1,y1) *----------* (a1,b1)*---------------*(a2,b2)
Parameters |
Description |
T x1 |
The x coordinate value of the bottom left corner of the rectangle. |
T y1 |
The y coordinate value of a bottom left corner of the rectangle. |
T x2 |
The x coordinate value of top right corner point of the rectangle. |
T y2 |
The y coordinate value of top right corner point of the rectangle. |
const T* parl |
Pointer to float array representing the coordinates of the parallelogram. |
Matrix2x4 representing the transformed parallelogram.