//constructor /// <summary> /// VerticalSinusoalMovement, constuctor /// </summary> /// <param name="minY">Min Y Value</param> /// <param name="maxY">Max Y Value</param> /// <param name="y">Inital Y Value</param> /// <param name="deltaX">Delta X</param> /// <param name="period">Period (In Ticks)</param> public HorizontalSinusodalMovement(double minY, double maxY, double y, double period, double deltaX) : base(deltaX, 0.0) { double amplitude = (maxY - minY) / 2; double offset = maxY - amplitude; double phase = Math.Asin((offset - y) / amplitude) + (2 * Math.PI); double altered = 0.2 * Math.PI / period; _sineMovement = new SineMovement(amplitude, altered, phase, offset); }
//constructor /// <summary> /// VerticalSinusoalMovement, constuctor /// </summary> /// <param name="minX">Min X Value</param> /// <param name="maxX">Max X Value</param> /// <param name="x">Inital X Value</param> /// <param name="deltaY">Delta Y</param> /// <param name="period">Period (In Ticks)</param> public VerticalSinusodalMovement(double minX, double maxX, double x, double period, double deltaY) : base(0.0, deltaY) { double amplitude = (maxX - minX) / 2; double offset = maxX - amplitude; double phase = Math.Asin((offset - x) / amplitude) + (2 * Math.PI); double altered = 0.2 * Math.PI / period; //double phase = (Math.Asin((offset - x) / amp) + 2 * Math.PI) / period; _sineMovement = new SineMovement(amplitude, altered, phase, offset); }