Boost Polygon library states可以偏移多边形(对称)。但我没有在API中找到任何方法或如何做到这一点的例子。任何人都可以确认Boost几何可以做到吗?我也发现了这个问题:
https://stackoverflow.com/questions/7668331/outline-of-a-polygon-in-boost似乎在问类似的问题。请记住,像Polygon Clipper这样的库可以做得非常好,但我对Boost感兴趣的是它很快并支持浮点数。感谢帮助。
更新:我正在谈论Boost几何和多边形库,因为我不确定哪一个包含或缺少此功能。
使用boost几何,你想要的函数叫做buffer
。来自文档:
缓冲
计算几何的缓冲区。
描述
自由函数缓冲区计算几何体的缓冲区(多边形是距离几何体的指定最大距离内的空间点集集合)。
http://www.boost.org/doc/libs/1_49_0/libs/geometry/doc/html/geometry/reference/algorithms.html
根据boost doc:Boost buffer algorithm这对于一般多边形目前不可用:“当前的实现仅扩大了一个框,OGC没有定义。下一版本的库将包含更完整的实现”
相关函数是resize
及其变体bloat
和shrink
。