Canvas Draw: Difference between revisions

mNo edit summary
Line 58: Line 58:
== Implementation ==
== Implementation ==
We are proposing a layered design, with simple shapes being used to implement more complex elements (think altitude/speed tapes, artificial horizon etc). Internal default heuristics should be customizable via delegates (Nasal callbacks).
We are proposing a layered design, with simple shapes being used to implement more complex elements (think altitude/speed tapes, artificial horizon etc). Internal default heuristics should be customizable via delegates (Nasal callbacks).
== Approach ==
To ensure rapid prototyping, the idea is to structure the whole thing as an addon.
This would make it possible to easily copy existing code into a new module and adapt it as needed.
For testing purposes, it would make sense to extend svg.nas as we go, i.e. to add support for native shapes to the svg parser.
In addition, it might be worthwhile to also write a custom Nasal parser to parse our existing HUD XML markup (README.hud). This would seem like a goo idea, because we've been wanting to get rid of the hard-coded legacy HUD system anyway, but were still lacking a corresponding 2D API for things like altitude/speed tapes.
Structuring the whole thing as an addon, would also mean that people can get more easily involved in testing the new module, but also in developing it further.


== Related ==
== Related ==