2009-01-28 32 views
1

我需要编写一些代码来缓冲一条线来创建一个多边形,如下所示。用于缓冲折线以创建多边形的有效算法?

http://www.sli.unimelb.edu.au/gisweb/BuffersModule/Buff_line.htm

从以下列出的步骤,我可以创造周围没有跨越自己或有过紧的曲线线条简单多边形,但随着线我试图缓冲是波浪swhirly飓风轨道,它真的不够好。

我知道SQL Server 2008中有一个函数可以做到这一点,但是我担心这是目前不行的。

任何人都可以指向我可以遵循的更完整算法的方向,或任何可以帮助我理解的背景信息?

回答

3

虽然这在地理信息系统中被称为缓冲,显然从事算法研究的数学家称之为Minkowski sum。谷歌搜索发现this page由算法专家Steven Skiena链接到几个算法实现和一些书籍。希望这可以帮助!

它现在链接到的算法实现之一(09年3月)是CGAL,一个开源的C库。

+0

抱歉,花了这么长时间才接受这个答案。非常有用的链接 – burnside 2010-01-24 23:18:59