本文整理汇总了C++中GlideResult::GetRequiredAltitudeWithDrift方法的典型用法代码示例。如果您正苦于以下问题:C++ GlideResult::GetRequiredAltitudeWithDrift方法的具体用法?C++ GlideResult::GetRequiredAltitudeWithDrift怎么用?C++ GlideResult::GetRequiredAltitudeWithDrift使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类GlideResult
的用法示例。
在下文中一共展示了GlideResult::GetRequiredAltitudeWithDrift方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
static void
CheckLegEqualsTotal(const GlideResult &leg, const GlideResult &total)
{
ok1(total.IsOk());
ok1(equals(total.height_climb, leg.height_climb));
ok1(equals(total.height_glide, leg.height_glide));
ok1(equals(total.altitude_difference, leg.altitude_difference));
ok1(equals(total.GetRequiredAltitudeWithDrift(), leg.GetRequiredAltitudeWithDrift()));
}
示例2: assert
void
GlideResult::Add(const GlideResult &s2)
{
if ((unsigned)s2.validity > (unsigned)validity)
/* downgrade the validity */
validity = s2.validity;
if (!IsDefined())
return;
vector.distance += s2.vector.distance;
if (!IsOk())
/* the other attributes are not valid if validity is not OK or
PARTIAL */
return;
if (s2.GetRequiredAltitudeWithDrift() < min_arrival_altitude) {
/* must meet the safety height of the first leg */
assert(s2.min_arrival_altitude < s2.GetArrivalAltitudeWithDrift(min_arrival_altitude));
/* calculate a new minimum arrival height that considers the
"mountain top" in the middle */
min_arrival_altitude = s2.GetArrivalAltitudeWithDrift(min_arrival_altitude);
} else {
/* must meet the safety height of the second leg */
/* apply the increased altitude requirement */
altitude_difference -=
s2.GetRequiredAltitudeWithDrift() - min_arrival_altitude;
/* adopt the minimum height of the second leg */
min_arrival_altitude = s2.min_arrival_altitude;
}
pure_glide_height += s2.pure_glide_height;
time_elapsed += s2.time_elapsed;
height_glide += s2.height_glide;
height_climb += s2.height_climb;
time_virtual += s2.time_virtual;
}