20,741
edits
(suggestion: LCD screen abstraction) |
|||
Line 55: | Line 55: | ||
--[[User:Hcc23|Hcc23]] 22:32, 2 December 2010 (UTC) | --[[User:Hcc23|Hcc23]] 22:32, 2 December 2010 (UTC) | ||
= LCD screen abstraction = | |||
My suggestion would be to introduce a new Nasal module here, where people can use a wrapper to create a new alphanumerical screen area and map it to the corresponding [http://gitorious.org/fg/fgdata/blobs/master/Docs/README.osgtext osgText animations]: | |||
var myLCD = lcd.new(lines:14,columns:24); | |||
Next, one could add methods to easily add text to specific lines or columns of this virtual LCD screen, too: | |||
myLCD.add(line:1, text: "INIT/REF INDEX"); | |||
myLCD.add(line:2, text: "< IDENT"); | |||
myLCD.add(line:3, text: "< POS"); | |||
myLCD.add(line:4, text: "< PERF"); | |||
myLCD.add(line:5, text: "< TAKEOFF"); | |||
myLCD.add(line:6, text: "< APPROACH"); | |||
As a third (and optional) argument, one could add support for formatting/styling attributes to change font, font size, font color etc. | |||
Once we have such an LCD wrapper, providing a CDU specific wrapper on top of this that handles the LCD transparently would be easy. | |||
The CDU wrapper would then work in terms of "CDU pages" and use the LCD backend internally which addresses the virtual LCD by setting properties, which converts everything to the required osgText animations, so you end up with three wrappers: | |||
* osgText (lowest) | |||
* LCD screen | |||
* CDU (high level) | |||
--[[User:Hooray|Hooray]] 23:17, 2 December 2010 (UTC) |