我有一堆重叠的多边形,并且我试图对空间进行分区以避免重叠的多边形。我认为我的问题很简单。我的同事使用一些ESRI产品和http://arcscripts.esri.com/details.asp?dbid=16700进行了48秒钟的计算。
我正在尝试使用http://s3.opengeo.org/postgis-power.pdf#page=24(使用http://trac.osgeo.org/postgis/wiki/UsersWikiSimplifyPreserveTopology来猜测详细信息)作为灵感),但它是如此之慢,以至于我无法使用10个以上的多边形(我已经分解了800个)。最慢的部分是ST_Union,我尝试了各种方法,但是没有成功的地方,这是当前的状态:
select geom from
(select st_linemerge(st_union(geom)) as geom from
(select st_exteriorring((st_dumprings((st_dump(t.geom)).geom)).geom) as geom from
(SELECT geometry AS geom, id
FROM tt
WHERE campaign_id = 204
ORDER BY id limit 200) t) t2) t3
这已经计算了26分钟(linemerge()实际上不是)。如果st_dump困扰您,则多边形是MultiPolygons。
你有小费吗?线条的st_union()是非常慢的部分。
谢谢,
尼科
PS:这是一些数字:852个多边形,导致14880个多边形,导致21467个线串,总计315513个顶点。