能不能在地图上涂个鸦?我们先看下面这张图:
在上面这张图其实是用点、线和多边形几个图形来绘制出来。在地图上绘制点、线和多边形是基本的功能需求,对于开发者来说,经常会用到,譬如在地图上打点标注、绘制行进的线路、标绘安保区域等等,当然你也可以向我这样很二的来个素描。
言归正卷,要绘制简单的几何图形,就得有工具。目前API里提供了两个工具,一个是简单的,一个是高级的。
- 简单的用SketchViewModel。SketchViewModel简化了将临时几何图形添加到MapView的过程,它节省了大量编写不同几何类型的代码的工作量。要使用SketchViewModel,只需要配置对应的GraphicsLayer,以及点、线、多边形的符号。
- 复杂的用Draw。Draw接口提供针对节点进行编辑的高级功能,特别适合在线的要素编辑,对于传统的地信行业用户来说是一个福音。具体的Draw使用后续再专门讲解。
完整的代码如下:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no" />
<title>二维地图开发-素描点、线与多边形</title>
<link rel="stylesheet" href="http://192.168.1.144/4.6/esri/css/main.css" />
<style>
html,
body,
#mapViewDiv {
margin: 0;
padding: 0;
width: 100%;
height: 100%;
color:#8E980F;
}
#sketchToolsDiv {
background: #fff;
position: absolute;
top: 15px;
right: 15px;
padding: 10px;
}
.action-button {
font-size: 16px;
background-color: transparent;