/// <summary>
 /// Returns a point where the line segment intersects the provided line segment.
 /// </summary>
 /// <param name="otherLine">Line segment that intersects the current line segment.</param>
 /// <returns></returns>
 public abstract CartesianCoordinate IntersectionCoordinate(LineSegment otherLine);
 /// <summary>
 /// Provided line segment intersects the line segment between or on the defining points.
 /// </summary>
 /// <param name="otherLine"></param>
 /// <returns></returns>
 public abstract bool IsIntersecting(LineSegment otherLine);