ArcGIS API for JavaScript 4.2学习笔记[5] 官方API大章节概述与内容转译

内容如上,截图自ESRI官网,连接:ArcGIS API for JavaScript 4.2

【Get Started】

类似于绪论一样的东西,抽取了最需要关注的几个例子。如:加载Map和View,加载layers,使用弹出窗口,视觉化,与使用窗口小部件。(wtf居然没有分析你想搞事情啊web除了展示难道不应该有()&&*……@)

【Mapping and Views】 (点击进入我写的章节详细介绍)

最基础的,知道地图和视图的区别,能使用2D和3D地图,对地图的布局有一定的了解,对地图的动画也有小小的使用示例。还介绍了2D3D视图同步、鹰眼、指北针等功能。这一章是最基础的了,其中第一小节介绍了入口函数的参数意义。

【Layers】

这一章很庞大,貌似和地理数据有关。按顺序读下去:

支持多图层叠加显示

支持要素图层、场景图层(直接把影像拔高,推出了一个盒子形状的立体物件的场景图层)、矢量瓦片图层(这个很厉害啊)、影像图层、流图层、CSV图层、OpenStreet地图图层、Web瓦片图层、点云图层(这个更厉害1.1亿的激光雷达点云数据都能加载进来)

其中,对MapImageLayer和ImageryLayer有着重的介绍,前者不知道是什么东西,后者就是影像图层(栅格图层)。这也是数据中最关键的了。

最后我想问一下:图层这种东西,是怎么创建的(查API应该可以查到如何创建实例)?数据又如何从硬盘中获取?需要服务器环境吗?(尚待解决)

【Visualization】

这一章是符号的定制和色彩、样式的管理,主要是视觉方面的工作,在Web上不可能弄得很丑,Web最重要的功能就是“演示”,可视化这章就是为此而生。这一章内容繁多但是不难,简单看过去就是自定义符号、色彩设置、色带设置等,和桌面版的差不多。短时间内没法看完,以后待功能性章节完成学习后再进行攻读。

【Popups】

Popups意思为弹出窗口,第一个就以坐标的显示为例子。

弹出窗口也是一个相当基础的功能,因为有的查询功能的结果就需要用这种输出方式。

紧接的是:使用弹出小窗口的模板、对popups的位置进行固定(Dock,上下左右相对固定)

然后是在popups上加需要的内容,官方演示了表格、多媒体、文档和图表。

最后,在弹出窗口上也是可以添加按钮的(官方演示了Zoom功能和测量功能),也可以定制自己的功能(跳转到别的地方什么的)

【Graphics】

这章简单,和GDI差不多的东西,往视图中添加图形。支持2D和3D视图添加。

【Searching】

这章就是空间查询了。不过是基于widget的查询,底层似乎没给出。

使用Search widget可以查询,这功能在国内的地图厂商上都有,并且他们很像。不同的是,这是WebGIS,而不是商用GIS,功能是可以自己定制的。

当然,也可以对3D、2D地图进行筛选查询、点击查询。

ESRI也提供了最古老的方式——在表格上显示查询结果。

【Analysis】

这一章是空间分析,虽然不及Desktop上的ArcMap和ArcGIS Pro那么强悍,不过对于基础的业务倒也足够。

WebGIS的空间分析主要是:缓冲区分析和网络分析。例子中的网络分析是求解最短路径,比桌面版的操作友好多了(见本人的ArcGIS 网络分析专辑)。

此外官方还提供了:可视域分析、热点分析、查询高程(点高程和线路海拔变化等,线路海拔这个例子有点操作不友好)。

【Widgets】

这属于UI的定制,大布局上可以用第三方JS库,在地图上的UI控件就交给ESRI吧。

粗看下去,主要有:

Home按钮控件、图层列表控件、图例控件、定位控件、地图打印到本地磁盘控件、追踪定位控件(平面的)、导航定位控件(用于导航)、快速布局控件(widget太多了可以用一个东西管理,view对象的ui属性)

ESRI强大到:widget似乎是可以自定义的(支持第三方JS控件库!如Angular、React),我看到了custom的字样,但是没有仔细往下看,因为提供的控件和功能已经满足大多数的需求了。甚至,widget还可以给它弄个皮肤。

颤抖吧人类。

【More 3D】

这章跟数字高程模型有关,能使用大地高程进行3D可视化,并控制摄像机的位置和角度。

同时,也可以把高程信息叠加到要素类上,进行高程3D显示。

我还看到了一个好玩的东西:控制太阳(就是控制日照角度,根据时间),其实就是环境的控制。

AJS的3D引擎是可以拓展的,甚至提及了Threejs公共3D引擎库(Threejs差评,文档忒少难读)。

ESRI提供了WebGL的检测功能,因为3D的支持需要WebGL,如果浏览器不支持,那肯定是不行的。

【Other】

这里是一些杂项,如从服务器上获取资料、许可,连接服务器等。



API从esri这个大类分下去,有以下一级模块及与一级模块并列的类:

类:Basemap、Camera、Color、config、Graphic、Ground、kernel、PopupTemplate、request、Viewpoint、WebMap、WebScene

一级模块:/core  /geometry /identity /layers /portal /renderers /support /symbols /tasks /views /webmap /webscene /widgets

一些重要的二三级模块展示如下

/core: /accessorSupport /workers

/geometry: /support

/layers: /support

/renderers: /smartMapping/statistics      /smartMapping/symbology       /support

/symbols: /support

/tasks: /support

/views: /3d    /layers   /ui

/widgets: /support

对于API Reference,等用到一定时候会做类图,未完待续。其实官方的API已经很不错了,但是就是没有中文版,需要用过的人去做一些工作。

最后,善用API Reference。

时间: 2024-12-25 07:11:05

ArcGIS API for JavaScript 4.2学习笔记[5] 官方API大章节概述与内容转译的相关文章

ArcGIS API for JavaScript 4.2学习笔记[0] AJS4.2概述、新特性、未来产品线计划与AJS笔记目录

放着好好的成熟的AJS 3.19不学,为什么要去碰乳臭未干的AJS 4.2? 诸君,我喜欢嫩的--呸呸呸 诸君,我喜欢3D咋了?新事物会替代旧事物不是~ ArcGIS API for JavaScript 4.2概述 AJS 4.2,即ArcGIS API for JavaScript 4.2,是美国ESRI公司针对WebGIS市场推出的.利用JavaScript和Dojo开发的一款产品,它在2016年12月发布.而AJS 4.0 beta则在一年前就发布了. 关于AJS3和AJS4选择的问题,

ArcGIS API for JavaScript 4.2学习笔记[1] 显示地图

ArcGIS API for JavaScript 4.2直接从官网的Sample中学习,API Reference也是从官网翻译理解过来,鉴于网上截稿前还没有人发布过4.2的学习笔记,我就试试吧. 什么是ArcGIS API for JS?这里就不多介绍了,最关键的一点是4.x版本与3.x版本的变化,按官方的意思是重新写了底层. 笔记中规定: ArcGIS API for JavaScript简称AJS 使用CDN(即不配置本地环境)进行测试开发 其余根据需要进行修改.增删. 要将地图显示在h

ArcGIS API for JavaScript 4.2学习笔记[6] goTo()地图动画

这是个很有意思的例子,不过例子给的比较复杂,需要查很多API,我会在文章最后给出关键的类和属性解释. 同样发现一个很有意思的事儿:博客园似乎有爬虫,我4号发布的blogs,5号就在百度和google搜索页面上看到了转载或者复制. 这篇文章逻辑组织不太好,想知道怎么做缩放动画的可以直接拉到尾部看结论. 当然,这篇代码比较多,不建议手机看. 进入正题,goTo()动画,官方的例子是在SceneView中实现的. 照例,给出require的第一个字符串数组参数 require( [ "esri/Map

ArcGIS API for JavaScript 4.2学习笔记[31] (补充学习)Task类

Task这个东西很有用,是AJS中用于解决各种乱七八糟任务的一个类.它有很多子类,有用于空间分析的,有用于空间查询的,等等. 这篇作为补充学习的第一篇,也是进阶学习的第一篇,我就改个写法. 我将使用思维导图,更好呈现逻辑信息. Task类的继承关系 Task类继承自Accessor类,它又有17个子类.别担心,各取所需,很少能用上超过5个子类的AJS程序,除非是一个超大的AJS集成系统. 以上有我熟知的QueryTask.RouteTask.FindTask.Geoprocessor.Ident

ArcGIS API for JavaScript 4.2学习笔记[16] 弹窗自定义功能按钮及为要素自定义按钮(第五章完结)

这节对Popups这一章的最后两个例子进行介绍和解析. 第一个[Popup Actions]介绍了弹窗中如何自定义工具按钮(名为actions),以PopupTemplate+FeatureLayer的形式测量要素的长度为例子进行介绍. 第二个[Custom popup actions per feature]则是上一个的升级,如果说上一个例子的功能是写死的,那么这个例子就把这个功能写活了.什么意思呢?上个例子的测距仅仅能测距,没有什么别的特别的.而这个例子以啤酒店的分布(点要素图层)为例,在自

ArcGIS API for JavaScript 4.2学习笔记[7] 鹰眼(缩略图的实现及异步处理、Promise、回调函数、监听的笔记)

文前说明:关于style就是页面的css暂时不做评论,因为官方给的例子的样式实在太简单了,照抄阅读即可. 这篇文章有着大量AJS 4.x版本添加的内容,如监听watch.Promise对象.回调函数.异步处理等内容,原理性的东西我会在文末解释,各位看官不用担心看不懂,我尽量用通俗的语言解释这些. 惯例,如果不习惯从头看到尾,可以直接跳到后面看总结. 大家应该看过商业地图的缩略图功能吧?以度娘地图为例,在使用街景地图的时候,左下角会出现一个地点一样的2D小地图: 这个就是鹰眼功能的应用,在很多桌面

ArcGIS API for JavaScript 4.2学习笔记[24] 【IdentifyTask类】的使用(结合IdentifyParameters类)(第七章完结)

好吧,我都要吐了. 接连三个例子都是类似的套路,使用某个查询参数类的实例,结合对应的Task类,对返回值进行取值.显示. 这个例子是Identify识别,使用了TileLayer这种图层,数据来自Server的MapServer. 结果演示 戳不同的地方会有不同的识别结果. 我对TileLayer不是很了解,这一例仅针对有了解的同学,做一个IdentifyTask的解释. IdentifyTask/IdentifyParameter/IdentifyResult三个类 既然是一样的套路,那么先对

ArcGIS API for JavaScript 4.2学习笔记[9] 同一种视图不同数据(Map)同步

本例子核心:对MapView对象的map属性值进行替换即可达到更改地图数据的效果. 这个例子用的不是Map对象了,而是用的发布在服务器上的专题地图(WebMap)来加载到MapView上进行显示. 在html标签中,使用了section标签,不过没什么稀奇的,就把仨按钮放一块而已. 先给出预览图 三张专题地图:失踪人口密度分布.难民迁徙路线.2015年欧洲来港者. 这个东西很有用,尤其是在展示同一地区的专题地图的时候,这里也展示了什么叫View,什么叫Map. 因为中心点.比例尺是由View对象

ArcGIS API for JavaScript 4.2学习笔记[23] 没有地图如何进行查询?【FindTask类的使用】

从第一篇到现在都是基于地图的,不管怎么样,不管是2D还是3D,至少有个图. 这次来个没有图的例子,看看纯文字的空间查询是什么样的. 本例适用于后台查询或低性能电脑的查询. 预览图 由于4.3和4.2的这个例子没有任何实质性的改动,我直接从官方运行的4.3的例子: 默认打开的时候,按下Find按钮,右边就会出现转圈圈的图,其实是个GIF图片. 结果如上,将Spokane这个County的信息列举出来了,列出的字段有County Name.State.Population(2012).%Popula