iserver js 怎么通过经纬度查询标地物

0 投票
487 浏览
SuperMap  iserver 示范中都是点线面选择查询和属性查询,可以通过经纬度查询吗?怎么实现?(通过数据集查询方式)
最新提问 7月 11, 2017 分类:  487次浏览 | 用户: xuyushuai (0 分)

1个回答

0 投票

可以使用SQL查询,但是这就要求你的数据集中有经纬度这个字段,然后再SQL查询中对于经纬度字段进行sql查询即可。

具体的可以参考范例,SQL查询(数据集查询)

http://support.supermap.com.cn:8090/iserver/iClient/forJavaScript/examples/examples.html#getFeatureBySQL

最新回答 7月 11, 2017 用户: 郑雅琳 名扬四海 (1,571 分)
范例的sql查询条件是id。那落在这个经纬度上的标地物,查询条件怎么写?
比如说你的经纬度字段为lon和lat,你的sql条件就查询lon,lat字段,具体的条件看你需要怎么查,就怎么写sql语句
没有经纬度的字段,是一个面的标的物,
那你就可以根据你的经纬度,new一个点对象,然后用这个点对象进行几何查询。

范例里面的几何查询是前端绘制一个对象,然后用这个对象查询,你可以直接就用你的经纬度new一个点对象,然后用点对象进行几何查询
这个我懂。但怎么用经纬度的new一个点对象,然后用这个对象查询,具体怎么实现?

new一个点对象,可以参考范例

http://support.supermap.com.cn:8090/iserver/iClient/forJavaScript/examples/examples.html#basicalGeometry

几何查询可以参考范例

http://support.supermap.com.cn:8090/iserver/iClient/forJavaScript/examples/examples.html#getFeatureByGeometry

由于范例是在前端绘制一个对象再查询,只需要将下面那个geometry换成你自己根据经纬度新建的点对象,并且修改spaticalQueryMode为SuperMap.REST.SpatialQueryMode.WITHIN,datasetNames设置为你需要查询的面数据集

...