void AirspaceFormatter::FormatAltitude(TCHAR *buffer, const AirspaceAltitude &altitude) { FormatAltitudeShort(buffer, altitude); if (altitude.reference != AltitudeReference::MSL && positive(altitude.altitude)) _stprintf(buffer + _tcslen(buffer), _T(" %d %s"), iround(Units::ToUserAltitude(altitude.altitude)), Units::GetAltitudeName()); }
void AirspaceFormatter::FormatAltitude(TCHAR *buffer, const AirspaceAltitude &altitude) { FormatAltitudeShort(buffer, altitude); if ((altitude.reference == AltitudeReference::MSL || altitude.reference == AltitudeReference::AGL) && Units::GetUserAltitudeUnit() == Unit::METER) /* additionally show airspace altitude in feet, because aviation charts usually print altitudes in feet */ StringFormatUnsafe(buffer + _tcslen(buffer), _T(" (%d %s)"), iround(Units::ToUserUnit(altitude.altitude, Unit::FEET)), Units::GetUnitName(Unit::FEET)); if (altitude.reference != AltitudeReference::MSL && positive(altitude.altitude)) StringFormatUnsafe(buffer + _tcslen(buffer), _T(" %d %s"), iround(Units::ToUserAltitude(altitude.altitude)), Units::GetAltitudeName()); }