情形一:如果是通过点击得到的geometry或者是通过arcgis api查询地图服务获取的features,可以直接new Graphic(geometry,symbol),添加在graphiclayer,显示在地图上。
情形二:如果是手动拼接的坐标串,则需要首先new Polyline(jsonData) 【点和面一样,点:new Point(jsonData),面new Polygon(jsonData)】,然后再new Graphic(polyLine,lineSymbol),不可以直接new Graphic(geometry,lineSymbol)
require([
"esri/symbols/SimpleLineSymbol",
"esri/geometry/Polyline",
"esri/graphic",
"esri/layers/GraphicsLayer"
],
function (SimpleLineSymbol,Polyline,Graphic,GraphicsLayer) {
var lineSymbol=new SimpleLineSymbol(SimpleLineSymbol.STYLE_SOLID, new Color([255, 0, 0]), 3);
var polyLine = new Polyline(jsonData);
//jsonData的数据结构参见https://developers.arcgis.com/javascript/3/jsapi/polyline-amd.html#polyline2
//定义图形
// var graphic=new Graphic(geometry,lineSymbol);//情形一
var graphic=new Graphic(polyLine,lineSymbol);//情形二
var graphicsLayer = new GraphicsLayer();
//将图形添加到图层中
graphicsLayer.add(graphic);
map.addLayer(graphicsLayer);
})
本文详细介绍如何使用ArcGIS API在地图上绘制不同类型的几何图形,包括通过点击获取的geometry、查询地图服务获取的features以及手动拼接的坐标串。文章提供具体代码示例,展示如何创建线、点和面的几何对象,并将其转换为图形添加到地图图层中。
2882

被折叠的 条评论
为什么被折叠?



