ChartDirector 7.1 (C++ Edition)

DrawArea.affineTransform


Usage

void affineTransform(double a, double b, double c, double d, double e, double f, int bgColor = 0xffffff, int filter = LinearFilter, double blur = 1);

Description

Perform affine transformation on the drawing surface.

An affine transformation is an operation where every pixel is copied to another pixel according to the formula.

xDest = a * xSrc + b * ySrc + c
yDest = d * xSrc + e * ySrc + f

where (xSrc, ySrc) is a source pixel, and (xDest, yDest) is where it should go to.

Many graphics operation, such as translation, rotation, and resizing, can be considered as a special case of affine transformation.

Arguments

ArgumentDefaultDescription
a(Mandatory)The parameter 'a' in the coordinate transformation formula "xDest = a * xSrc + b * ySrc + c".
b(Mandatory)The parameter 'b' in the coordinate transformation formula "xDest = a * xSrc + b * ySrc + c".
c(Mandatory)The parameter 'c' in the coordinate transformation formula "xDest = a * xSrc + b * ySrc + c".
d(Mandatory)The parameter 'd' in the coordinate transformation formula "yDest = d * xSrc + e * ySrc + f".
e(Mandatory)The parameter 'e' in the coordinate transformation formula "yDest = d * xSrc + e * ySrc + f".
f(Mandatory)The parameter 'f' in the coordinate transformation formula "yDest = d * xSrc + e * ySrc + f".
bgColorFFFFFFThe background color used to fill destination pixels that are not mapped to any source pixels.
filterLinearFilterThe filter to use for re-sampling.
blur1The blur factor to use for re-sampling.

Return Value

None