ArcGIS JsAPI 4.15 发布日志

发布时间 北京时间 2020年4月10日javascript

ArcGIS API for JavaScript 4.15 发布日志html

1. FeatureLayer的3d编辑功能

如今在3d模式下支持点线面要素的编辑了。使用Editor小部件来编辑FeatureLayer。java

尽管Sketch工具以及支持地表要素的编辑,可是新的Z方向感知编辑工具能够修改地上或者地下的图形。投影到地形和场景中的物体上的辅助线能帮助编辑者进行对齐捕捉。git

当你使用3D点转换工具(3D点转换工具)交互式地旋转或者缩放3D符号时,要素的属性会经过视觉变量配置(VisualVariable)自动更新。现有的小部件例如FeatureForm、FeatureTemplates已经集成了3D符号。github

2. FeatureTable小部件(测试版本)

FeatureTable小部件(FeatureTable)提供要素属性的交互式编辑功能,该小部件可快速地加载较大的数据集。api

用户可选择表中的行(也就是要素),而后根据某些属性列进行排序,或者显示、隐藏某些属性列。promise

由于这个小部件仍是测试版本,限制性的功能见最新版API文档。安全

这个小部件既能够独立运行,也能够与某个地图图层联动运行。异步

3. 查看和编辑附件

3.1. 查看附件

4.15版本的API引入了一个新的附件小部件(Attachments),容许查看与要素有关的附件,例如图片等。除了附件的缩略图(若是附件是图片)外,还能看到附件的格式、大小。如今,这个小部件取代了原有的附件显示方式(即4.15版本以前的附件显示都是在弹出窗中)。所以,附件查看功能被剥离出来,能够安排集成到别的逻辑中去。工具

3.2. 编辑附件

编辑小部件(Editor)已经更新以支持附件编辑。如今能够增删改要素关联的附件了。前提是,FeatureService支持编辑。

4. BuildingSceneLayer筛选模式

经过BuildingSceneLayer中的新筛选模式,能够突出显示BIM模型中的要素,同时仍显示建筑物的其余部分。

筛选掉的其余BIM模型构件能够用X光模式渲染,也能够用线框显示。

这个是示例代码:点我

5. 在IntegratedMesh图层之上叠加显示要素

API如今将场景中的IntegratedMeshLayer视为地形。这意味着,你如今可使用on-the-ground模式将多边形直接贴地(把矢量图形直接绘制在Mesh表面)。点或者线符号若是设置了relative-to-ground做为它们的高程模式,它们就会以IntegratedMeshLayer为基础高程,相对拔高。

详情见示例代码:点我

6. 网格(Mesh)材质

如今使用Mesh建立的自定义三维模型能够用MeshMaterialMetallicRoughness这种材质了,支持镜面曲率。如今能够直接在材料上或经过纹理贴图调整金属和粗糙度因子。

关于这种材料,能够看看这个例子:点我

7. 点聚类功能的更新

添加了对点层中包含Arcade表达式的渲染器进行聚类的支持。

8. API更新

8.1. esriConfig如今是全局变量

只需在全局条件声明esriConfig变量便可。

<script>
  var esriConfig = {
    portalUrl: "https://myHostName.esri.com/arcgis"
  };
</script>

8.2. 返回原生Promise

从4.15开始,返回ES6原生的Promise对象。因此,老代码须要所有改了。ESRI计划在4.16中的Dojo定义的Promise。(译者注:释放信号——去Dojo化)。

ES6的Promise和Dojo的Promise大体相同,区别以下:

  • 使用ES6的catch()代替otherwise()

  • 使用AbortController.abort()方法替代cancel()

  • 使用如下代码替代always:

    .catch(function(error){
      /* 出错时的代码 */
    }).then(function() {
      /* 无论怎么用都要执行的代码 */
    });
  • 干掉了isFulfilled()/isResolved()/isRejected()方法。

  • 对于Dojo的Promise,当promise状态是resolved或者rejected时,then/catch方法会同步执行。在ES6的promise中,它们是异步执行。

若是不想用ES6的Promise,能够在dojoConfig中的has属性进行配置,可是这个在4.16版本将会废弃:

<script>
  var dojoConfig = {
    has: {
      "esri-native-promise": false
    }
  };
</script>

8.3. Dojo声明模块

ESRI正试图渐渐脱离Dojo的模块声明机制。在下一版本中,将彻底删除declare模块。这意味着,在4.15中若是继承了API的类(模块),你的派生类能够继续用,可是在4.16中就不能用了。

如今已经在控制台启用了警告信息。

你能够在官方的next仓库中测试未发布版本的jsapi(传送门)

9. 小部件更新升级

9.1. HTML清理程序更新

在版本4.14中,HTML清理器已添加到全部小部件中,以根据ArcGIS Online支持的HTML规范清理和转义字符串。对于4.15,咱们放宽了显示HTML时的一些清理规则,使其比ArcGIS Online支持的HTML规范限制更少。咱们还修复了与整理后的HTML内容不显示在PopupTemplate.content中有关的错误(请参见下文)。

9.2. DatePicker和TimePicker小部件

添加了两个新的小部件,以帮助支持选择日期和时间。添加了DatePicker和TimePicker小部件,以在输入日期和/或时间信息时提供轻松的UI体验。

9.3. Print小部件更新

如今,Print小部件的界面会根据打印的地图是自动下载仍是在新窗口中打开显示不一样的图标。

有关更多信息,请参见fileNametitle属性。开发人员还能够定义在UI中对用户可用的格式和打印布局。这些属性也能够经过PrintViewModel设置。

9.4. Editor小部件更新

9.4.1. 支持编辑附件

Editor如今内置了编辑附件的功能。若是管理的要素图层支持附件,那么增删改功能将会被提供。无需进行其余任何配置便可容许编辑附件,Editor小部件将遵循在关联的服务上设置的任何访问权限。

9.4.2. 工做流更新

有两个新的Workflow类:CreateWorkflowUpdateWorkflow。这两个类分别用于添加新功能或编辑现有功能。功能保持不变,只是如今被分为各自的类。除了这两个类以外,还有一些新类能够处理工做流数据:CreateWorkflowDataUpdateWorkflowData。此外,如今在Edits类中引用了Workflow编辑。

9.5. Popup更新

9.5.1 Popup的附件

如今,Popup使用Attachments小部件处理附件。与之前的版本类似,有一个AttachmentsContent类,能够将其配置为显示与某个要素关联的任何附件。区别在于Attachments小部件存储了过去能够经过AttachmentsContent访问的AttachmentInfo

9.5.2. 显示隐藏可见的元素

能够打开/关闭Popup上的可见元素。经过其visibleElements属性进行控制,该属性同时包含closeButtonfeatureNavigation属性。应该使用featureNavigation属性而不是已弃用的featureNavigationEnabled属性。

9.5.3. 设置actions的数量

能够经过其maxInlineActions属性设置在Popup中显示的最大actions数量。

9.5.4. 更新了图表轴的值和文本位置

若是在Popup中使用图表的media element时没有负值,则y轴如今从零开始。此外,图表的media element的标题和图表标题如今显示在图表上方。

10. MapImageLayer加强

MapImageLayer及其Sublayer类通过重构和现代化。针对动态图层,地图的可视化显著地对智能地图制图的改进,并修复了一些图层可见性错误。弹出行为的几个问题已修复,例如在使用编码的域值时可以显示描述。

咱们经过Sublayer.load()来加载子图层的元数据,用MapImageLayer.loadAll()来加载所有子图层。当加载完全部的子突出后你能够访问以下属性和方法:

renderer和labelingInfo也同样。

11. 影像图层更新

开发人员如今可使用TileImageryLayer在2D地图中利用客户端处理和渲染瓦片影像服务的优点。

12. StreamLayer更新

开发人员如今能够在SceneView中利用客户端查询(client-query)和过滤(filtering)StreamLayer。2D的StreamLayerView也支持客户端效果。

13. PictureMarkerSymbol更新

如今在MapView支持gifpng图片了。

14. 统计查询更新

percentile-continuouspercentile-discrete添加到statisticType中了。百分位统计量表示该值高于或低于该值时,一组数据中给定值的百分比降低。

15. 登陆界面更新

访问安全验证的服务和用户验证时,登陆界面更新了,再也不使用Dojo的Dijit对话框来实现。

16. 突破性改进

  • 使用ES6原生Promise
  • dgrid样式再也不包含在全局。若是在Web应用程序中使用dgrid,则须要单独引用样式表。
  • 删除了ImageMeshColor,从4.11版开始不推荐使用。改成在MeshMaterial.colorTexture上设置MeshTexture
  • 删除了requireUtils,该版本自4.10版本起不推荐使用。请改用promiseUtils.create()
  • 删除了ValueMeshColor,从4.11版开始不推荐使用。请改用MeshMaterial.color
  • StreamLayer中删除了capabilitiesversion属性。
  • Sketch小部件和SketchViewModel上的更新事件再也不具备取消状态。在update事件中abort的参数指示该进程已取消。
  • attachmentInfos属性已从AttachmentsContent中删除。如今能够经过Attachments小部件来处理它,而且能够经过其viewModel对其进行访问。
  • 如今,Workflow.data属性将返回CreateWorkflowUpdateWorkflow引用。
  • 如今,Editor小部件和EditorViewModelactiveWorkflow属性将返回对CreateWorkflowUpdateWorkflow的引用。
  • 如今在Edits类中引用了Workflow编辑。

17. 修复了BUG加强了功能

18. 添加了类、属性、方法、事件

19. 废弃的类、属性、方法、事件

20. 包更新

从4.15开始,ArcGIS Arcade升级到1.9;Dojo使用1.14.2(4.11到如今都是这个版本);dgrid使用1.2.1(从4.5开始用到如今);dstore使用1.1.2(从4.5开始用到如今)。

从4.12版本开始,使用Dojo5的@dojo/framework的5.0.4版本。

版权没有,翻版随你。 http://www.javashuo.com/article/p-ndoxywmp-km.html

相关文章
相关标签/搜索