(转)Arcgis for JS之对象捕捉
http://blog.csdn.net/gisshixisheng/article/details/44098615
在web操作,如绘制或者测量的时候,为了精确,需要捕捉到某一图层的对象,在此,讲解下如何在Arcgis for JS中实现捕捉对象。
首先,在地图中添加一个graphiclayer:
- gLayer = new GraphicsLayer();
- map.addLayer(gLayer);
接着,在gLayer中添加几个对象:
- map.on("load",function(){
- var items = geometry.item;
- gLayer.add(new Graphic(WktToPoint(items[0].wkt, {"wkid":4326}),sms));
- gLayer.add(new Graphic(WktToPolyline(items[1].wkt, {"wkid":4326}),sls));
- gLayer.add(new Graphic(WktToPolygon(items[2].wkt, {"wkid":4326}),sfs));
- });
接下来,定义drawtoolbar以及绘制完成后的事件:
- var drawToolbar = new esri.toolbars.Draw(map,{tooltip: "place text"});
- drawToolbar.on("draw-end",showDrawResults);
- function showDrawResults(evt){
- drawToolbar.deactivate();
- map.setMapCursor("default");
- var geometry = evt.geometry;
- map.graphics.add(new Graphic(geometry,sls));
- };
接下来,定义一个Button,并添加button的click事件:
- <button id="draw" style="z-index: 99;">绘制图形</button>
- on(dom.byId("draw"), "click", function(){
- drawToolbar.activate(esri.toolbars.Draw.POLYLINE);
- });
接下来定义map的捕捉设置:
- var snapManager = map.enableSnapping({
- snapKey:has("mac") ? keys.META : keys.CTRL
- });
- var layerInfos = [{layer: gLayer}];
- snapManager.setLayerInfos(layerInfos);
备注:
此处,需要调用的dojo包包括:
- require([
- "esri/map",
- "esri/layers/GraphicsLayer",
- "esri/graphic",
- "esri/SnappingManager",
- "esri/sniff",
- "dojo/_base/event",
- "dojo/on",
- "dojo/dom",
- "dojo/keys",
- "dojo/domReady!"],
- function(Map, GraphicsLayer, Graphic, Point, SnappingManager, has,
- event, on,dom, keys) {
转载于:https://www.cnblogs.com/telwanggs/p/6973006.html
(转)Arcgis for JS之对象捕捉相关推荐
- Arcgis for JS之对象捕捉
在web操作,如绘制或者测量的时候,为了精确,需要捕捉到某一图层的对象,在此,讲解下如何在Arcgis for JS中实现捕捉对象. 首先,在地图中添加一个graphiclayer: gLayer = ...
- (转)Arcgis for Js之鼠标经过显示对象名的实现
http://blog.csdn.net/gisshixisheng/article/details/41889345 在浏览地图时,移动鼠标经过某个对象或者POI的时候,能够提示该对象的名称对用户来 ...
- arcgis for js 4.X自定义气泡点击地图对象弹出对话框
题目的意思是,arcgis for js 4.X自定义气泡,点击地图对象弹出对话框,而不是弹出气泡.对话框是vue页面组成的自定义对话框,不是地图页面的对象. 基本思路: 1)气泡模板(PopupTe ...
- Arcgis for JS之Cluster聚类分析的实现
原文:Arcgis for JS之Cluster聚类分析的实现 在做项目的时候,碰见了这样一个问题:给地图上标注点对象,数据是从数据库来 的,包含XY坐标信息的,通过graphic和graphicla ...
- Arcgis for js开发之直线、圆、箭头、多边形、集结地等绘制方法
将ARCGIS for Js API中绘制各种图形的方法进行封装,方便调用.用时只需要传入参数既可.(在js文件中进行封装定义): 1.新建js文件,新建空对象用于函数的定义 if (!this[&q ...
- (转) 基于Arcgis for Js的web GIS数据在线采集简介
http://blog.csdn.net/gisshixisheng/article/details/44310765 在前一篇博文"Arcgis for js之WKT和geometry转换 ...
- (转) Arcgis for js之WKT和GEOMETRY的相互转换
http://blog.csdn.net/gisshixisheng/article/details/44057453 1.wkt简介 WKT(Well-known text)是一种文本标记语言,用于 ...
- (转)Arcgis for JS之Cluster聚类分析的实现
http://blog.csdn.net/gisshixisheng/article/details/40711075 在做项目的时候,碰见了这样一个问题:给地图上标注点对象,数据是从数据库来的,包含 ...
- arcgis api js调用天地图
在arcgis api for js中仅有的basemap有"streets" , "satellite" , "hybrid", &quo ...
最新文章
- 怎么申请 bing api key
- [译]Node v5.0.0 (Stable)
- 3 ie兼容 vue_前端开发:MVVM框架之Vue势必会取代JQuery吗?
- sql服务器默认密码_搭建一个DNS服务器,轻松实现域名解析内容分发,访问速度提高N倍...
- flash物理引擎应用:你的第一个Fisix应用程序
- JD_Source Code for problem 1379
- 【数据结构】堆的手动模拟实现
- Codevs_P1907HDU_P1565 方格取数3(最大流)
- 笔记本启动显示0xc000014c错误--提示缺失win10/system32内部文件
- PAT编程(python) 1004 成绩排名
- 华为南研所校招软件技术岗几点建议
- 看了这篇干货,再也不怕Mac内存不足了!
- Tomcat错误页重定向
- 【Other】希腊诸神大全-中英文名称
- grep,sed,awk练习
- [Python] 反转链表相关技巧
- 华为magicbook电脑看久了眼睛累的问题
- 2020年网络推广方案怎么做?
- 关于联想收购 IBM 的 PC 部门。
- mysql事务及其实现原理--MVCC--二阶段提交