SuperMap学习系列(四)—鼠标移动(高亮显示)

2016-7-21 14:54:53 0人评论 313次浏览 分类:技术文章

SuperMap学习系列(四)—鼠标移动(高亮显示)
学习笔记,方便以后查阅。参考超图技术资源中心--代码库:
http://support.supermap.com.cn/ProductCenter/ResourceCenter/CodeLibrary.aspx

[html] view plaincopy在CODE上查看代码片派生到我的代码片

  1. <p><!DOCTYPE html>  
  2. <html xmlns="<a target="_blank" href="http://www.w3.org/1999/xhtml">http://www.w3.org/1999/xhtml</a>">  
  3. <head>  
  4.     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  
  5.     <title></title>   
  6.     <script src="libs/SuperMap.Include.js"></script>  
  7.     <script type="text/javascript">      
  8.         var style = {  
  9.             strokeColor: "#304DBE",  
  10.             strokeOpacity: 0,  
  11.             fillColor: "#00ff00",  
  12.             fillOpacity: 0,  
  13.         };  
  14.         var selectStyle = {  
  15.             fillColor: "#ffcc33",  
  16.             strokeColor: "#ccff99",  
  17.             strokeWidth: 2,  
  18.             graphZIndex: 1  
  19.         };  
  20.         var map, layer, vectorLayer, selectFeature;  
  21.         // 设置访问的GIS服务地址  
  22.         var url = "<a target="_blank" href="http://localhost:8090/iserver/services/map-ChinaTestWorkPlace/rest/maps/ChinaTest">http://localhost:8090/iserver/services/map-ChinaTestWorkPlace/rest/maps/ChinaTest</a>";  
  23.         function GetMap() {  
  24.             // 创建地图对象  
  25.             map = new SuperMap.Map("map");  
  26.             //control = new SuperMap.Control.MousePosition();     //该控件显示鼠标移动时,所在点的地理坐标。  
  27.             //map.addControl(control);  //添加控件  
  28.             // 创建图层对象  
  29.             layer = new SuperMap.Layer.TiledDynamicRESTLayer("World", url, { transparent: true, cacheEnabled: true }, { maxResolution: "auto" });  
  30.             layer.events.on({ "layerInitialized": addLayer });  
  31.             vectorLayer = new SuperMap.Layer.Vector("Vector Layer");</p><p>            selectFeature = new SuperMap.Control.SelectFeature(vectorLayer, {  
  32.                 onSelect: onFeatureSelect,  
  33.                 onUnselect: onUnFeatureSelect,  
  34.                 hover: true  
  35.             });  
  36.             map.addControl(selectFeature);  
  37.             selectFeature.activate();  
  38.         }  
  39.         // 加载图层  
  40.         function addLayer() {  
  41.             // 向Map添加图层  
  42.             map.addLayers([layer, vectorLayer]);  
  43.             map.setCenter(new SuperMap.LonLat(116.409749, 39.912344), 1);            
  44.             QueryBySQL();  
  45.         }  
  46.         //查询函数  
  47.         function QueryBySQL() {  
  48.             var queryParam, queryBySQLParams, queryBySQLService;  
  49.             //SuperMap.REST.FilterParameter 查询过滤条件参数类。 该类用于设置查询数据集的查询过滤参数。   
  50.             queryParam = new SuperMap.REST.FilterParameter({  
  51.                 name: "<a target="_blank" href="mailto:Provinces_R@China400">Provinces_R@China400</a>"   //ChinaTest地图中的图层名称  
  52.             });  
  53.             //SuperMap.REST.QueryBySQLParameters SQL 查询参数类。 该类用于设置 SQL 查询的相关参数。   
  54.             queryBySQLParams = new SuperMap.REST.QueryBySQLParameters({  
  55.                 queryParams: [queryParam]  
  56.             });  
  57.             //SuperMap.REST.QueryBySQLService SQL 查询服务类。 在一个或多个指定的图层上查询符合 SQL 条件的空间地物信息。   
  58.             queryBySQLService = new SuperMap.REST.QueryBySQLService(url, {  
  59.                 eventListeners: { "processCompleted": processCompleted, "processFailed": processFailed }  
  60.             });  
  61.             queryBySQLService.processAsync(queryBySQLParams);  
  62.         }  
  63.         //查询成功  
  64.         function processCompleted(queryEventArgs) {  
  65.             var i, j, feature,  
  66.                     result = queryEventArgs.result;  
  67.             if (result && result.recordsets) {  
  68.                 for (i = 0; i < result.recordsets.length; i++) {  
  69.                     if (result.recordsets[i].features) {  
  70.                         for (j = 0; j < result.recordsets[i].features.length; j++) {  
  71.                             feature = result.recordsets[i].features[j];  
  72.                             feature.style = style;  
  73.                             vectorLayer.addFeatures(feature);  
  74.                         }  
  75.                     }  
  76.                 }  
  77.             }  
  78.         }  
  79.         function processFailed(e) {  
  80.             alert(e.error.errorMsg);  
  81.         }  
  82.         function onUnFeatureSelect(feature) {  
  83.             feature.style = style;  
  84.             vectorLayer.redraw();  
  85.         }  
  86.         function onFeatureSelect(feature) {  
  87.             feature.style = selectStyle;  
  88.             vectorLayer.redraw();  
  89.         }         
  90.     </script>  
  91. </head>  
  92. <body onload="GetMap()">      
  93.     <div id="map" style="height: 640px; width: 720px; border: 1px solid red; margin-left: auto; margin-right: auto;"></div>  
  94. </body>  
  95. </html>  
  96. </p>  

效果图如下:

附件下载

相关资讯

  • 宁夏省谷歌高清卫星地图下载(百度网盘离线包下载)

    一、概述  宁夏,全称宁夏回族自治区,简称“宁”。首府银川市,成立于1958年10月25日 [1] ,是中国五大少数民族自治区之一。  宁夏回族自治区得黄河水灌溉而形成了悠久的黄河文明。 早在三万年前,宁夏就已有了人类生息的痕迹。公元1038年,党项族的首领李元昊在此建立…

    2018-8-10 16:41:59
  • 辽宁省谷歌高清卫星地图下载(百度网盘离线包下载)

    一、概述辽宁,中华人民共和国省级行政区,简称“辽”,辽宁省南临黄海、渤海,东与朝鲜一江之隔,与日本、韩国隔海相望,是东北地区唯一的既沿海又沿边、中国最北端的沿海省份,也是东北地区及内蒙古自治区东部地区对外开放的门户。辽宁省是中国重要的重工业基地、教育强省、…

    2018-7-25 17:18:09
  • 江西省谷歌高清卫星地图下载(百度网盘离线包下载)

    一、概述  江西,中国省级行政区,简称“赣”(gn),又称江右、别称赣鄱大地,省会是南昌。因公元733年唐玄宗设江南西道而得省名,又因古为干越之地和省内最大河流为赣江而简称赣。  夏商时期,江西境内有邗越(干越)、百濮,《荀子劝学篇》注:“邗越古国名”。已进入青…

    2018-7-24 16:25:25
  • 江苏省谷歌高清卫星地图下载(百度网盘离线包下载)

    一、概述江苏,简称“苏”,是中国省级行政区,省会南京,以“江宁府”与“苏州府”之首字得名。地处长江经济带,位于中国大陆东部沿海中心、长江下游,东濒黄海,东南与浙江和上海毗邻,西接安徽,北接山东,地跨长江、淮河,京杭大运河从中穿过。江苏是中国古代文明、远古人…

    2018-7-3 16:16:17

共有访客发表了评论 网友评论

验证码: 看不清楚?
    我们的客户
    卫星地图下载