invert method
Returns the inverse transform, or null if the matrix is singular.
Implementation
Transform2D? invert() {
final det = a * d - b * c;
if (det == 0) return null;
final invDet = 1.0 / det;
final invA = d * invDet;
final invB = -b * invDet;
final invC = -c * invDet;
final invD = a * invDet;
final invTx = -(invA * tx + invC * ty);
final invTy = -(invB * tx + invD * ty);
return Transform2D(
a: invA,
b: invB,
c: invC,
d: invD,
tx: invTx,
ty: invTy,
);
}