本文整理汇总了C++中InfoBoxData::SetValueFromGlideRatio方法的典型用法代码示例。如果您正苦于以下问题:C++ InfoBoxData::SetValueFromGlideRatio方法的具体用法?C++ InfoBoxData::SetValueFromGlideRatio怎么用?C++ InfoBoxData::SetValueFromGlideRatio使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类InfoBoxData
的用法示例。
在下文中一共展示了InfoBoxData::SetValueFromGlideRatio方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
void
UpdateInfoBoxGRInstant(InfoBoxData &data)
{
const auto gr = CommonInterface::Calculated().gr;
if (!::GradientValid(gr)) {
data.SetInvalid();
return;
}
// Set Value
data.SetValueFromGlideRatio(gr);
}
示例2: lease
void
InfoBoxContentAlternateGR::Update(InfoBoxData &data)
{
if (protected_task_manager == NULL) {
data.SetInvalid();
return;
}
ProtectedTaskManager::Lease lease(*protected_task_manager);
const AlternateList &alternates = lease->GetAlternates();
const AlternatePoint *alternate;
if (!alternates.empty()) {
if (index >= alternates.size())
index = alternates.size() - 1;
alternate = &alternates[index];
} else {
alternate = NULL;
}
data.FormatTitle(_T("Altn %d GR"), index + 1);
if (alternate == NULL) {
data.SetInvalid();
return;
}
data.SetComment(alternate->waypoint.name.c_str());
fixed gradient =
::AngleToGradient(alternate->solution.DestinationAngleGround());
if (negative(gradient)) {
data.SetValueColor(0);
data.SetValue(_T("+++"));
return;
}
if (::GradientValid(gradient)) {
data.SetValueFromGlideRatio(gradient);
} else {
data.SetInvalid();
}
// Set Color (blue/black)
data.SetValueColor(alternate->solution.IsFinalGlide() ? 2 : 0);
}
示例3: if
void
UpdateInfoBoxGRAvg(InfoBoxData &data)
{
const auto average_gr = CommonInterface::Calculated().average_gr;
if (average_gr == 0) {
data.SetInvalid();
return;
}
// Set Value
if (average_gr < 0)
data.SetValue(_T("^^^"));
else if (!::GradientValid(average_gr))
data.SetValue(_T("+++"));
else
data.SetValueFromGlideRatio(average_gr);
}
示例4:
void
UpdateInfoBoxFinalGR(InfoBoxData &data)
{
const TaskStats &task_stats = CommonInterface::Calculated().task_stats;
if (!task_stats.task_valid) {
data.SetInvalid();
return;
}
fixed gradient = task_stats.total.gradient;
if (!positive(gradient)) {
data.SetValue(_T("+++"));
return;
}
if (::GradientValid(gradient))
data.SetValueFromGlideRatio(gradient);
else
data.SetInvalid();
}