Matrix3d
class Matrix3d(val x1y1: Double = 1.0, val x2y1: Double = 0.0, val x3y1: Double = 0.0, val x4y1: Double = 0.0, val x1y2: Double = 0.0, val x2y2: Double = 1.0, val x3y2: Double = 0.0, val x4y2: Double = 0.0, val x1y3: Double = 0.0, val x2y3: Double = 0.0, val x3y3: Double = 1.0, val x4y3: Double = 0.0)
Note. if this only needed for affine transformations, then the bottom row can be hard coded to 0,0,0,1 This will simplify the maths.