33 return (
static_cast<int>(10.0 * (d + .5))) / 10;
41static inline int roundToInt( SGPropertyNode_ptr n,
const char * child )
63 int h =
fgGetInt(
"/sim/time/utc/hour", 12 );
64 int m = 20 +
fgGetInt(
"/sim/time/utc/minute", 0 ) / 30 ;
71 int i = 5 +
roundToInt( _environment->getNode(
"config/boundary/entry[0]/wind-from-heading-deg",
true) );
78 return roundToInt( _environment,
"config/boundary/entry[0]/wind-speed-kt" );
89 return roundToInt( _environment->getNode(
"pressure-sea-level-inhg",
true)->getDoubleValue() * SG_INHG_TO_PA / 100 );
95 return _environment->getNode(
"pressure-sea-level-inhg",
true)->getDoubleValue();
105 return roundToInt( _environment,
"ground-visibility-m" );
115 using simgear::PropertyList;
118 PropertyList layers = _environment->getNode(
"clouds",
true)->getChildren(
"layer");
119 for( PropertyList::iterator it = layers.begin(); it != layers.end(); ++it ) {
120 string coverage = (*it)->getStringValue(
"coverage",
"clear" );
121 int alt =
roundToInt( (*it)->getDoubleValue(
"elevation-ft", -9999 ) ) / 100;
124 if( coverage !=
"clear" && alt > 0 )
125 cloudEntries[alt] = coverage;
133 return roundToInt( _environment,
"temperature-sea-level-degc" );
138 return roundToInt( _environment,
"dewpoint-sea-level-degc" );
int fgGetInt(const char *name, int defaultValue)
Get an int value for a property.
SGPropertyNode * fgGetNode(const char *path, bool create)
Get a property node.