ArcGIS API for JavaScript 4.2——厉害了我的ArcGIS

不久前 Esri 在 developers 网站上正式发布了 ArcGIS API for JavaScript 4.2 ,诸多新鲜功能,特别是对三维和矢量切片的支持上,那今天就让我们一睹为快吧!

1 标题文字

矢量切片自推出以来就备受关注,在4.2API中对矢量切片图层的展示有重要的变化。在这个版本中矢量切片的方法被重写,以更加紧凑的方式与现在的API进行结合。VectorTileLayer类现在依然支持MapBox规范(版本8)的矢量切片,目前在JS API 4.2中的适量切片增加主要包括
1、Vector tile layers目前已经支持在3D场景中展示
2、标签的展示被重新设计,用来避免标签之间的压盖以及在切片边缘的缺失的问题
3、支持标记从右往左书写
4、支持加载任何ArcGIS支持的坐标系制作的矢量切片
5、增加对Microsoft Edge 和 IE11浏览器的支持
6、对矢量切片索引的完全支持,可以让用户更加高效的构建适量切片

 
2 点云的支持

4.2API增加了一个新的图层类型PointCloudLayer, 用来支持对点云图层的加载

另外在渲染方面,增加了四个针对电云的渲染方式PointCloudClassBreaksRenderer , PointCloudRGBRenderer , PointCloudStretchRenderer , PointCloudUniqueValueRenderer,可以对点云图层进行基于属性的分类渲染、唯一值渲染、以及RGB渲染。

 
3 高程查询API

在4.2API中引入了一个新的方法queryElevation(),可以在三维视角中基于高程值或者Z值查询两点之间的高度差,不仅可以利用两点计算高度差,还可以基于矢量的线计算矢量线经过的位置的高程变化。

 
4 三维智能制图

大家还记得在portal中的智能制图的功能么?通过拖拽即可实现基于属性值的渲染。在4.2API中引入了对三维数据的智能制图组件,可以基于属性值进行大小、颜色以及颜色大小同步变化的渲染效果。

 
5 可以控制速度的goto()函数

在js4.0推出时大家就发现goto()函数没有办法控制速度进行漫游,只能从一个视角快速移动到另一个视角,为了解决这种漫游需求,我们之前需要自己对漫游路径进行插值,实现控制速度的漫游效果,现在4.2API中增加了duration属性值,可以控制两点之间运行的时间,同时还提供了五种运行模式包括,linear | ease | ease-in | ease-out | ease-in-out。

 
6 更强大的组件

JS API 3.x中将许多常用功能封装成组件,供开发者方便调用。在4.x版本中这种方式延续下来,每一次版本更新我们都会欣喜的发现又增加了一些新组件,比如这次就增加了图层列表和打印功能的组件,加上之前的组件,目前4.xAPI提供了13种组件基本满足我们进行开发的需要。

老话说的好,授人以鱼不如授人以渔,4.2API目前已经可以支持自定义的组件开发了,这样开发者们也可以根据自己的需求自行构建组件,方便其他开发者进行调用。

 
7 支持使用Arcade进行数据可视化表达

Arcade是一个轻量级脚本语言,未来将用来在ArcGIS平台中表达数据可视化效果和标签内容。我们可以通过编写Arcade表达式,在web端和桌面端展现相同的数据表达方式。


 
8 增加了MapView和SceneView中鼠标和键盘的相应事件

在4.2 API中,增加了两种对View的事件监听,以及四种鼠标事件和两种键盘事件的响应,分辨是
  • double-click – 在View中执行双击后响应.
  • drag – 在view中进行拖拽时响应.
  • key-down – 在某一个键盘按下时响应.
  • key-up – 在某一个键盘谈起后响应.
  • mouse-wheel – 当鼠标在view中响应滚轮事件
  • pointer-down – 点鼠标按下时相应操作
  • pointer-move 当鼠标移动时相应操作.
  • pointer-up – 当鼠标按键抬起时响应操作


文章来源:https://mp.weixin.qq.com/s/DF1k_YBAJUZhp4pPocKKfg

0 个评论

要回复文章请先登录注册