2D Geometry库:LGPL替代CGAL?

时间:2012-02-19 12:40:55

标签: c++ geometry computational-geometry lgpl

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

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

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

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

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

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

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

4 个答案:

答案 0 :(得分:16)

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

图书馆的费用并不清楚。 Check

答案 1 :(得分:14)

看看Geometric Tools for Computer Graphics

  • 精制十多年
  • 令人难以置信的良好文档,无论是硬书还是广泛的PDF格式
  • 提升执照

它符合您的所有要求:

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

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

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

答案 2 :(得分:4)

你看过Boost.Geometry图书馆吗?在功能方面它远不及CGAL,但它可能对你有帮助。

答案 3 :(得分:0)

你可以试试GeoLib www.geolib.co.uk。功能不是很多,但确实提供了布尔操作,并且非常易于使用。