首页 / 浏览问题 / / 问题详情
几何查询点查询面再进行面积量算不成功
何生  (17分)  才疏学浅
8月30日, 2019
使用产品:iclient 10i for leaflet 操作系统:win10 x64
数据类型: 文件型
问题详细描述:查询到的结果feature为multipolygon类型,无法进行面积量算
问题重现步骤:

1.getFeaturesByGeometry 获得要素几何

2. 要素几何作参初始化量算参数对象

3.调用量算服务传参计算面积

如题,每次查询到的结果feature几乎都是multipolygon类型,请问这种类型要怎么转换才能用在SuperMap.MeasureParameters()

从而实现点选要素查询要素面积?

1个回答

返回的multipolygon有多个components,每个components代表一个polygon对象,可以将每个polygon对象示例化再计算分别的面积求和
于浩  (5,668分)  登峰造极
8月30日, 2019
发现量测方法无论是写在获取要素方法之内还是外面的同个函数内,在外部函数执行结束之前量测方法都无法获取到有效的获取要素结果,这似乎是表示两种服务的执行是异步的,有什么方法能解决呢
目前我只能以单击进行获取要素,再双击调用测量服务,有什么办法可以二合一呢?
PS:

目前采用的是在获取要素服务调用getFeaturesByGeometry获得serviceResult.result.features

然后 L.geoJSON(serviceResult.result.features)获得当前要素的形状geometry作为面积量测服务的几何参数
这个就是产品的判断机制,如果想修改的话只能自己对measure方法进行重写,不然理论上只能这样实现
...