简化相邻多边形,是简化算法对多个对象的操作。如果只是简单的迭代调用算法,效果如下图3,
需求效果应该是图2
图1.待简化图层
图2. 需求效果
图3. 无拓扑效果
http://trac.osgeo.org/postgis/wiki/UsersWikiSimplifyPreserveTopology
http://gis.stackexchange.com/questions/178/simplifying-adjacent-polygons
解决方案:
1.将多边形抽取成线,除去重复边,构造只有一条线的linework或者叫coverage,对其进行简化。
2.将这些线构造多边形,可以使用jts的polygonize方法
属性传递:
实现原始多边形和简化多边形属性的传递,两种方法:
1.标记一个点,以原始多边形中的department code作为该点,应该是centroid之类的点,
简化后,根据判断点是否在简化多边形内传递属性。有错误,对凹多边形,点不在内部
2.根据前后多边形面积的重叠率,如大于0.5的传递属性