4. 点云处理

4.1 add_point

将一个点添加到另一个点

4.2 add_value

将相同的值添加到点的每个坐标

4.3 assign_point

用另一个点指定一个点

4.4 assign_value

为点的每个坐标指定相同的值

4.5 cross_product

计算两个向量的叉积

4.7 divide_point

将一点除以另一点

4.8 divide_value

将同一点的每个坐标除以一个值

4.9 dot_product

计算2个矢量(点)的点积(或标量积)

4.10 multiply_point

将一个点乘以另一个点

4.11 multiply_value

将点的每个坐标乘以相同的值

4.12 subtract_point

将一点减去另一点

4.13 subtract_value

将相同的值减去点的每个坐标

5. 常数控制

5.1 min_corner

指示要获取、设置或处理的框的最小角

5.2 max_corner

指示要获取、设置或处理的框的最大角

6. 坐标系转换

6.1 cs::cartesian

笛卡尔坐标系

6.2 cs::spherical

球面(极坐标)坐标系,以度或弧度表示

6.3 cs::spherical_equatorial

球面赤道坐标系,以度或弧度表示

6.4 cs::geographic

地理坐标系,以度或弧度表示

7. 核心元函数

7.1 closure

将值定义为指定几何图形类型的闭包(顺时针、逆时针)的函数

7.2 coordinate_system

函数将类型定义为构成指定几何类型的点类型的坐标系(笛卡尔坐标系、球面坐标系等)

7.3 coordinate_type

函数将类型定义为构成指定几何类型的点类型的坐标类型(int、float、double等)

7.4 cs_tag

函数返回任意几何体的坐标系标记(cs族)

7.5 degree

定义球面坐标系的平面角单位的标记。此标记指定坐标的定义单位为度(-180..180)。必须为某些坐标系指定它

7.6 dimension

将值定义为构成指定几何图形类型的点类型的函数

7.7 interior_type

将类型定义为指定几何类型的interior_ type(内环的容器类型)的函数

7.8 point_order

将值定义为指定几何图形类型的点顺序(顺时针、逆时针)的函数

7.9 point_type

将类型定义为指定几何体类型的point_ type的元函数

7.10 radian

平面角单位:弧度

7.11 ring_type

将类型定义为指定几何体类型的环_类型的函数

7.12 tag

将类型定义为指定几何体类型的标记的函数

7.13 tag_cast

标记转换,标记可以相互继承。例如,multi_ point继承multi_。通常,行为可以在不同的几何图形类型之间共享。由metafunction标记找到的标记可以转换为更基本的标记,然后由该标记分派

8. 模型

8.1 model::point

基点类,具有以中性方式定义的坐标

8.2 model::d2::point_xy

笛卡尔坐标系中的二维点

8.3 model::d3::point_xyz

笛卡尔坐标系中的三维点

8.4 model::linestring

linestring(由OGC命名)是点的集合(默认为向量)

8.5 model::polygon

多边形包含一个外圈和零个或多个内圈

8.6 model::multi_point

multi_point,点的集合

8.7 model::multi_linestring

multi_line,linestring的集合

8.8 model::multi_polygon

multi_ polygon,多边形的集合

8.9 model::box

类框:定义由两个描述点组成的框

8.10 model::ring

环(也称为线性环)是一条不应自相交的闭合线

8.11 model::segment

在几何学中,线段是由两个不同端点限定的直线的一部分,包含其端点之间直线上的每个点

8.12 model::referring_segment

类段:包含两个(模板化)点引用的小类

9. 空间索引

9.1 boost::geometry::index::rtree

9.1.1 rtree()

rtree的构造函数

9.1.2 ~rtree()

rtree的析构函数

9.1.3 operator=(rtree const &)

赋值运算符

9.1.4 swap(rtree &)

交换两个RTree的内容

9.1.5 insert(value_type const &)

在索引中插入一个值

9.1.6 remove(value_type const &)

从容器中删除值

9.1.7 query(Predicates const &, OutIter)

此查询函数执行空间和k近邻搜索。它允许传递一组数据。仅当满足所有数据时才会返回值

9.1.8 qbegin(Predicates const &)

返回指向查询范围开头的查询迭代器

9.1.9 qend()

返回一个指向查询范围末尾的查询迭代器

9.1.10 begin()

返回指向rtree值范围开头的迭代器

9.1.11 end()

返回指向rtree值范围末尾的迭代器

9.1.12 size()

返回存储值的数目

9.1.13 empty()

查询容器是否为空

9.1.14 clear()

删除存储在容器中的所有值

9.1.15 bounds()

返回能够包含容器中存储的所有值的框

9.1.16 count(ValueOrIndexable const &)

对于indexable_type,它返回可索引的值的数目等于参数。对于value_type,它返回等于参数的值的数量

9.1.17 parameters()

返回参数

9.1.18 indexable_get()

返回从值检索可索引的函数

9.1.19 value_eq()

返回比较值的函数

9.1.20 get_allocator()

返回rtree使用的分配器

9.2 R-tree parameters (boost::geometry::index)

9.2.1 boost::geometry::index::linear

线性r树创建算法参数

9.2.2 boost::geometry::index::quadratic

二次r树生成算法参数

9.2.3 boost::geometry::index::rstar

R*-树创建算法参数

9.2.4 boost::geometry::index::dynamic_linear

线性r树创建算法参数-运行时版本

9.2.5 boost::geometry::index::dynamic_quadratic

二次r树创建算法参数-运行时版本

9.2.6 boost::geometry::index::dynamic_rstar

R*-树创建算法参数-运行时版本

9.3 Observers (boost::geometry::index)

9.3.1 boost::geometry::index::indexable

从值中提取可索引的函数对象,这个是override转换

9.3.2 boost::geometry::index::equal_to

函数对象比较值,这个是override转换

9.4 inserter(Container &)

插入迭代器生成器,这个是override转换

9.5 queried(Predicates const &)

查询索引适配器生成器

9.6 Predicates (boost::geometry::index) 下面的这些都是与前文同名函数相同的意思,只是是适用于RTree的函数

contains(Geometry const &)
covered_by(Geometry const &)
covers(Geometry const &)
disjoint(Geometry const &)
intersects(Geometry const &)
overlaps(Geometry const &)
within(Geometry const &)
satisfies(UnaryPredicate const &)
nearest(Geometry const &, unsigned)

10. Geometry策略方式

10.1 strategy::area::cartesian

笛卡尔面积计算

10.2 strategy::area::spherical

球面面积计算

10.3 strategy::area::geographic

地理区域计算

10.4 strategy::buffer::join_round

让缓冲区创建圆角
在这里插入图片描述

10.5 strategy::buffer::join_miter

让缓冲区创建锐角
在这里插入图片描述

10.6 strategy::buffer::end_round

让缓冲区创建圆角端点
在这里插入图片描述

10.7 strategy::buffer::end_flat

让缓冲区创建平端
在这里插入图片描述

10.8 strategy::buffer::distance_symmetric

让缓冲区算法创建具有相同距离的缓冲区
在这里插入图片描述

11.9 strategy::buffer::distance_asymmetric

让缓冲区是不对称
在这里插入图片描述

11.10 strategy::buffer::point_circle

围绕点创建圆形缓冲区
在这里插入图片描述

11.11 strategy::buffer::point_square

在这里插入图片描述

11.12 strategy::buffer::geographic_point_circle

在地球上的一个点周围创建一个圆形缓冲区

11.13 strategy::buffer::side_straight

让缓冲区沿线段使用直边(默认)

11.14 strategy::centroid::average

质心计算取点的平均值

11.15 strategy::centroid::bashein_detmer

使用Bashein/Detmer算法计算质心

11.16 strategy::convex_hull::graham_andrew

Graham扫描策略计算凸包

11.17 strategy::densify::cartesian

笛卡尔线段的致密化

11.18 strategy::densify::geographic

地理段的致密化,对应了上文的densify方法

11.19 strategy::densify::spherical

球形段的致密化,对应了上文的densify方法

11.20 strategy::distance::pythagoras

计算两点之间距离的策略,对应了上文的distance方法

11.21 strategy::distance::pythagoras_box_box

计算两个盒子之间距离的策略,对应了上文的distance方法

11.22 strategy::distance::pythagoras_point_box

计算点与长方体之间距离的策略,对应了上文的distance方法

11.23 strategy::distance::haversine

使用哈弗斯线计算完美球体上球坐标的距离

11.24 strategy::distance::projected_point

点到线段的距离策略

11.25 strategy::distance::cross_track

用于点到线段距离计算的策略函数

11.26 strategy::distance::cross_track_point_box

用于计算点到框的距离的策略函数

11.27 strategy::line_interpolate::cartesian

在笛卡尔线段上插值点,对应了上文的line_interpolate方法

11.28 strategy::line_interpolate::geographic

插值地理线段上的点,对应了上文的line_interpolate方法

11.29 strategy::line_interpolate::spherical

在球面段上插值点,对应了上文的line_interpolate方法

11.30 strategy::side::side_by_triangle

检查点位于线段的哪一侧:线段左侧(>0),线段右侧(<0),线段上(0)

11.31 strategy::side::side_by_cross_track

检查大圆线段的哪一侧有一个点位于线段左侧(>0),线段右侧(<0),线段(0)

11.32 strategy::side::spherical_side_formula

检查大圆线段的哪一侧有一个点位于线段左侧(>0),线段右侧(<0),线段(0)上

11.33 strategy::side::geographic

检查线段的哪一侧有一个点位于线段左侧(>0)、右侧(<0)和线段(0)上

11.34 strategy::simplify::douglas_peucker

实现简化算法

11.35 strategy::transform::inverse_transformer

在笛卡尔坐标系中进行逆变换的变换策略

11.36 strategy::transform::map_transformer

从一个笛卡尔坐标系映射到另一个笛卡儿坐标系的转换策略

11.37 strategy::transform::rotate_transformer

笛卡尔坐标系中的旋转变换策略

11.38 strategy::transform::scale_transformer

笛卡尔系统中的尺度变换策略

11.39 strategy::transform::translate_transformer

笛卡尔系统中的平移变换策略

11.40 strategy::transform::matrix_transformer

笛卡尔系统中的仿射变换策略

11.41 strategy::within::winding

在使用缠绕规则的检测范围内。根据点的坐标系选择内部使用的边策略。

11.42 strategy::within::franklin

在使用交叉计数的检测范围内

11.43 strategy::within::crossings_multiply

在使用交叉计数的检测范围内

参考链接

https://www.boost.org/doc/libs/1_73_0/libs/geometry/doc/html/geometry/reference.html