近日,esri官方更新了arcgis api4.12版本,接下来我将就此API做一个大概的梳理。本篇文章是关于图层(layer)的一个大概。主要分为三部分,图层类型,图层支持,以及BIM相关支持。接下来以具体的图层为索引做详细的介绍:
layer作为map的基本组成部分。是矢量图形或光栅图像形式 的空间数据集合,代表现实世界的现象。图层可能包含存储矢量数据的离散要素和存储栅格数据的连续单元/像素。矢量图层包含的每个要素都有一个几何图像和属性信息。
用于查询、分析、可视化的图层
- FeatureLayer 继承自layer类,可以创建单个图层,包含属性信息,可以查询、分析、和呈现可视化数据
- GraphicsLayer 继承自layer类,包含一个或多个客户端图形,不能有关联的渲染器,
- MapImageLayer 继承自layer类。允许显示和分析子图层,导出图像。由服务器处理,不是客户端
- SceneLayer 继承自layer类,支持点和3D对象
- CSVLayer 继承自layer类,基于CSV文件(.csv,.txt)的点图层,纯文本文件格式,用于表示表格数据(地理要素【经纬度】,纬度是Y值,经度坐标是X值)
- KMLLayer 基于KML文件(.kml,.kmz)创建图层。KML是一种基于XML的文件格式,用于表示地理要素;但是不支持SceneView,MapImage当仅支持MapView类的空间参考是WGS84(:4326 WKID)
- StreamLayer 继承自FeatureLayer,流层扩展了要素图层,以添加使用HTML5 WebSockets连接到数据流的功能
- ImageryLayer 继承自layer类,将图像服务资源表示为图层,可以检索,允许过滤
- GeoJSONLayer 继承自layer类,创建geojson图层,geojson数据必须符合RFC 7964规范;但是一个layer只接受一种几何类型,一个属性,不支持GeometryCollection。不支持将Object用作GeoJSON功能的属性值
- GeoRSSLayer 继承自layer类,用于创建基于GeoRSS的层;GeoRSSLayer使用ArcGIS.com提供的实用程序服务。只支持MapView
- MapNotesLayer 继承自layer类。用于在WebMap或PortalItem中基于Map Notes创建图层。地图注释是Web地图的一部分。是WebMap或PortalItem的只读类
- WMSLayer 用于基于OGC Web地图服务(WMS)创建图层
- BaseDynamicLayer 继承自layer类 动态地图图层,无法在浏览器中缓存;不支持3D中的自定义动态图层
- BuildingSceneLayer 继承自layer类,用于SceneView中可视化具有详细内部的建筑物,加载BIM相关。
- 其子类为BuildingComponentSublayer; BuildingComponentSublayers包含3D对象功能,表示建筑组件,如门,管道或AC单元。该图层是BuildingSceneLayer 中的子图层,可以直接BuildingGroupSublayer的一部分
- BuildingGroupSublayer继承自BuildingSceneLayer ,作为子层的图层组
用于提供地理背景的图层
- TileLayer 访问的是缓存,渲染速度比MapImageLayer快
- BaseTileLayer 继承自layer类,自定义切片图层,图块层由图像组成,如卫星图像。将图块作为map进行加载
- VectorTileLayer 访问缓存的数据并以矢量格式呈现它
- IntegratedMeshLayer 继承自layer类,用于在基础设施的SceneView和难以访问的自然景观中可视化准确的表示,集成网格数据通常由自动化过程捕获,用于从大量重叠图像构建3D对象。结果使用三角形交错结构将原始输入图像信息整合为纹理网格
- ElevationLayer 继承自layer类,用于在SceneView中渲染高程的切片图层
- BaseElevationLayer 自定义高程图层, 继承自layer类,在SceneView中渲染高程的切片图层
- PointCloudLayer 设计用于可视化SceneView中的大量点集,点云数据是经过处理的空间组织激光雷达数据,由大量3D点组成
- OpenStreetMapLayer 继承自WebTileLayer,允许底图从OpenStreetMap中加载
- WMTSLayer 用于基于OGC Web地图服务(WMTS)创建图层
- WebTileLayer 非Arcgis 地图的加载方式
- BingMapsLayer 继承自BaseTileLayer 类,
其他
- GroupLayer 继承自layer类,提供了将多个子图层组织到一个公共图层中的功能,合并图层,图层组
- UnknownLayer 表示无法确定类型的图层时,用这个加载
- UnsupportedLayer 表示不受支持的图层实例