2D Geometry库:LGPL替代CGAL?

Zoo*_*tor 36 c++ geometry lgpl computational-geometry

CGAL似乎只为我即将开展的项目做了我需要的一切.它可以从弧线段创建多边形并对它们运行布尔运算.它已经有空间排序软件包,可以节省很多时间用于一些事情,整个图书馆似乎非常标准化和精心策划.

对于大多数软件包(非常基本的软件包除外),许可证只是QPL(即将推出的4.0版本的GPL)的问题.我的预算微薄,可能无法收集资金购买CGAL中需要它的特定包装的商业许可证.

我对这种图书馆的具体需求是:

  • 精确的2D欧几里德空间
  • 复杂的多边形
  • 多边形能够具有曲线(弧)段
  • 对这些多边形的布尔运算
  • 多边形偏移
  • 多边形分区或有效三角测量
  • 刻有面积和多边形拟合算法
  • 可能是一些具有圆形范围搜索的空间排序结构

总而言之,我正在寻找一个精确的精确的二维几何C++库. 最好是麻省理工学院,LGPL一次性或低成本的一次性免版税许可证低于500美元.

Boost得到了一些基本结构,但据我所知,他们缺乏很多更高级别的功能.任何已扩展的图书馆?我会考虑自己做,但我缺乏做得好的专业知识,它会延长我的项目相当多.

为了清楚起见,我不是在寻找2D 图形库,只是纯粹的几何结构.

Ram*_*Ram 17

看看Wykobi.它是一个模板化的库,您可以将尺寸模板化为2D.

图书馆的费用在网站上并不清楚.校验


Jef*_*ler 15

看看计算机图形学的几何工具.

  • 精炼十多年
  • 令人难以置信的良好文档,无论是硬边界还是广泛的PDF格式
  • 提升许可证

它符合您的所有要求:

  • 精确的2D欧几里德空间:是的
  • 复杂多边形:是的
  • 能够有曲线(弧)段的多边形:无意义.根据定义,多边形由线段组成.如果您正在寻找样条曲线和NURBS,那么库就有它们.
  • 对这些多边形的布尔运算:是的
  • 多边形抵消:不清楚你的意思.图书馆当然支持翻译.
  • 多边形分割或有效三角测量:是的,Delaunay三角剖分和Voronoi区域
  • 铭刻区域和多边形拟合算法:是的
  • 可能是一些具有圆形范围搜索的空间排序结构:是,空间排序和整个交叉函数.

所有这些都来自Schneider和Eberly的" 计算机图形学工具 "一书.这本书非常出色,清楚地介绍了算法的工作原理以及它们的局限性.作者已根据Boost许可证在线提供该代码,并将每本代码模块附带的大部分(全部?)书籍作为PDF包含在内.他们维护着一个非常有用的网站,并以各种方式编制索引.

我与作者没有关系,也没有任何金钱利益.我在他的论文中使用了他们的书,它非常高兴它作为一个易于使用的参考和一个强大的库.