ESRI官网悄无声息突然更新4.4和3.21,公众号也没有什么消息。照例,给大家看看这次更新有什么新特性吧。

1. AJS 4.4

官方更新日志:点我,比较详细。我在这里抽一些主干作为说明。

1.1 支持更强大的WebMap

为了支持更强大的WebMap,官方开发了三个新的图层:WMSLayer、WMTSLayer、MapNotesLayer。

这就意味着,WebMap已经能用4.XAPI进行读取了,ArcGIS Online和Portal上的数据可以被大量使用。

还没支持的功能:WFS、KML、Bing,估计后续版本就能提供支持了。

1.2 高亮显示功能

  • highlightOptions属性可用于SceneView
  • highlight()方法可用于以下新出的LayerView子类:FeatureLayerView、CSVLayerView、SceneLayerView、GraphicsLayerView

高亮点要素(地铁站)的例子:点我,效果如下:

高亮场景图层中某个要素的例子:点我,效果如下:

1.3 在弹窗模板中支持了Arcade表达式

(Arcade是2017年6月新出的东西:https://developers.arcgis.com/arcade/)

具体是什么我还得研究研究Arcade,以后再补充,可以知道的是弹窗模板对数据的展示更丰富了。

layer.popupTemplate = {
expressionInfos: [{
name: "participation-rate",
title: "% of population 16+ participating in the labor force",
expression: "Round(($feature.CIVLBFR_CY / $feature.POP_16UP)*100,2)"
}],
content: "In {NAME} county, {expression/participation-rate}% of the population"
+ " participates in the labor force."
};

如上,得到的弹窗结果是:

主要是给PopupTemplate类添加了expressionInfos这个属性。

1.4 增强了点云图层、场景图层、流图层、地图图层

以地图图层(MapImageLayer)为例,4.3和4.4的显示效果是不同的

在锐度、清晰度上有了改进(应该是WebGL改进了)。

点云图层增强了高程等功能。

矢量瓦片图层(VectorTileLayer)支持打印。

1.5 增加了一系列新的图层类型

添加了WMSLayer、WMTSLayer、WMTSSublayer、WMSSublayer、MapNotesLayer几个图层类型。

1.6 自定义图层

可自定义:TileLayer、DynamicLayer、LercLayer、BlendLayer、ElevationLayer。

自定义图层需要对核心类Accessor类进行创建子类,比较复杂,详见TileLayer的例子:点我

连接跳转到介绍如何自定义图层的篇幅。

1.7 拖拽地图图层更为顺滑

给MapView进行了增强,主要是平移时出现了缓入缓出,不像4.3那么死板。见下图:

 

如果图片不动请点击连接:点我

1.8 给出了绘制几何图形的例子

这个例子比较有趣,在长达两年的更新中终于出现了3.x中才有的几何图形绘制的雏形,虽然不及3.x的Draw功能强大。

注意:这个是绘制,并不能向服务器发起存储请求,存储请求还是在4.3中出现的applyEdit中完成的。

期待ESRI早一些发布支持向服务器存储绘制要素请求的功能吧。

绘制很简单,点击左边的绘制按钮,开始画线,双击结束后利用这个多边形就可以计算面积什么的。

1.9 增加了要素模板(FeatureTemplate)类

详见API帮助。

1.10 小部件升级

  • Popup、Search、Legend小部件加入了Widget框架中。
  • LayerList小部件进行了升级改造。

LayerList有些属性和方法在4.4是改动了的,如果有早期代码,则需要更新,详见4.3和4.4的LayerList类。

1.11 在符号显示和符号渲染方便进行了增强

  • 支持使用新类——type,进行分类着色,如下图:

  • 增强3D点状符号,如下图:

  • 3D符号支持旋转了,以便更好的展示地图。
  • 3D符号可以使用材质了。见下:

仍有许多细节的特性还没来得及推敲,就先以这些为主吧,各位读者可以自行查阅发布记录。

最后,4.5版本将在秋季发布,确定的是4.6也在2017年发布。

2. AJS 3.21

这个版本更新的东西不多,毕竟已经比较成熟了。更新日志:点我

2.1 支持Arcade

在PopupTemplate中支持Arcade表达式,添加expressionInfos属性,与4.4类似。

————

其余零碎的东西就不提了,修修补补。

3. 结语

这次4.x的更新幅度还算比较大,尤其是那个Arcade和几何绘制,这是本人比较感兴趣的两个点。

至于3.21,成熟的产品,无需多提,好像是今年开发完成?嗯,新特性就写到这里,谢谢。

ArcGIS API for JavaScript 4.4学习笔记[新] AJS4.4和AJS3.21新特性的更多相关文章

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

    放着好好的成熟的AJS 3.19不学,为什么要去碰乳臭未干的AJS 4.2? 4.2全线基础学习请点击[直达] 4.3及更高版本的补充学习请关注我的博客. ArcGIS API for JavaScr ...

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

    ArcGIS API for JavaScript 4.2直接从官网的Sample中学习,API Reference也是从官网翻译理解过来,鉴于网上截稿前还没有人发布过4.2的学习笔记,我就试试吧. ...

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

    内容如上,截图自ESRI官网,连接:ArcGIS API for JavaScript 4.2 [Get Started] 类似于绪论一样的东西,抽取了最需要关注的几个例子.如:加载Map和View, ...

  4. ArcGIS API for JavaScript 4.2学习笔记[21] 对3D场景上的3D要素进行点击查询【Query类学习】

    有人问我怎么这个系列没有写自己做的东西呢? 大哥大姐,这是"学习笔记"啊!当然主要以解读和笔记为主咯. 也有人找我要实例代码(不是示例),我表示AJS尚未成熟,现在数据编辑功能才简 ...

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

    这节对Popups这一章的最后两个例子进行介绍和解析. 第一个[Popup Actions]介绍了弹窗中如何自定义工具按钮(名为actions),以PopupTemplate+FeatureLayer ...

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

    文前说明:关于style就是页面的css暂时不做评论,因为官方给的例子的样式实在太简单了,照抄阅读即可. 这篇文章有着大量AJS 4.x版本添加的内容,如监听watch.Promise对象.回调函数. ...

  7. ArcGIS API for JavaScript 4.2学习笔记[19] 搜索小部件——使用更多数据源

    上一篇中提到,空间搜索小部件是Search这个类的实例化,作为视图的ui属性添加进去后,视图就会出现搜索框了. 这节的主体代码和上篇几乎一致,区别就在上篇提及的sources属性. 先看看结果: 由于 ...

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

    Task这个东西很有用,是AJS中用于解决各种乱七八糟任务的一个类.它有很多子类,有用于空间分析的,有用于空间查询的,等等. 这篇作为补充学习的第一篇,也是进阶学习的第一篇,我就改个写法. 我将使用思 ...

  9. ArcGIS API for JavaScript 4.2学习笔记[30] 点和线高程查询(第八章完结)

    终于到最后一篇了,可喜可贺. 本例先说明了如何进行单点的高程差分析,然后说明了道路的起伏分析.前者很直观地比较了两个年份的高程数据之间的差值,体现山区的高程变化(有啥用啊?)后者,一条路上的起点终点起 ...

  10. ArcGIS API for JavaScript 4.2学习笔记[27] 网络分析之最短路径分析【RouteTask类】

    要说网页端最经典的GIS应用,非网络分析莫属了. 什么?你没用过?百度高德谷歌地图的路线分析就是活生生的例子啊!只不过它们是根据大实际背景优化了结果显示而已. 这个例子使用RouteTask进行网络分 ...

随机推荐

  1. h5分享页面打开APP

    项目中 直播app分享出来的直播h5页面 点击进入按钮:已下载app 就进入app,未下载跳转到下载页面 判断是安卓还是ios var u = navigator.userAgent; var isA ...

  2. TableLayout

  3. js—浅谈方法和思路的重要性(首篇求大佬支持)

    js-浅谈方法和思路的重要性 学了这么久的js,我从老师的,同学的代码中发现,老师写的代码比我们的要清楚的很多,基本上没有太多累赘啊,能少的没有少啊等等..... 废话不多说,下面我们来看看这个我的一 ...

  4. (转) Java RMI 框架(远程方法调用)

    "原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://haolloyin.blog.51cto.com/1177454/33 ...

  5. 一步一步实现android studio代码上传到github。

    本文只注重代码上传能成功就好,不解释什么是git什么事github,git有什么优势. 1,先创建一个android应用, 第二步:创建github账户 和 安装git.网上的文章多如牛毛.唯一要说的 ...

  6. 【小练习03】CSS-表格(table)--天气预报

    表格基础知识链接:http://blog.csdn.net/baidu_37107022/article/details/71713281 练习要求实现如下效果图: 代码演示 <!DOCTYPE ...

  7. Common.Logging源码解析二

    Common.Logging源码解析一分析了LogManager主入口的整个逻辑,其中第二步生成日志实例工厂类接口分析的很模糊,本随笔将会详细讲解整个日志实例工厂类接口的生成过程! (1).关于如何生 ...

  8. Akka(6): become/unbecome:运算行为切换

    通过一段时间的学习了解,加深了一些对Akka的认识,特别是对于Akka在实际编程中的用途方面.我的想法,或者我希望利用Akka来达到的目的是这样的:作为传统方式编程的老兵,我们已经习惯了直线流程方式一 ...

  9. 新手如何快速入门Python

    学习任何一门语言都是从入门(1年左右),通过不间断练习达到熟练水准(3到5年),少数人最终能精通语言,成为执牛耳者,他们是金字塔的最顶层.虽然万事开头难,但好的开始是成功的一半,今天这篇文章就来谈谈如 ...

  10. cpp(第十三章)

    1.动态(晚期)联编需要显示定义复制构造函数,赋值运算符,虚构函数. 2.纯虚类不能声明对象. 3.赋值运算符的特征标随类而异. 4.返回类型协变,重新定义继承的方法,应确保与原来的原型完全相同,但如 ...