首页 / 浏览问题 / 组件GIS / 问题详情
相交查询结果集,数据自动合并?
22EXP 2019年02月28日
OverlayAnalyst.intersect(queryResultDatasetVector, unionTargetGeometries, resultDatasetIntersect, overlayAnalystParamIntersect);

通过一个面去查询多个 地块面的数据,求重叠部分的坐标,但是发现这个方法的结果集把重叠部分的数据合并了。是什么原因?

1个回答

您好,您没有设置保留字段信息吧,您可以通过设置最后一个参数的保留字段来实现求重叠部分的坐标
2,432EXP 2019年02月28日

查询能查询得到。但是里面的数据自己合并掉了

结果数据

我的意思是你可以设置保留字段信息,比如只保留第一个数据集的,这样出来的数据就不会重叠了

    OverlayAnalystParameter overlayAnalystParamIntersect = new OverlayAnalystParameter();
            //overlayAnalystParamIntersect.setOperationRetainedFields(fieldary);
            overlayAnalystParamIntersect.setSourceRetainedFields(fieldary);
            overlayAnalystParamIntersect.setTolerance(0.0000011074);
            
            OverlayAnalyst.intersect(queryResultDatasetVector, unionTargetGeometries, resultDatasetIntersect, overlayAnalystParamIntersect);

数据没有重叠,是分析出来的数据集,把之前的一些数据合并了,看图,蓝色图被分析的对象,深粉色的分析之后的数据,按道理得到的结果应该是 这样的一个结果,但是分析结果把中间的几个面合并了


            

您好,您的数据方便给我吗,要不我这边测试一下

https://pan.baidu.com/s/1ewZkFW3Sem0KfPgayd1dOA

和这个http://qa.supermap.com/44478 这个问题是一份数据,这个问题是空间查询的数据丢失了数据,  但是

OverlayAnalyst.intersect(queryResultDatasetVector, unionTargetGeometries, resultDatasetIntersect, overlayAnalystParamIntersect); 拿这个接口去相交叠加分析    相交分析的结果又这个丢失的数据。

您好  我这边测试是可以的哦 ,您看看是不是您的第二个参数几何对象的问题

这个是是我自己做的一个测试的代码,看下哪里的问题。或者您能提供一下你测试的代码吗
  

以下是我的代码,我没有设置overlayanalystparameter的参数,采取的默认值,几何图形是我从数据集中取的,  

谢谢你,可以了。 我现在测试的这个demo 我是从其他地方拿过来的。这个分析参数设置叠加分析的容限值。 但是我之前也把这个值设置为0过,但是还是不行, 不过现在可以了非常感谢
...