• ArcGIS API for JavaScript 4.4学习笔记[新] AJS4.4和AJS3.21新特性


    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,成熟的产品,无需多提,好像是今年开发完成?嗯,新特性就写到这里,谢谢。

  • 相关阅读:
    SQL语句实例学习汇总
    sql语句一些实用技巧for oracle
    无限级递归生成HTML示例及ListBox,DropDownList等无限树
    另类Sql语句直接导出表数据到Execl
    powerdesigner中sql脚本小写转大写,去双引号
    C#中利用jQuery获取Json值示例,Ajax方式。
    利用jquery解决下拉菜单被Div遮挡问题
    获取Textarea 元素当前的光标位置及document.selection.createRange()资料
    oracle中一些常用函数
    IE6 动态创建 iframe 无法显示的 bug,万恶的IE6
  • 原文地址:https://www.cnblogs.com/onsummer/p/7125700.html
Copyright © 2020-2023  润新知