Paul Surgeon wrote:
Hmmm ... I didn't know that the network interface was that flexible.
So I can read and write any properties in the property tree from an external
app?
Playing sounds from an external app (which is an absolutely neccessary for
what I want to do) would be a problem for some people who's sound cards don't
do hardware mixing. I assume playing sounds from nasal would get mixed inside
FG's openal setup?
I keep thinking that someday I should pen a book ... 101 tricky things
you can do with flightgear.
For instance, start FlightGear with the following option:
--httpd=5400
You can pick any port number, but 5400 will probably work just fine.
Now on the same machine, fire up a web browser and open up the following
url:
http://localhost:5400/
Now you can browse the entire FG property tree "live" and even change
values if you like. You can configure autopilot modes and even set
control inputs so you can literally fly the airplane from your web
browser, although it's not the most convenient interface for doing that. ;-)
There is a similar interface minus the html wrappings that you can
enable with the following option:
--props=5401
Note that you can setup as many of these as you want ... for instance,
just to be obscene you could do:
--httpd=5400
--httpd=5401
--httpd=5402
--props=5403
--props=5404
--props=5405
Now you have 6 different network interfaces running that you can access
from anywhere. [Note: security issues if not used wisely.]
If you have a 'props' inteface configured you can now "telnet localhost
5401" and interact with the property system (again live) and set and
examine values using a 'command line' style interface.
The cool thing is that you can easily write scripts to access this
--props=<port#> interface.
Take a look at:
FlightGear/source/scripts/perl/examples/
Note that there is no requirement that you do this with perl. You could
just as easily interact with FlightGear this way using perl, C, C++,
java, probably even <ack> visual basic or anything else that can do
tcpip network communication ... matlab? netcat?
Also note that the downside to this interface is that you can't blast a
lot of data across it. It's fine if you want to monitor location and
speed every second or 1/4 second and occasionally set some values (such
as dump in a new weather configuration, reset the aircraft location, or
read a set of values, etc.)
But if you need to track 100 different variables at 60hz, this isn't the
interface for you.
Best regards,
Curt.
--
Curtis Olson http://www.flightgear.org/~curt
HumanFIRST Program http://www.humanfirst.umn.edu/
FlightGear Project http://www.flightgear.org
Unique text: 2f585eeea02e2c79d7b1d8c4963bae2d
-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems? Stop! Download the new AJAX search engine that makes
searching your log files as easy as surfing the web. DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
_______________________________________________
Flightgear-devel mailing list
Flightgear-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/flightgear-devel