Arcgis for JS之对象捕捉

页面导航:首页 > 网络编程 > JavaScript > Arcgis for JS之对象捕捉

Arcgis for JS之对象捕捉

来源: 作者: 时间:2016-02-02 09:59 【

在web操作,如绘制或者测量的时候,为了精确,需要捕捉到某一图层的对象,在此,讲解下如何在Arcgis for JS中实现捕捉对象。首先,在地图中添加一个graphiclayer: gLayer = new
在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事件:

 

            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) {

 

 




Tags:

文章评论

最 近 更 新
热 点 排 行
Js与CSS工具
代码转换工具

<