code: public boolean isOrthonormal(double tol) {
  		Transformation2D r = new Transformation2D();
  		r.xx = xx * xx + xy * xy;
  		r.xy = xx * yx + xy * yy;
  		r.yx = yx * xx + yy * xy;
  		r.yy = yx * yx + yy * yy;
  		r.xd = 0;
  		r.yd = 0;
  
  		return r.isIdentity(tol);
  	}
docs: Returns TRUE if this is an orthonormal transformation with the given
  tolerance. The orthonormal: Rotation or rotoinversion and shift
  (preserves lengths of vectors and angles between vectors).
  
  @param tol
  The tolerance value.