SuperMap GIS查询

SuperMap GIS的二次开发是在地图的基础上开发使用一些功能,让人更加方便的使用地图。功能中当然有查询,而查询分类有:1、地图查询 2、数据查询。
地图查询主要针对地图中的数据进行的各类查询:SQL查询、范围查询、距离查询、几何查询。支持的GIS服务:iServer的地图REST服务。使用的查询接口:SuperMap.REST.Query***
数据查询主要针对数据集进行的各类查询:SQL查询、缓存查询、ID查询、几何查询。
查询过程主要分为三步,如图:
SuperMap GIS查询_第1张图片

下面我们来说一下SQL查询,它的主要接口有如图:
SuperMap GIS查询_第2张图片

第一步我们先设置查询参数:

var queryParam, queryBySQLParams, queryBySQLService;             
//FilterParameter 必设 name(查询地图图层名),attributeFilter(SQL 条件语句)也为必设             queryParam = new SuperMap.REST.FilterParameter({      
           name: "BaseMap_R@jingjin",                
 attributeFilter:"Pop_1999>50",     
fields:["SMID","NAME","Pop_1999"]      
       }),           
  //QueryBySQLParameters 参数必设queryParams         
queryBySQLParams=newSuperMap.REST.QueryBySQLParameters({        
         queryParams: [queryParam]        
     });

第二步提交请求:

function query(){
                【其他代码省略】  //设置查询参数
                  //与服务器交互
            queryBySQLService = new SuperMap.REST.QueryBySQLService (url,{
            eventListeners: {"processCompleted": processCompleted,
           "processFailed": processFailed}});
            queryBySQLService.processAsync(queryBySQLParams);

第三步获取结果并呈现:

// 获取feature将其显示在featureLayer上。
var feature = new SuperMap.Feature.Vector();
  feature = result.recordsets[i].features[k];
  feature.style = style;  vectorLayer.addFeatures([feature]);

SQL查询大概就这样了,剩下的到时候再说吧。(上面的图片来自网络)

你可能感兴趣的:(gis)