code: public void inverse(Transformation2D inverse) {
  		double det = xx * yy - xy * yx;
  
  		if (det == 0) {
  			inverse.setZero();
  			return;
  		}
  
  		det = 1 / det;
  
  		inverse.xd = (xy * yd - xd * yy) * det;
  		inverse.yd = (xd * yx - xx * yd) * det;
  		inverse.xx = yy * det;
  		inverse.xy = -xy * det;
  		inverse.yx = -yx * det;
  		inverse.yy = xx * det;
  	}
docs: Produces inverse matrix for this matrix and puts result into the inverse
  parameter.
  
  @param inverse
  The result inverse matrix.