59void Wind::preset(
double min_hdg,
double max_hdg,
double speed_kt,
double gust_kt )
64 if( _fromNorthNode == NULL )
65 _fromNorthNode =
fgGetNode(
"/environment/config/presets/wind-from-north-fps",
true );
67 if( _fromEastNode == NULL )
68 _fromEastNode =
fgGetNode(
"/environment/config/presets/wind-from-east-fps",
true );
70 double avgHeading_rad =
71 SGMiscd::normalizeAngle2(
72 (SGMiscd::normalizeAngle(min_hdg*SG_DEGREES_TO_RADIANS) +
73 SGMiscd::normalizeAngle(max_hdg*SG_DEGREES_TO_RADIANS))/2);
75 double speed_fps = speed_kt * SG_NM_TO_METER * SG_METER_TO_FEET / 3600.0;
76 _fromNorthNode->setDoubleValue( speed_fps * cos(avgHeading_rad) );
77 _fromEastNode->setDoubleValue( speed_fps * sin(avgHeading_rad) );