/// <summary> /// Creates an instance of this class /// </summary> /// <param name="affineTransformVector"></param> public AffineCoordinateTransformation2D(params double[] affineTransformVector) { _a = affineTransformVector[0]; _b = affineTransformVector[1]; _c = affineTransformVector[2]; _d = affineTransformVector[3]; _e = affineTransformVector[4]; _f = affineTransformVector[5]; //var mat = new System.Drawing.Drawing2D.Matrix((float)_a, (float)_b, // (float)_d, (float)_e, (float)_c, (float)_f); //var matInv = mat.Clone(); //matInv.Invert(); //// //var m = ToMatrix(); var minv = ToMatrix(); var rep = new alglib.matinv.matinvreport(); var info = 0; alglib.matinv.rmatrixinverse(ref minv, 3, ref info, rep); _ainv = minv[0, 0]; _binv = minv[0, 1]; _cinv = minv[2, 0]; _dinv = minv[1, 0]; _einv = minv[1, 1]; _finv = minv[2, 1]; }