• ArcGIS JavaScript API 添加点


    function ShowStationOnMap(stations) {

         // 清除图中的元素    

      map.graphics.clear();

          // 设置显示中心点及坐标

      var location = new esri.geometry.Point(stations[0].longtitude, stations[0].latitude, map.spatialReference)    

      map.centerAndZoom(location, 8);

          // 逐个添加元素

          for (var s = 0; s < stations.length; s++) {        

           var symbol = new esri.symbol.PictureMarkerSymbol(stations[s].imageUrl, 18, 18);        

           var pt = new esri.geometry.Point(stations[s].longtitude, stations[s].latitude, map.spatialReference)

               // 每个元素的属性值     

           var attr = { "stationName": stations[s].stationName, "sId": stations[s].sId, "countryName": stations[s].countryName, "projectName": stations[s].projectName,                       "buildYear": stations[s].buildYear };   

               // 点击该元素时的信息窗  

           var infoTemplate = new esri.InfoTemplate("${stationName}", "站点编号: ${sId}<br/>所属项目: ${projectName}  <br/>所属区县: ${countryName}

                              <br/>建成年份:${buildYear}<div><a href='javascript:ShowDetailStationPanel(" + stations[s].sId + ")'>查看详情</a> </div>");        

               var graphic = new esri.Graphic(pt, symbol, attr, infoTemplate);        

               map.graphics.add(graphic);    

         }

    }

    当在外部点击一个点时在地图上显示该数据的信息窗 这里用的是 map.infoWindow 和 infoTemplate 有点区别

     var pt = new esri.geometry.Point(data.record.longtitude, data.record.latitude, map.spatialReference)        

     var attr = { "stationName": data.record.stationName, "sId": data.record.sId, "countryName": data.record.countryName, "projectName": data.record.projectName,

                       "buildYear": data.record.buildYear };

     var infoTemplate = new esri.InfoTemplate("${stationName}", "站点编号: ${sId}<br/>所属项目: ${projectName}  <br/>所属区县: ${projectName} <br/>建成年份:

                       ${buildYear}<div><a href='javascript:ShowDetailStationPanel(" + data.record.sId + ")'>查看详情</a> </div>");        

     var symbol = new esri.symbol.PictureMarkerSymbol(data.record.imageUrl, 18, 18);        

     var graphic = new esri.Graphic(pt, symbol, attr, infoTemplate);        

     map.infoWindow.setContent(graphic.getContent()); 

     map.infoWindow.setTitle(data.record.stationName);        

     map.infoWindow.show(pt, map.getInfoWindowAnchor(pt));

  • 相关阅读:
    React.js自学第一天
    优化的34条定律
    JS 打字机效果
    css3 翻书效果
    对象操作
    表单提交验证
    封装cookie组件
    iOS中为网站添加图标到主屏幕
    教你从Win8换回Win7
    关于VB中Print函数在数组中换行的理解
  • 原文地址:https://www.cnblogs.com/oftenlin/p/2672186.html
Copyright © 2020-2023  润新知