Assume that this is in two dimensions but should scale to 3 dimensions.
I have a ship, with maximum acceleration A (meters/second/second),
maximum speed V (meters/second), and a maximum rotation R
(degrees/second). It it is at P0 with initial velocity V0, and is
heading to P1 with final velocity V1. Assume that its heading will be
coincident with V0 and V1 at the start and beginning respectively.
The path traveled will be a Hermite spline.
I need a function F(p,v) that provides the necessary change in
rotation and acceleration in order to reach P1 with the requisite V1,
given all of the above. In theory you don't need P0/V0 since each
type I call F() P0/V0 will be new. This would allow me to iteratively
update the ship's parameters as it travels in order to best fit along
that curve and end with the desired velocity.
There are theoretical situations where it will not be able to rotate
or accelerate fast enough in order to fit, but in those cases simply
returning max results suffices. |