/// <summary> /// Creates a new 2-dimensional canonical product. /// </summary> public static IProduct2 <T1, T2> Create <T1, T2>(IProduct2 <T1, T2> p) { if (Equals(p.GetType(), typeof(Product2 <T1, T2>))) { return(p); } return(Create(p.ProductValue1, p.ProductValue2)); }
/// <summary> /// Creates a new 2-dimensional canonical product. /// </summary> public static Position2 <P1, P2> Create <P1, P2>(IProduct2 <P1, P2> p) { return(Create(p.ProductValue1, p.ProductValue2)); }