public static bool IsReachable(double initialVelocity, double targetVelocity, double distanceAvailable, MotionParameter motionParameter) => Calculate(initialVelocity, targetVelocity, motionParameter).IsReachable(distanceAvailable);
public static double CalculateTimeNeeded(double aFrom, double vFrom, double vTo, MotionParameter motionParameter) => Calculate(aFrom, vFrom, vTo, motionParameter).TotalDuration;
public static double CalculateDistanceNeeded(double aFrom, double vFrom, double vTo, MotionParameter motionParameter) => Calculate(aFrom, vFrom, vTo, motionParameter).Length;
public static ExtendedP2PCalculatorResult Calculate(double initialVelocity, double targetVelocity, MotionParameter motionParameter) => Calculate(0, initialVelocity, targetVelocity, motionParameter);
public static ExtendedP2PCalculatorResult Calculate(double initialAcceleration, double initialVelocity, double targetVelocity, MotionParameter motionParameter) => new ExtendedP2PCalculator(initialAcceleration, initialVelocity, motionParameter).Calculate(targetVelocity);
private ExtendedP2PCalculator(double initialAcceleration, double initialVelocity, MotionParameter motionParameter) { InitialAcceleration = initialAcceleration; InitialVelocity = initialVelocity; MotionParameter = motionParameter; }