zoukankan      html  css  js  c++  java
  • ArcGIS API for JavaScript 4.2学习笔记[5] 官方API大章节概述与内容转译

    内容如上,截图自ESRI官网,连接:ArcGIS API for JavaScript 4.2(可能会跳转到4.3或者更高最新版本,如果有需要,到CSDN可以下载到4.2的离线文档)

    【Get Started】

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

    【Mapping and Views】 

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

    【Layers】

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

    支持多图层叠加显示

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

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

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

    回答上一句提到的问题。图层通过ArcGIS Server发布的各种服务创建,也可以通过Online或者Portal上的ID创建。

    【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那么强悍,不过对于基础的业务倒也足够。

    ESRI已经说了,空间分析仍会在未来的版本中发布更新以与3.x产品线追平。

    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。

  • 相关阅读:
    hdu6314 容斥+数学
    后缀数组+指针
    F. Dominant Indices
    牛客网挑战赛19 B,C,F
    拓展欧几里得理论基础(含一定证明)
    数字
    vue的自定义树形列表组件(及数据格式转换)
    Activiti实现会签功能
    7种单例模式
    MySQL中数据类型(char(n)、varchar(n)、nchar(n)、nvarchar(n)的区别)(转)
  • 原文地址:https://www.cnblogs.com/onsummer/p/6363915.html
Copyright © 2011-2022 走看看