当前位置: X-MOL 学术Comput. Geom. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Implementing straight skeletons with exact arithmetic: Challenges and experiences
Computational Geometry ( IF 0.6 ) Pub Date : 2021-02-25 , DOI: 10.1016/j.comgeo.2021.101760
Günther Eder , Martin Held , Peter Palfrader

We present Cgal implementations of two algorithms for computing straight skeletons in the plane, based on exact arithmetic. One code, named Surfer2, can handle multiplicatively weighted planar straight-line graphs (PSLGs) while our second code, Monos, is specifically targeted at monotone polygons. Both codes are available on GitHub. We discuss algorithmic as well as implementational and engineering details of both codes. Furthermore, we present the results of an extensive performance evaluation in which we compared Surfer2 and Monos to the straight-skeleton package included in Cgal. It is not surprising that our special-purpose code Monos outperforms Cgal's straight-skeleton implementation. But our tests provide ample evidence that also Surfer2 can be expected to be faster and to consume significantly less memory than the Cgal code. And, of course, Surfer2 is more versatile because it can handle multiplicative weights and general PSLGs as input. Thus, Surfer2 currently is the fastest and most general straight-skeleton code available.



中文翻译:

用精确的算法实现笔直的骨骼:挑战和经验

我们基于精确算法,介绍了两种用于计算平面中笔直骨架的算法的Cgal实现。其中一个名为Surfer2的代码可以处理乘法加权平面直线图(PSLG),而我们的第二个代码Monos则专门针对单调多边形。两种代码都可以在GitHub上获得。我们讨论了两种代码的算法以及实现和工程方面的细节。此外,我们提出了广泛的性能评估结果,我们将Surfer2MonosCgal中包含的直骨架包装进行了比较。我们的专用代码Monos胜过所有产品也就不足为奇了Cgal的直截了当的实现。但是我们的测试提供了充分的证据,表明Surfer2也有望比Cgal代码更快并且消耗的内存更少。而且,当然,Surfer2更具通用性,因为它可以处理乘性权重和一般的PSLG作为输入。因此,Surfer2当前是可用的最快,最通用的直链代码。

更新日期:2021-02-26
down
wechat
bug