1、esri/map

map类是每个地图控件中必须引入的类,我们可以通过Map()对地图进行许多的操作,比如修改地图的坐标系、显示级别和初始显示范围等等。

  Map有一个类型为GraphicsLayer的graphics属性。在没有创建新的GraphicsLayer的情况下我所画的graphic都是放在Map的graphics里面。由于map通常都是一个全局变量,因此我们能够在随时的获取到在Map里面的graphic(例如:map.graphics.graphics[0])。

2、esri/graphic

简单的讲,graphic的作用就是在地图上画东西,可以是通过esri/toolbar/draw类在地图上画图形,也可以获取后台的经纬度来画。要了解的是Graphic = geometry(必须) + symbol(必须) + infoTemplate(可有可无) + attributes(里面放着graphic的属性)。在获取到客户的地图数据之后(获取到经纬度)我们就可以在地图上画出所要显示的样式。

3、esri/layers/GraphicsLayer

  GraphicsLayer意思就是有多个Graphic组成的图层。由于不能给esri/graphic设置事件监听,在需要对graphic进行事件监听的时候我们可以新建一个GraphicsLayer把需要监听的graphic放在里面。

4、esri/layers/ArcGISTiledMapServiceLayer

  用来加载切片地图,无法加载动态地图(即未切片过的地图,加载速度快)。

5、esri/layers/ArcGISDynamicMapServiceLayer

  用来加载动态地图的接口,也可以加载切片地图(缺点:地图加载很慢)。

6、esri/dijit/InfoWindow

  由于监听InfoTemplate的鼠标事件,比如当要实现鼠标移动到某一个graphic时出现对应的一个提示框,这个时候我们就无法用InfoTemplate来实现这个需求,因为InfoTemplate只能是点击graphic的时候才会显示。这个时候我们就可以用上InfoWindow了。

例:

map.infoWindow.setTitle(title);

  map.infoWindow.setContent(content);

  map.infoWindow.show(evt.screenPoint, this.map.getInfoWindowAnchor(evt.screenPoint));

7、esri/tasks/BufferParameters

Buffer就是在地图上建立缓冲区的意思,这个缓冲区其实就是一个geometry。因此,我们经常会把它和Query拿来一起用,我们的空间查询功能便是这个原理,先人为的创建一个缓冲区,然后在这个缓冲区中Query出我们需要得到的图层。这里要注意的是BufferParameters的坐标系要用球面坐标系,不然会报错(例:params.bufferSpatialReference = new SpatialReference({wkid: 102113});)。

8、esri/tasks/RouteTask、esri/tasks/RouteParameters

  RouteTask是载入网络分析服务(路径分析)的一个接口。esri/tasks/RouteParameters是Route是属性接口,这里需要主要的是routeParams.outSpatialReference要等于map的坐标系,不然生成的路线无法在地图上正常显示。

9、esri/tasks/QueryTask、esri/tasks/Query

QueryTask、Query的关系和RouteTask与RouteParaMeters的关系蛮像的。QueryTask需要加载我们需要Query(查询)的图层的url,而Query里面放着各种属性。Query的基本原理就是在一个已知的geometry中查询我们需要查询的图层。

对一些ArcGIS for JS的API的一些理解的更多相关文章

  1. Arcgis for js开发之直线、圆、箭头、多边形、集结地等绘制方法

    p{ text-align:center; } blockquote > p > span{ text-align:center; font-size: 18px; color: #ff0 ...

  2. ArcGIS for JS 离线部署

    本文以arcgis_js_v36_api为例,且安装的是IIS Web服务器 1.下载最新的ArcGIS for JS api 包,可在Esri中国社区或者Esri官网下载 2.下载后解压 3.将解压 ...

  3. Arcgis for Js之加载wms服务

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

  4. lzugis——Arcgis Server for JavaScript API之自己定义InfoWindow

    用过Arcgis Server for JavaScript API肯定知道InfoWIndow.你在用InfoWindow的时候会发现各种问题,比如不能全然显示的问题,遮盖对象的问题等等.所以呢我在 ...

  5. (转) Arcgis for js加载百度地图

    http://blog.csdn.net/gisshixisheng/article/details/44853709 概述: 在前面的文章里提到了Arcgis for js加载天地图,在本节,继续讲 ...

  6. Arcgis for js加载百度地图

    看转:https://blog.csdn.net/qq_41046162/article/details/80248281 通过学习了一段时间的arcgis for js,让我来讲一下如何在arcgi ...

  7. 原生JS实战:写了个一边玩游戏,一边记JS的API的游戏

    本文是苏福的原创文章,转载请注明出处:苏福CNblog:http://www.cnblogs.com/susufufu/p/5878913.html 本程序[一边玩游戏,一边记JS的API]是本人的个 ...

  8. [转载]fullPage.js中文api 配置参数~

    fullPage.js中文api 配置参数 选项 类型 默认值 说明 verticalCentered 字符串 true 内容是否垂直居中 resize 布尔值 false 字体是否随着窗口缩放而缩放 ...

  9. Arcgis for JS之Cluster聚类分析的实现(基于区域范围的)

    原文:Arcgis for JS之Cluster聚类分析的实现(基于区域范围的) 咱们书接上文,在上文,实现了基于距离的空间聚类的算法实现,在本文,将继续介绍空间聚类之基于区域范围的实现方式,好了,闲 ...

随机推荐

  1. python学习,day3:函数式编程,带参数

    # coding=utf-8 # Author: RyAn Bi def test(x,y,z): print(x) print(y) print(z) test(y=2,z =3,x=1) #形参与 ...

  2. cool kickass

    I can stay like this alllllllllll daaaaaaaaayyyyyy.

  3. [转] Spark sql 内置配置(V2.2)

    [From] https://blog.csdn.net/u010990043/article/details/82842995 最近整理了一下spark SQL内置配.加粗配置项是对sparkSQL ...

  4. Chrome获取微信授权,调试公众号页面

    1.目的 你可能遇到过这种情况,在微信中打开公众号是这样的. 复制链接,在chrome中打开是这样的. 博主今天要解决的就是,如果在chrome中加载需要微信授权的页面,至于加载成功后要干嘛,测试?抓 ...

  5. 检查SQL语句是否合法

    昨天又有一个新的需求:验证文本框输入的SQL语法是否正确. 于是就开始百度,其实也挺简单的. 首先需要知道“SET PARSEONLY { ON | OFF }”. 当 SET PARSEONLY 为 ...

  6. 使用NHibernate(6)-- HQL && ICriteria 简单介绍

    1,HQL. HQL是NHibernate特有的查询方式,早先的java语法还没有类似Linq的Jinq,所以Hibernate就弄了一套自己的查询语言,NHibernate移植的时候把这种语言也一块 ...

  7. C# string 特殊的引用类型

    .Net 框架程序设计(修订版)中有这样一段描述:String类型直接继承自Object,这使得它成为一个引用类型,也就是说线程上的堆栈上不会驻留有任何字符串.(译注:注意这里的“直接继承”.直接继承 ...

  8. CentOS 6.4下安装JIRA6.3.6破解汉化

    JIRA产品非常完善且功能强大,安装配置简单,多语言支持.界面十分友好,和其他系统如CVS.Subversion(SVN).VSS.LDAP.邮件服务整合得相当好,文档齐全,可用性以及可扩展性方面都十 ...

  9. java外观模式(Facade)

    1.外观模式(Facade [fə'sɑd] n. 正面:表面:外观) 外观模式:可以理解为 中介模式(没错,就是在用户与系统之间,增加了一个类,而这个类就是外观类,所以这个模式就叫外观模式) 如下图 ...

  10. i.mx6 Android5.1.1 初始化流程之init进程(未完成)

    概述: 接在i.mx6 Android5.1.1 初始化流程之框架之后 参考资料:http://blog.csdn.net/mr_raptor/article/category/799879 相关源码 ...