文章目录
-
- 1.Boost.Geometry
-
- 1.1.model::point-坐标点定义
- 1.2.model::d2::point_xy-笛卡尔坐标点定义
- 1.3.model::linestring-点的集合
- 1.4.model::ring-环,不自交的多段线或者多边形
- 1.5.model::segment-两个点组成的线段
- 1.6.model::polygon-一个外环和零个或多个内环
- 1.7.model::multi_point-点集合
- 1.8.model::multi_linestring-多个点集合
- 1.9.model::multi_polygon-多个多边形集合
- 1.10.model::box-由最大值和最小值组成的框
- 1.11.model::referring_segment
- 2.Clipper2
-
- 2.1.裁剪闭合路径
- 2.2.剪切开放路径
- 2.3.将用户定义的数据添加到剪切路径
- 2.4.多边形偏移
- 2.5.数据类型
- 2.6.函数接口
-
- 2.6.1.Area-面积计算
- 2.6.2.BooleanOp-布尔运算
- 2.6.3.Difference-布尔运算
- 2.6.4.InflatePaths-路径偏移
- 2.6.5.Intersect-路径相交
- 2.6.6.IsPositive-判断路径方向
- 2.6.7.MakePath-路径创建
- 2.6.8.MinkowskiDiff-闵可夫斯基差
- 2.6.9.MinkowskiSum-闵可夫斯基和
- 2.6.10.PointInPolygon-点和多边形关系
- 2.6.11.PolyTreeToPaths64-多边形树转多边形数组
- 2.6.12.PolyTreeToPathsD-多边形树转多边形数组
- 2.6.13.RamerDouglasPeucker-多边形偏移数据清理
- 2.6.14.RectClip-矩形裁剪
- 2.6.15.RectClipLines-矩形裁剪
- 2.6.16.ReversePath-路径转向
- 2.6.17.TranslatePath-路径平移
- 2.6.18.TrimCollinear-删除共边
- 2.6.19.Union-联合操作
- 2.6.20.Xor-异或(非共同)操作
- 2.7.范例代码
- 3.总结
1.Boost.Geometry
常用几何对象介绍。基本点类,具有中性方式定义的坐标。定义一个中立点类,实现点概念。库用户可以使用这个点类,或者使用他们自己的点类。这个点类在Boost的大多数示例和测试中使用。这个点类偶尔会在库中使用,这里需要一个临时的点类。
1.1.model::point-坐标点定义
#include <iostream>
#include <boost/geometry.hpp>
namespace bg =