Nasal for C++ programmers: Difference between revisions

Jump to navigation Jump to search
m
http://flightgear.org/forums/viewtopic.php?f=30&t=20857&p=190395#p190395
m (http://flightgear.org/forums/viewtopic.php?f=30&t=20857&p=190395#p190395)
m (http://flightgear.org/forums/viewtopic.php?f=30&t=20857&p=190395#p190395)
Line 26: Line 26:
There are two aspects to Nasal: that of interaction with itself and with the property tree.  
There are two aspects to Nasal: that of interaction with itself and with the property tree.  
For instance, to control an aircraft in a scripted fashion, the property tree is going to be your communication with the wider FlightGear code.  
For instance, to control an aircraft in a scripted fashion, the property tree is going to be your communication with the wider FlightGear code.  
In such a scenario, you will mainly use the autopilot to control the aircraft (since it has a real FDM it's kinda hard to control), and we would definitely recommend one with a well-developed autopilot (the 777s are really excellent with everything and has a good autopilot with all features you want). One option with the 777 is that you could potentially use Nasal to dynamically edit routes that the aircraft just flies via the route manager – not much work there. Another approach would be manually adjusting the autopilot parameters (like heading hold, bank angle, and stuff like that) through Nasal feedback algorithms for aircraft that don't have a.route manager. You could also couple this with the XML autopilot (now called "property rule") system to have real PIDs, easy lowpass, etc.


Nasal also can use its own mechanisms (library functions/APIs) to interact with different things (file system, route manager, fgcommands, ...). In interest of the web browser analogy, XML in FlightGear is like HTML.  
Nasal also can use its own mechanisms (library functions/APIs) to interact with different things (file system, route manager, fgcommands, ...). In interest of the web browser analogy, XML in FlightGear is like HTML.  

Navigation menu