Expressions: Difference between revisions
Jump to navigation
Jump to search
(FPE checks) |
m (Robot: Cosmetic changes) |
||
Line 7: | Line 7: | ||
== Usage == | == Usage == | ||
Expressions are supported in | Expressions are supported in | ||
* [[ | * [[Autopilot Configuration Reference#Expressions|Autopilot configuration files]] | ||
* The particle system configuration files | * The particle system configuration files | ||
* Animations (translate, rotate, scale, range, blend) | * Animations (translate, rotate, scale, range, blend) |
Revision as of 17:35, 8 March 2011
Work in progress This article or section will be worked on in the upcoming hours or days. See history for the latest developments. |
General
Expressions are a feature of the SimGear library and provide a nice way of implementing complex math formulas using XML syntax. They are supported in many systems within the FlightGear code. Beware: Expressions do not check if your math creates floating point exceptions, like division by zero, square root of a negative number etc.
Usage
Expressions are supported in
- Autopilot configuration files
- The particle system configuration files
- Animations (translate, rotate, scale, range, blend)
- The shader technique
Sample Expressions
This is a sample expression for c = sqrt(a*a + b^2)
<expression> <sqrt> <sum> <product> <property>/value/a</property> <property>/value/a</property> </product> <pow> <property>/value/b</property> <value>2</value> </pow> </sum> </sqrt> </expression>
Supported elements
<acos> <asin> <atan> <ceil> <cos> <cosh> <exp> <floor> <log> <log10> <rad2deg> <sin> <sinh> <sqrt> <tan> <tanh> <atan2> <div> <mod> <pow> <value> <property> <abs> (same as fabs) <sqr> <clip> <div> <mod> <sum> <difference> (same as dif) <product> (same as prod) <min> <max> <table>