29 double x =
static_cast<double>(rOrig.X()),
y = static_cast<double>(rOrig.Y());
30 return Point(static_cast<int>(x *
f[0] +
y *
f[2] +
f[4]),
31 static_cast<int>(x *
f[1] +
y *
f[3] +
f[5]));
37 double tb = tan(beta);
38 fn[0] =
f[0] +
f[2] * tb;
40 fn[2] =
f[2] +
f[3] * tb;
42 fn[4] =
f[4] +
f[5] * tb;
46 double ta = tan(alpha);
69 double fSin = sin(angle);
70 double fCos = cos(angle);
71 fn[0] =
f[0] * fCos -
f[1] * fSin;
72 fn[1] =
f[0] * fSin +
f[1] * fCos;
73 fn[2] =
f[2] * fCos -
f[3] * fSin;
74 fn[3] =
f[2] * fSin +
f[3] * fCos;
75 fn[4] =
f[4] * fCos -
f[5] * fSin;
76 fn[5] =
f[4] * fSin +
f[5] * fCos;
89 if (
f[1] ==
f[2] &&
f[1] == 0.0 &&
f[0] ==
f[3] &&
f[0] == 1.0)
97 const double fDet =
f[0] *
f[3] -
f[1] *
f[2];
103 fn[0] = +f[3] / fDet;
104 fn[1] = -f[1] / fDet;
105 fn[2] = -f[2] / fDet;
106 fn[3] = +f[0] / fDet;
109 fn[4] = -(f[4] * fn[0] + f[5] * fn[2]);
110 fn[5] = -(f[4] * fn[1] + f[5] * fn[3]);
void rotate(double angle)
void scale(double sx, double sy)
void translate(double tx, double ty)
void set(const double *pn)
void skew(double alpha, double beta)
Point transform(const Point &rPoint) const