什么是降低几何复杂性的最佳方法

时间:2012-11-30 06:02:11

标签: tsql geometry geography

所以我正在玩http://www.gadm.org/数据集;

我想从lat&离开一个国家和州(或等同物)。

因此,为了简化数据,我将其分组并将几何结合起来;到现在为止还挺好。结果很棒,我可以撤回比利时,这很好。

我撤回澳大利亚,我得到了维多利亚,因为这件事太大了。

现在我真的不太关心细节的程度;如果线条在1公里的范围内它们应该是我可以的(只要形状更大,而不是更小)

降低地理空间物体复杂性的最佳方法是什么,以便最终快速简单地了解世界?

所有数据都保存为几何数据。

2 个答案:

答案 0 :(得分:7)

正如您使用“tsql”标记了问题,我假设您正在使用Sql Server。因此,您已经拥有一个名为Reduce的便捷函数,您可以将其应用于几何数据类型以简化它。

例如(从上面的链接复制):

DECLARE @g geometry;
SET @g = geometry::STGeomFromText('LINESTRING(0 0, 0 1, 1 0, 2 1, 3 0, 4 1)', 0);
SELECT @g.Reduce(.75).ToString();

该函数接收带有简化阈值的容差参数。

答案 1 :(得分:1)

我认为复杂性仅由形状中的顶点数决定。有很多shape simplifying algorithms可供选择(也可能是某些来源)。

作为一种简单的方法,如果结果不会导致错误太大(例如,就增加的区域而言),则可以迭代顶点并拒绝凹点,优选地将较小的段连接成较大的段。更复杂的方法可能会破坏现有的细分,以便更好地删除较小的细分。