FlightGear/Il linguaggio NASAL: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m removed Category:FlightGeLinguaggio NASAL using HotCat |
m Update syntaxhighlight tags - remove use of deprecated <source> tags |
||
Riga 19:
L'integrazione di una applicazione Nasal avviene per mezzo di uno script XML ad esempio nella forma:
<
<binding>
<command>nasal</command>
Riga 26:
</script>
</binding>
</syntaxhighlight>
Ove il tag ''<binding>'' indica che ci sarà una unione (''binding'') tra i dati presenti nello script è il comando successivo che sarà espresso con uno script Nasal ovvero ''<command>nasal</command>''. A questo punto inizia lo script in Nasal ''<script>print("Binding Invoked!");</script>''.
Riga 34:
Per comunicare i dati tra l'ambiente che invoca e lo script Nasal è possibile utilizzare diverse tecniche, la più semplice è di avvalersi dell'albero globale delle proprietà, ovvero di quella struttura accennata al cap (...) che contiene tutte le variabili globali definite nel programma FlightGear. Per fare questo si utilizzano due funzioni '''getprop()''' e '''setprop()'''. Ad esmepio:
<
setprop("/sim/bar", getprop("/sim/foo"));
</syntaxhighlight>
Un esempio più complesso si può con questo esempio, ove la variabile temporanea ''ThisAircraft'' è una stringa che servirà a puntare le proprietà dell'velivolo. La funzione ''setprop'' in questo caso porrà nella proprietà ''rashed'' il valore ''0'', quindi avremo il seguente codice Nasal:
<
ThisAircraft = "/sim/my/aircraft/properties";
setprop(ThisAircraft, "crashed", 0);
</syntaxhighlight>
=Riferimenti=
|