本文整理汇总了C++中Waypoints::VisitWithinRange方法的典型用法代码示例。如果您正苦于以下问题:C++ Waypoints::VisitWithinRange方法的具体用法?C++ Waypoints::VisitWithinRange怎么用?C++ Waypoints::VisitWithinRange使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Waypoints
的用法示例。
在下文中一共展示了Waypoints::VisitWithinRange方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: distance_counter
static void
TestRangeVisitor(const Waypoints &waypoints, const GeoPoint &location,
fixed distance, unsigned expected_results)
{
WaypointPredicateCounter::Predicate predicate = CloserThan(distance, location);
WaypointPredicateCounter distance_counter(predicate);
waypoints.VisitWithinRange(location, distance, distance_counter);
ok1(distance_counter.GetCounter() == expected_results);
}
示例2: visitor
static void
FillList(WaypointList &list, const Waypoints &src,
GeoPoint location, Angle heading, const WaypointFilterData &filter)
{
list.clear();
if (!filter.IsDefined() && src.size() >= 500)
return;
FilterWaypointVisitor visitor(filter, location, heading, list);
if (filter.distance_index > 0)
src.VisitWithinRange(location, Units::ToSysDistance(
distance_filter_items[filter.distance_index]), visitor);
else
src.VisitNamePrefix(filter.name, visitor);
if (filter.distance_index > 0 || filter.direction_index > 0)
std::sort(list.begin(), list.end(), WaypointDistanceCompare(location));
}
示例3: waypoint_list_builder
void
MapItemListBuilder::AddWaypoints(const Waypoints &waypoints)
{
WaypointListBuilderVisitor waypoint_list_builder(list);
waypoints.VisitWithinRange(location, range, waypoint_list_builder);
}
示例4: Visit
void WaypointListBuilder::Visit(const Waypoints &waypoints) {
if (filter.distance > 0)
waypoints.VisitWithinRange(location, filter.distance, *this);
else
waypoints.VisitNamePrefix(filter.name, *this);
}