ArcGIS API for JS 之 不依赖地图服务创建FeatureLayer图层

本文介绍如何不依赖地图服务,利用ArcGIS API for JS的FeatureLayer类,结合featureSet和layerDefinition构建要素图层。通过将shp数据转化为geoJson,展示如何创建包含点几何类型的FeatureLayer,并提供了具体的json数据示例。
摘要由CSDN通过智能技术生成

在ArcGIS API for JS中,有一个很强大的要素图层类——FeatureLayer类。它是一种图形要素图层,继承于esri/layers/GraphicLayer,用来对服务图层中的要素服务进行显示。但是通常依赖ArcGIS Server发布的地图服务来获取数据源,实际应用中,很多业务数据来源数据库亦或者是前端JSON格式的数据,并不一定是从地图服务来获取的。而通过API文档中所示,创建FeatureLayer图层有两种方式,本文重点解决如何通过第二种方式,脱离地图服务,创建要素图层。


   在创建要素图层的时候,最重要的就是构造featureCollectionObject,featureCollecttionObject又是由featureSet和layerDefinition构成。正式由这两个参数,构建了一个类似于标准的featureLayer的数据格式。

   featureSet由 esri/task/FeatureSet 来创建,输入参数采用json的格式,这个json格式的数据其实就是构建了一个shp数据层,这里,我们可以采用arcgis的arctools来将shp数据转化为geoJson数据,具体转化方法请参考:这里;转化之后就如下所示:

[javascript]  view plain  copy
  1. var dz = {  
  2.   //数据的基本属性  
  3.   "displayFieldName""",   
  4.   "fieldAliases": {  
  5.     "FID""FID",   
  6.     "UserID""UserID",   
  7.     "NAME""NAME",   
  8.     "TYPE_USER""TYPE_USER",   
  9.     "CODE""CODE",   
  10.     "ADDRESS""ADDRESS",   
  11.     "TELEPHONE""TELEPHONE"  
  12.   },   
  13.   "geometryType""esriGeometryPoint",   
  14.   "spatialReference": {  
  15.     "wkid": 4490,   
  16.     "latestWkid": 4490  
  17.   },   
  18.   //所含有的字段信息  
  19.   "fields": [  
  20.     {  
  21.       "name""FID",   
  22.       "type""esriFieldTypeOID",   
  23.       "alias""FID"  
  24.     },   
  25.     {  
  26.       "name""UserID",   
  27.       "type""esriFieldTypeInteger
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值