boost::geometry::detail::as_range使用示例
在使用 Boost.Geometry 库时,有时需要将一些 Range 变量转换成另外的 Range 类型。这时,可以使用 as_range 函数来完成这个操作。as_range函数接收一个参数,通常是一个迭代器,返回一个表示一个范围的 Range 类型变量。
下面是使用 as_range 的一个示例程序:
#include <iostream>
#include <vector>
#include <boost/geometry.hpp>
int main()
{
typedef boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> point_type;
typedef boost::geometry::model::box<point_type> box_type;
// 创建一个点集合
std::vector<point_type> points;
points.push_back(point_type(0, 0));
points.push_back(point_type(1, 1));
points.push_back(point_type(2, 2));
// 使用 as_range 将点集合转换成表示范围的变量
box_type box = boost::geometry::detail::as_range(points);
本文通过示例介绍了Boost.Geometry库的detail::as_range函数,用于将Range变量转换。示例展示了如何将点集合转换为范围,并输出转换后的范围的边界坐标。虽然as_range是内部函数,建议使用Boost.Range的range_adaptor进行类似操作。
订阅专栏 解锁全文
480

被折叠的 条评论
为什么被折叠?



