2

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

我想从 lat & lon 到一个国家和州(或同等国家)。

因此,为了简化数据,我将其分组并合并几何;到目前为止,一切都很好。结果很好,我可以撤回比利时,这很好。

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

现在,老实说,我并不太关心细节的水平。如果线条与它们应该在的位置相距 1 公里,我没问题(只要形状更大,而不是更小)

降低地理空间对象复杂性的最佳方法是什么,以便我最终获得快速而简单的世界视图?

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

4

2 回答 2

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();

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

于 2012-12-01T04:21:14.487 回答
1

我认为复杂性仅由形状中的顶点数决定。有很多形状简化算法可供选择(也许还有一些来源)。

作为一种简单的方法,如果结果不会引起太大的误差(例如,就增加的面积而言),您可以迭代顶点并拒绝凹面的顶点,最好将较小的段相邻到较大的段中。更复杂的方法可能会破坏现有的细分以更好地删除较小的细分。

于 2012-11-30T06:42:30.223 回答