예제 #1
0
        /// <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);
        }
예제 #2
0
 /// <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());
 }