arcgis api for js入门开发系列十一 量算工具模块(含源代码)

本文介绍了如何使用arcgis API for JS不依赖Geometry服务,自定义实现地图的量算工具功能,包括距离和面积的计算。通过创建独立的JS文件和DCIMeature类,详细阐述了量算工具的核心算法,并提供了实现效果的截图。
摘要由CSDN通过智能技术生成

众所周知,使用arcgis api for js实现地图的量算工具功能,无非是调用arcgisserver的Geometry服务(http://localhost:6080/arcgis/rest/services/Utilities/Geometry/GeometryServer)提供的Areas and Lengths以及Lengths,如图:

但是我这里提供另一种实现的思路,就是自己写算法来实现距离以及面积的量算,这样的好处是不依赖arcgisserver几何服务,有些项目不排除有些奇特的客户不用Geometry服务的,最终的实现效果图如下:

具体实现思路:创建一个独立的js文件,里面有量算工具类DCIMeature,DCIMeature类构造函数传入地图对象map

复制代码

construct: function (map) {  
    this._dciMap = map;  
    this._onClickHandler = dojo.hitch(this, this._onClickHandler);  
    this._onMouseMoveHandler = dojo.hitch(this, this._onMouseMoveHandler);  
    this._onDrawEndHandler = dojo.hitch(this, this._onDrawEndHandler);  
    this._onExtentChangeHandler = dojo.hitch(this, this._onExtentChangeHandler);  
    this._onGraphicClearHandler = dojo.hitch(this, this._onGraphicClearHandler);  
    this._graphicsLayer = new esri.layers.GraphicsLayer({ id: "DciMeatureGLyr" });  
}

复制代码

核心算法测距:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值