/// <summary> /// /// </summary> /// <param name="other"></param> /// <param name="tolerance"></param> /// <returns></returns> public bool ApproxEquals(Orient2d other, double tolerance = zMath.ZeroTolerance) { return (Translation.ApproxEquals(other.Translation, tolerance) && Rotation.ApproxEquals(other.Rotation, tolerance)); }
/// <summary> /// Creates a relative transformation from t0 to t1. /// </summary> /// <param name="from"></param> /// <param name="to"></param> /// <returns></returns> public static Orient2d CreateFromTo(Orient2d from, Orient2d to) { return(to.Apply(from.Inverse)); }
/// <summary> /// Applies the inverse of this transformation to the given transformation. /// </summary> /// <param name="other"></param> public Orient2d ApplyInverse(Orient2d other) { other.Rotation = Rotation.ApplyInverse(other.Rotation); other.Translation = ApplyInverse(other.Translation); return(other); }