Exemplo n.º 1
0
 public static void ArcTan(double ratio, double expectedResult)
 {
     Assert.AreEqual(expectedResult, TrigonometryLibrary.ArcTan(ratio), Tolerance);
 }
Exemplo n.º 2
0
        public static void Tan(double degrees, double expectedResult)
        {
            double radians = Angle.DegreesToRadians(degrees);

            Assert.AreEqual(expectedResult, TrigonometryLibrary.Tan(radians), Tolerance);
        }
 /// <summary>
 /// Y-coordinate on the curve in local coordinates about the local origin that corresponds to the parametric coordinate given.
 /// </summary>
 /// <param name="angleRadians">Parametric coordinate in radians.</param>
 /// <returns></returns>
 public override double YbyRotationAboutOrigin(double angleRadians)
 {
     return(DistanceFromVertexMinorToMajorAxis * TrigonometryLibrary.Sin(angleRadians));
 }
 /// <summary>
 /// X-coordinate on the curve in local coordinates about the left (-X) focus that corresponds to the parametric coordinate given.
 /// </summary>
 /// <param name="angleRadians">Angle of rotation about the left (-X) focus, in radians.</param>
 /// <returns></returns>
 public override double XbyRotationAboutFocusLeft(double angleRadians)
 {
     return(-1 * DistanceFromFocusToLocalOrigin + RadiusAboutFocusLeft(angleRadians) * TrigonometryLibrary.Cos(angleRadians));
 }
 /// <summary>
 /// Slope of the curve in local coordinates about the local origin that corresponds to the parametric coordinate given.
 /// </summary>
 /// <param name="angleRadians">Parametric coordinate in radians.</param>
 /// <returns></returns>
 public override double SlopeByAngle(double angleRadians)
 {
     return(-1 * (DistanceFromVertexMinorToMajorAxis / DistanceFromVertexMajorToLocalOrigin) * TrigonometryLibrary.Cot(angleRadians));
 }
 /// <summary>
 /// X-coordinate on the curve in local coordinates about the local origin that corresponds to the parametric coordinate given.
 /// </summary>
 /// <param name="angleRadians">Parametric coordinate in radians.</param>
 /// <returns></returns>
 public override double XbyRotationAboutOrigin(double angleRadians)
 {
     return(DistanceFromVertexMajorToLocalOrigin * TrigonometryLibrary.Cos(angleRadians));
 }
 /// <summary>
 /// Primes the double by angle.
 /// </summary>
 /// <param name="angleRadians">The angle radians.</param>
 /// <returns>System.Double.</returns>
 public override double PrimeDoubleByParameter(double angleRadians)
 {
     return(-1 * _parent.RadiusAboutFocusRight((Coordinates.Angle)angleRadians) * TrigonometryLibrary.Sin(angleRadians));
 }
Exemplo n.º 8
0
 /// <summary>
 /// Primes the double by angle.
 /// </summary>
 /// <param name="angleRadians">The angle radians.</param>
 /// <returns>System.Double.</returns>
 public override double PrimeDoubleByParameter(double angleRadians)
 {
     return(-1 * _parent.DistanceFromVertexMajorToLocalOrigin * TrigonometryLibrary.Cos(angleRadians));
 }
Exemplo n.º 9
0
 /// <summary>
 /// X-coordinate on the curve in local coordinates about the focus that corresponds to the parametric coordinate given.
 /// </summary>
 /// <param name="angleRadians">Angle of rotation about the focus, in radians.</param>
 /// <returns></returns>
 public override double BaseByParameter(double angleRadians)
 {
     return(_parent.DistanceFromVertexMajorToLocalOrigin - _parent.RadiusAboutFocusRight((Coordinates.Angle)angleRadians) * TrigonometryLibrary.Cos(angleRadians));
 }
Exemplo n.º 10
0
        /// <summary>
        /// The radius measured from the left (-X) major vertex as a function of the angle in local coordinates.
        /// </summary>
        /// <param name="angleRadians">The angle in radians in local coordinates.</param>
        /// <returns>System.Double.</returns>
        public override double RadiusAboutVertexMajorLeft(double angleRadians)
        {
            double radius = 2 * Radius * TrigonometryLibrary.Cos(angleRadians);

            return(radius.IsPositiveSign(Tolerance)? radius: 0);
        }
Exemplo n.º 11
0
 /// <summary>
 /// Primes the double by angle.
 /// </summary>
 /// <param name="angleRadians">The angle radians.</param>
 /// <returns>System.Double.</returns>
 public override double PrimeDoubleByParameter(double angleRadians)
 {
     return(-1 * _parent.DistanceFromVertexMinorToMajorAxis * TrigonometryLibrary.Sin(angleRadians));
 }