【问题原因】数据存在拓扑错误,需要使用拓扑构面。
【解决办法】使用TopologyProcessing.buildRegions方法构建面对象,在拓扑规则中设置以下规则:
TopologyProcessingOptions topologyProcessingOptions = new TopologyProcessingOptions();
topologyProcessingOptions.setAdjacentEndpointsMerged(true);
topologyProcessingOptions.setDuplicatedLinesCleaned(true);
topologyProcessingOptions.setLinesIntersected(true);topologyProcessingOptions.setOvershootsCleaned(true);
topologyProcessingOptions.setPseudoNodesCleaned(true);
topologyProcessingOptions.setRedundantVerticesCleaned(true);
topologyProcessingOptions.setUndershootsExtended(true);
topologyProcessingOptions.setFilterMode(ArcAndVertexFilterMode.NONE);