I am working on the custom/Satellite tracking mode for the NexStar Evolution driver.
Thinking about API for that function I came to the conclusion that the best way would be
to make a property with predicted path+times (multiple T:Ra:Dec or T:Alt:Az vectors)
of the object, set that property from the client and just command the driver to follow the trajectory.
On each timer tick the driver would interpolate the trajectory and set proper tracking rates.
OTOH the trajectory can be updated/removed at any time by simply updating the trajectory property.
How do you like such API?
I would like to have your opinion since other drivers may like to implement similar functionality.
The motivation for this design is twofold:
- The trajectory calculation (possibly compute intensive) is limited to the client and can be done in advance
- Actual time critical tracking is done in the driver in the timer loop. The calculation is kept simple (linear interpolation)
and constant time which helps keeping tracking consistent.
Any comments/suggestions on this design?