function drawGraphic(geometry){
map.graphics.clear();//清除图层
require([
"esri/graphic","esri/symbols/SimpleLineSymbol","esri/symbols/SimpleFillSymbol","dojo/colors",
"esri/toolbars/draw","esri/symbols/SimpleMarkerSymbol","esri/layers/ArcGISTiledMapServiceLayer"
],function (Graphic,SimpleLineSymbol,SimpleFillSymbol,Color,Draw,SimpleMarkerSymbol,ArcGISTiledMapServiceLayer) {
//var map = new Map("mapDiv"); mapDiv:Container id for the referencing map,存放地图的容器
//创建客户端图层
//var graphicsLayer=new GraphicsLayer();
//将客户端图层添加到地图中
//map.addLayer(graphicsLayer);
var map = new Map("mright");//<div id="mright"></div>
var myTiledMapServiceLayer = new esri.layers.ArcGISTiledMapServiceLayer(TiledUrl);
map.addLayer(myTiledMapServiceLayer);
//根据geometry生成图形graphic
//定义线符号
var lineSymbol=new SimpleLineSymbol(SimpleLineSymbol.STYLE_DASH, new Color([255, 0, 0]), 3);
//定义点符号
var pSymbol=new SimpleMarkerSymbol(SimpleMarkerSymbol.STYLE_CIRCLE,10, lineSymbol, new Color([255, 0, 0]));
//定义面符号
var fill=SimpleFillSymbol(SimpleFillSymbol.STYLE_SOLID, lineSymbol, new Color([255, 0, 0]));
//定义图形
var graphic;
var type = geometry.type;
switch(type){
case "point":
graphic=new Graphic(geometry,pSymbol);
break;
case "polyline":
graphic=new Graphic(geometry,lineSymbol);
break;
case "polygon":
graphic=new Graphic(geometry,fill);
break;
}
//将图形添加到图层中
map.graphics.add(graphic);
})
}
arcgis api js之在地图上绘制点线面
猜你喜欢
转载自blog.csdn.net/wangchaohpu/article/details/81777163
今日推荐
周排行