ArcGIS实现打点弹窗
来源:互联网 发布:splice js循环 编辑:程序博客网 时间:2024/04/29 16:01
引用的资源:
<link rel="stylesheet" type="text/css"href="app/templates/manage/arcgis319/dijit/themes/tundra/tundra.css" /><link rel="stylesheet" type="text/css"href="app/templates/manage/arcgis319/esri/css/esri.css" /><script type="text/javascript"src="app/templates/manage/arcgis319/init.js"></script>初始化地图:
var map,g;require(["esri/layers/ArcGISTiledMapServiceLayer","esri/layers/ArcGISDynamicMapServiceLayer","esri/symbols/SimpleMarkerSymbol","esri/map","dojo/on","esri/graphic","esri/geometry/Point","dojo/domReady!"], function(ArcGISTiledMapServiceLayer,ArcGISDynamicMapServiceLayer,SimpleMarkerSymbol, Map, on,Graphic,Point) {var longitude =114.29055;var latitude =36.1822;$.ajax({url:"${basePath}city/getCityCoordinateByUserName",dataType:"json",success:function(result){longitude = result.city.longitude;latitude = result.city.latitude;},error:function(data){keyflag=false;$.messager.alert("提示", "加载地图失败", "info",function(){keyflag=true;});}}) map = new Map("map",{ //basemap: "osm", center: [longitude, latitude], zoom: 10, logo:false });});具体例子:根据查询条件筛选符合条件的点并显示在地图上:
//查询按钮功能function queryFuc() {map.graphics.clear();if(clusterLayer!=undefined){map.removeLayer(clusterLayer);}$.ajax({url:'gis/tt',data:{month:$('#search_date').val(),city:$('#cityName').combobox('getValue')},success : function(data) {var obj= $.parseJSON(data);if(obj.length<1){alert("当前条件下未查询到数据");return false;} require([ "esri/layers/ArcGISTiledMapServiceLayer", "esri/layers/ArcGISDynamicMapServiceLayer", "esri/symbols/PictureMarkerSymbol", "esri/map", "dojo/on", "esri/graphic", "esri/geometry/Point", "esri/Color", "esri/InfoTemplate" ], function (ArcGISTiledMapServiceLayer,ArcGISDynamicMapServiceLayer,PictureMarkerSymbol, Map, on,Graphic,Point,Color,InfoTemplate){ var resultUnionExtent; var multipoint = new esri.geometry.Multipoint(); $.each(obj,function(i, item) { g=new Graphic(); simpleMarkerSymbol = new PictureMarkerSymbol({ "url":"${basePath}app/templates/manage/arcgis319/img/marker.png", "height":15, "width":20, "type":"esriPMS", "angle": 0, }); var point=new Point([item.LONGITUDE, item.LATITUDE]); multipoint.addPoint(point); g.setGeometry(point); g.setSymbol(simpleMarkerSymbol); /* g.setInfoTemplate(infoTemplate); */ map.graphics.add(g);});
//根据当前所有点的范围来动态缩放地图显示比例 if(multipoint.points.length > 0){ if(resultUnionExtent == null){ resultUnionExtent = multipoint.getExtent(); }else{ resultUnionExtent = resultUnionExtent.union(multipoint.getExtent()); } } map.setExtent(resultUnionExtent.expand(1.2)); }); }});}
给一个infoTemplate的参考:
var contentHTML = "<div style='font-size:0.3em; opacity: 0.8; overflow-y:hidden;'>";contentHTML += "<div>" + "资源名称:"+ rainObj[0]["resName"] + "<br>类型: "+rainObj[0]["resKind"]+ "<br> 所属局站:"+ rainObj[0]["baseStation"]+ "<br> 具体地址:" + rainObj[0]["address"]+ "<br> 站点纬度:" + rainObj[0]["latitude"]+ " 站点经度:"+ rainObj[0]["longitude"]+ "</div></div>"; var json = {content : contentHTML}; var infoTemplate = new InfoTemplate(json);
阅读全文
0 0
- ArcGIS实现打点弹窗
- 实现一个打点计时器
- rtk打点,导入arcgis并进行格式变换
- windows API 实现精确的打点计时器
- PHP+Mysql实现百度地图API打点
- 第一节课续: 实现打点功能
- 打点生活
- 打点画线
- 打点画线
- 动态打点
- ARCGIS 点抽稀的实现
- soa 旅程 (打点行装)
- oracle 打点报告
- C打点算法
- pictruebox上画线,打点
- 向控制台打点什么
- Qt Qwt打点画图
- 百度地图打点
- java配合前端实现跨域
- SpringMVC之Web-统一异常处理(七)
- 为什么说员工下班之后关闭电脑是不合格的现代企业?
- 矩阵乘法次数优化
- iOS 收到推送后,播放声音
- ArcGIS实现打点弹窗
- OpenWrt驱动开发的一个小坑 kmod: missing module (null) 问题解决
- 赋值语句的运用
- 如何解决U盘拷贝时提示文件过大问题
- 朋友遇到一个面试题 转换人民币
- hutool工具类
- 背包问题
- Python培训(2)
- 蓝桥杯-------基础训练--特殊回文数,特殊的数字,回文数(JAVAdaima)