/// <summary> /// Clones the range limit. /// </summary> /// <returns>LinearCurve.</returns> public CurveRange CloneRange() { CurveRange curveRange = new CurveRange(); curveRange._limitStart = _limitStart.CloneLimit(); curveRange._limitEnd = _limitEnd.CloneLimit(); return(curveRange); }
/// <summary> /// Returns a coordinate that is a linear interpolation in polar coordinates within the range provided. /// </summary> /// <param name="sRelative">The relative position, s. Relative position must be between 0 and 1.</param> /// <param name="range">The range.</param> /// <param name="tolerance">The tolerance used for relative comparisons of floating point numbers.</param> /// <returns>CartesianCoordinate.</returns> public static CartesianCoordinate CoordinateInterpolatedPolar(double sRelative, CurveRange range, double tolerance = Numbers.ZeroTolerance) { ValidateRangeLimitRelativePosition(sRelative, tolerance); return((sRelative * range.ToOffset()).ToCartesianCoordinate()); }