arcgis for js学习之Draw类

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>Draw类的详解</title>
<meta charset="utf-8" />
<!-- 绘图功能说明:
draw类可以在地图中点击一点进行画点或者划线
1、点击添加一个点。
2、多个点的绘制双击添加最后一个点。
3、多线段或者多边形点击添加顶点,双击添加最后一点。
4、自由线和自由面开始按住鼠标左键绘制,放手绘完成。
5、划线时点击开始,鼠标左键放开时结束。
-->
<!-- 构造函数:
new Draw(map,options?)
-->
<!-- 常量:
ARROW:画一个箭头
CIRCLE:画一个圆
ODWN_ARROW:指向下方的箭头
ELLIPSE:画一个椭圆
EXTENT:某一程度
FREEHAND_POLYGON:徒手多边形
FREEHAND_POLYLINE;徒手线
LEFT_ARROW:向左的箭头
LINE:一条线
MULTI_POINT:多个点
POINT:点
POLYGON:多边形
POLYLINE;折线
RECTANGLE:矩形
RIGHT-ARROW:一个箭头
TRIANGLE:画一个三角形
UP_ARROW:画一个箭头
-->
<!-- 属性:
1、fillSymbol:多边形的样式
2、lineSymbol:线的样式
3、markerSymbol:点的样式
4、respectDrawingVertexOrder:几个拓扑
-->
<!-- 方法:
activate(geometryType,options):激活工具栏
deactivate():关闭
finishDrawing():完成绘制,onDrawEnd事件
setFillSymbol(fillSymbol):设置填充样式
setLineSymbol(lineSymbol):设置线的样式
setMarkerSymbol(marjerSymbol):设置点的样式
setRespectDrawingVertexOrder(set):设置是否修改多边形的几何拓扑
-->
<!-- 事件:
draw-complete:绘制完成时触发
draw-end:此事件被弃用
-->
<!-- 构造方法详情:
new Draw(map,options?)
options的属性:
drawTime:设定时间绘制下一个点
showTooltips:工具提示
tolerance:宽容,徒手画时决定鼠标移动多远添加一个新点
tooltipPffset:确定多远抵消鼠标指针的工具提示
-->
<script>
//实例一:是否显示showTooltips
require([
"esri/map", "esri/toolbars/draw"
], function (Map, Draw) {
var map = new Map();
var toolbar = new Draw(map, {
showTooltips: false
});
});
//实例二:设置drawTime
require(["esri/map", "esri/toolbars/draw"], function (Map, Draw) {
var map = new Map();
var toolbar = new Draw(map, {
tooltipOffset: 20,
drawTime: 90
});
});
//实例三:激活 active(geometryType,options),进行画点
require(["esti/toolbars/draw"], function (Draw) {
var toolbar = new Draw();
toolbar.active(Draw.POINT); toolbar.finishDraw();//完成绘制
})
//实例四:draw-end事件,返回类型为一个geometry对象
require(["esri/toolbars/draw", "esri/graphic"], function (Draw, Graphic) {
function createToolbar(map) {
var toolbar = new Draw(map);
toolbar.on("draw-end", addToMap);
}
function addToMap(evt) {
var graphic = new Graphic(evt.geometry, symbol);
map.graphics.add(graphic);
}
});
</script>
</head>
<body> </body>
</html>

arcgis for js学习之Draw类的更多相关文章

  1. arcgis for js学习之Graphic类

    arcgis for js学习之Graphic类 <title>Graphic类</title> <meta charset="utf-8" /> ...

  2. js学习(五)-全局函数和类内部函数区别

    //---------------------------js代码--------------------------- function User(){       //类成员的定义及构造函数 th ...

  3. Arcgis for Js之加载wms服务

    概述:本节讲述Arcgis for Js加载ArcgisServer和GeoServer发布的wms服务. 1.定义resourceInfo var resourceInfo = { extent: ...

  4. js学习之变量、作用域和内存问题

    js学习之变量.作用域和内存问题 标签(空格分隔): javascript 变量 1.基本类型和引用类型: 基本类型值:Undefined, Null, Boolean, Number, String ...

  5. 【Knockout.js 学习体验之旅】(2)花式捆绑

    本文是[Knockout.js 学习体验之旅]系列文章的第2篇,所有demo均基于目前knockout.js的最新版本(3.4.0).小茄才识有限,文中若有不当之处,还望大家指出. 目录: [Knoc ...

  6. 【Knockout.js 学习体验之旅】(1)ko初体验

    前言 什么,你现在还在看knockout.js?这货都已经落后主流一千年了!赶紧去学Angular.React啊,再不赶紧的话,他们也要变out了哦.身旁的90后小伙伴,嘴里还塞着山东的狗不理大蒜包, ...

  7. Backbone.js学习之一

    昨天一个我崇拜的朋友,徐飞送我一本名为<Backbone.js实战>书,让我心中狂喜,于是带着这份浓厚的兴趣,开始研究Backbone.js之路. 打开这本书的第一句话就很有哲理,“授人以 ...

  8. 数据可视化的优秀入门书籍有哪些,D3.js 学习资源汇总

    习·D3.js 学习资源汇总 除了D3.js自身以外,许多可视化工具包都是基于D3开发的,所以对D3的学习就显得很重要了,当然如果已经有了Javascript的经验,学起来也会不费力些. Github ...

  9. 我的three.js学习记录(二)

    通过上一篇文章我的three.js学习记录(一)基本上是入门了three.js,但是这不够3D,这次我希望能把之前做的demo弄出来,然后通过例子来分析操作步骤. 1. 示例 上图是之前做的一个dem ...

随机推荐

  1. vue1.0与vue2.0对于v-for的使用的区别

    vue1.0与vue2.0对于v-for的使用的区别: 1,vue1.0中有$index,而vue2.0将$index移除. 2,vue1.0中(index,item) in list 而vue2.变 ...

  2. 基本类型数据转换(int,char,byte)

    public class DataUtil { public static void main(String[] args) { int a = 8; int value = charToInt(by ...

  3. Animator 动画第一次播放正常,之后播放都不正常的问题解决

    Animator 动画第一次播放正常,之后播放都不正常的问题解决 问题描述 第一次点击图片动画播放正常,在点击文字之后,图片没有显示出来,点击空白,播放动画,显示文字. 写了一个卡片翻转的动画,代码如 ...

  4. [Swift]LeetCode48. 旋转图像 | Rotate Image

    You are given an n x n 2D matrix representing an image. Rotate the image by 90 degrees (clockwise). ...

  5. [Swift]LeetCode80. 删除排序数组中的重复项 II | Remove Duplicates from Sorted Array II

    Given a sorted array nums, remove the duplicates in-place such that duplicates appeared at most twic ...

  6. [Swift]LeetCode799. 香槟塔 | Champagne Tower

    We stack glasses in a pyramid, where the first row has 1 glass, the second row has 2 glasses, and so ...

  7. [Swift]LeetCode938. 二叉搜索树的范围和 | Range Sum of BST

    Given the root node of a binary search tree, return the sum of values of all nodes with value betwee ...

  8. [Swift]LeetCode964. 表示数字的最少运算符 | Least Operators to Express Number

    Given a single positive integer x, we will write an expression of the form x (op1) x (op2) x (op3) x ...

  9. PHP算法之二分查找

    二分查找: 数组必须有序,且不重复. 一般实际工作中,很少有这样的数组,所以应用的很少,但是思想很好. 1 // 二分查找 2 $array = [10,14,23,33,45,56,65,77,89 ...

  10. java线程阻塞唤醒的四种方式

    java在多线程情况下,经常会使用到线程的阻塞与唤醒,这里就为大家简单介绍一下以下几种阻塞/唤醒方式与区别,不做详细的介绍与代码分析 suspend与resume Java废弃 suspend() 去 ...