preSkew method

void preSkew(
  1. double kx,
  2. double ky, {
  3. double px = 0,
  4. double py = 0,
})

Sets Matrix to Matrix multiplied by Matrix constructed from skewing by (kx, ky) about pivot point (px, py). This can be thought of as skewing about a pivot point before applying Matrix.

Given:

         | A B C |                       |  1 kx dx |
Matrix = | D E F |,  K(kx, ky, px, py) = | ky  1 dy |
         | G H I |                       |  0  0  1 |

where

dx = -kx * py
dy = -ky * px

sets Matrix to:

                             | A B C | |  1 kx dx |   | A+B*ky A*kx+B A*dx+B*dy+C |
Matrix * K(kx, ky, px, py) = | D E F | | ky  1 dy | = | D+E*ky D*kx+E D*dx+E*dy+F |
                             | G H I | |  0  0  1 |   | G+H*ky G*kx+H G*dx+H*dy+I |

@param kx horizontal skew factor @param ky vertical skew factor @param px pivot x @param py pivot y

Implementation

void preSkew(double kx, double ky, {double px = 0, double py = 0}) =>
    c.mnn_cv_matrix_pre_skew(ptr, kx, ky, px, py);