/// <summary> /// Distance between current coordinates and given coordinates /// </summary> /// <param name="coordinates">Coordinates</param> /// <returns>Distance as double</returns> public double Distance <T>(DefinableCartesianCoordinate <T> coordinates) where T : struct, IComparable { dynamic x = (dynamic)coordinates.X; dynamic y = (dynamic)coordinates.Y; return(Math.Sqrt(Math.Pow((x - X), 2) + Math.Pow((y - Y), 2))); }
public double ScalarProduct(DefinableCartesianCoordinate <double> coord) { return(X * coord.X + Y * coord.Y); }