private static double GetInterceptTime(Point3D chasePoint, Point3D position, Vector3D velocity, double maxAcceleration)
        {
            // Get the appropriate scalars from the vectors passed in
            Vector3D directionToGo = chasePoint - position;

            Vector3D velocityAlongDirectionLine = velocity.GetProjectedVector(directionToGo);

            // Call the scalar overload
            return GetInterceptTime(directionToGo.Length, velocityAlongDirectionLine.Length, maxAcceleration);
        }