二维几何体库:LGPL替代CGAL



CGAL似乎只做了我需要的一切,并为我即将到来的项目做了更多。它可以创建圆弧线段外的多边形,并对其执行布尔运算。它已经有了空间排序包,这将为我节省很多时间来处理一些事情,整个图书馆似乎相当标准化和规划良好。

只是大多数软件包(除了非常基本的软件包)的许可证是QPL(即将到来的4.0版本的GPL)的问题。我的预算很微薄,可能无法筹集资金来购买CGAL中需要的特定软件包的商业许可证。

我对这样一个图书馆的具体需求是:

  • 精确精度二维欧氏空间
  • 复杂多边形
  • 能够具有曲线(弧)段的多边形
  • 对这些多边形进行布尔运算
  • 多边形偏移
  • 多边形分割或有效三角测量
  • 内接面积和多边形拟合算法
  • 可能是一些具有循环范围搜索的空间排序结构

总而言之,我正在寻找一个精确的圆形2D几何C++库最好是麻省理工学院、LGPL,或者500美元以下的低成本一次性免版税许可证。

Boost降低了一些基本结构,但据我所知,它们缺乏很多更高级别的功能。有图书馆对此进行了扩展吗?我会考虑自己做,但我缺乏做好这件事的专业知识,这会延长我的项目相当长的时间。

需要明确的是,我不是在寻找2D图形库,而是纯几何结构。

看看Wykobi。它是一个模板库,您可以将尺寸标注模板化为二维尺寸标注。

它是根据麻省理工学院的许可证分发的。

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

  • 经过十多年的提炼
  • 难以置信的好文档,无论是硬装订的还是广泛的PDF格式
  • Boost许可证

它满足您的所有要求:

  • 精确精度2D欧氏空间:是
  • 复杂多边形:是
  • 能够具有曲线(弧)段的多边形:不敏感。通过定义,多边形是由线段组成的。如果你是查找样条曲线和NURBS,库中就有它们
  • 对这些多边形的布尔运算:是
  • 多边形偏移:不清楚您的意思。图书馆当然支持翻译
  • 多边形分割或有效三角测量:是,Delaunay三角测量和Voronoi地区
  • 内接面积和多边形拟合算法:是
  • 可能是一些具有循环范围搜索的空间排序结构:是的,空间排序和一大堆交集函数

所有这些都来自Schneider和Eberly的《计算机图形学的几何工具》一书。这本书非常出色,清晰地展示了算法的工作原理及其局限性。作者已经在Boost许可证下在线提供了代码,并将该书的大部分(全部?)以PDF形式在线包含在每个代码模块中。他们维护着一个非常有用的网站,该网站以各种方式进行索引。

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

你看过Boost.Geometry库吗?就功能而言,它与CGAL相去甚远,但它可能会对您有所帮助。

您可以尝试GeoLib www.GeoLib.co.uk。功能没有那么多,但提供布尔运算,而且非常容易使用。

相关内容

  • 没有找到相关文章

最新更新