THING.EARTH.FeatureLayer(param)

要素图层FeatureLayer(基于GeoJSON文件生成的图层)

new FeatureLayer(param)

构造函数

Parameters:
Name Type Description
param Object 参数列表 除了整体参数(data,geoObjectType,idField等) 与创建单个GeoObject的参数一致
Properties
Name Type Attributes Default Description
url String <optional>
数据源url
data GeoJSONFeatureCollection <optional>
数据源
geoObjectType String GeoObject的类型 例如 GeoPoint GeoLine GeoPolyon GeoBuilding GeoPolygon等
style THING.EARTH.GeoBaseStyle 图层样式
extrudeHeight Number <optional>
拔高高度 单位米 优先级高于extrudeField geoObjectType为GeoPolygon GeoBuilding GeoBoundary时生效
extrudeField Number <optional>
拔高字段 geoObjectType为GeoPolygon GeoBuilding时生效
extrudeFactor Number <optional>
1 拔高倍数 与拔高倍数配合使用 geoObjectType为GeoPolygon GeoBuilding时生效
offsetHeight Number <optional>
0 离地高度 单位米 默认0
offsetHeightField String <optional>
离地高度字段
offsetHeightFactor Number <optional>
1 离地高度倍数 默认1
groundHeightField String <optional>
geoObjectType为GeoLine时,代表地形高度字段 高度字段中的值是一个数组(LineString)或者二维数组(MultiLineString),数组中要素的值对应线的每个点的高度
groundHeightFactor Number <optional>
1 geoObjectType为GeoLine时,代表地形高度倍数 在groundHeightField中高度值的基础上再乘以该倍数
label GeoLabel <optional>
标记
infoWindow InfoWindow <optional>
信息框
idField String <optional>
'id' ID字段 是指从属性中取该字段的值作为GeoObject的id值
renderOrder Number <optional>
0 渲染顺序
azimuth Number <optional>
0 方位角 geoObjectType为GeoPoint时生效
sync Boolean <optional>
false 是否不开启Worker,以同步的方式创建子对象 适用于贴地线和贴地面
pivot Array.<Number> <optional>
轴心点 geoObjectType为GeoPoint时生效
useMercatorUV Boolean <optional>
GeoPolygon/GeoWater时 是否用墨卡托投影计算uv
arcType THING.EARTH.ArcType <optional>
GeoPolygon/GeoWater时 创建多边形的绘制方式
granularity Number <optional>
Math.PI/180 GeoPolygon/GeoWater时 多边形三角化的精度 值越小精度越高
Example
const pointLayer = new THING.EARTH.FeatureLayer({
      name: 'pointLayer',
      renderOrder: 1,
      data:{
      "type": "FeatureCollection",
      "features": [{
          "type": "Feature",
          "properties": {
            "type": "rain",
            "value": 5
          },
          "geometry": {
            "type": "Point",
            "coordinates": [-73.99995803833008, 40.71805432623303]
          }
        }, {
          "type": "Feature",
          "properties": {
            "type": "water",
            "value": 7
          },
          "geometry": {
            "type": "Point",
            "coordinates": [-73.98167610168457, 40.726087955120704]
          }
        }]
      },
      geoObjectType:'GeoPoint',
      style:{
        type: 'Image',
        url:'image/uGeo/pop.png',
        size:20
      },
      pivot:[0.5,0]
    });

Extends

Members

arcScale :Number

获取/设置 飞线在高度方向的缩放倍数 值越大,飞线弧度越大

Default Value:
  • 1

arcType :THING.EARTH.ArcType

获取/设置 多边形边界的绘制方式 详见ArcType

azimuth :Array.<Number>

获取/设置方位角,仅geoObjectType为GeoPoint时生效。注: 方位角0度代表朝北

Default Value:
  • 0

data :Array.<GeoJSON>|GeoJSONFeatureCollection

设置/获取图层数据源

Overrides:

extrudeFactor :Number

获取/设置图层中对象的拔高倍数

Default Value:
  • 1.0

extrudeField :String

获取/设置图层中对象的离地高度字段

extrudeHeight :Number

获取/设置图层中对象的拔高 如果是根据字段拔高则返回undefined

readonly geoObjectType :String

GeoObject的类型

granularity :Number

获取/设置geoObjectType为GeoPolygon/GeoWater的三角面精度 值越小精度越高

Default Value:
  • Math.PI/180

id :String

获取/设置 图层ID

Overrides:

readonly idField :String

id字段 是指从属性中取该字段的值作为GeoObject的id值

Default Value:
  • 'id'

infoWindow :InfoWindow

图层信息框

label :GeoLabel

图层的标注

readonly loadStatus :LayerLoadStatus

获取图层的加载状态

Overrides:

readonly nameField :String

name字段 是指从属性中取该字段的值作为GeoObject的name值

Default Value:
  • 'name'

offsetHeight :Number

获取/设置图层离地高度

Overrides:
Default Value:
  • 0

offsetHeightFactor :Number

获取/设置图层中对象的抬高倍数

Default Value:
  • 1

offsetHeightField :String

获取/设置图层中对象的抬高字段

pivot :Array.<Number>

获取/设置相对于本地坐标系下的轴心点信息,仅geoObjectType为GeoPoint时生效。注: 轴心点参考原点为: [left, bottom, back]

Default Value:
  • [0.5,0]

style :GeoStyle

图层样式

Overrides:
  • THING.EARTH.ThingLayer#style

readonly sync :Boolean

是否不开启Worker,以同步的方式创建子对象

url :String

设置/获取图层数据源的路径

Overrides:

visible :Boolean

获取/设置 图层是否可见

Overrides:
Default Value:
  • true

visibleLevel :Array.<Number>

获取/设置图层的可见层级

Overrides:

Methods

add(geoObject) → {GeoObject}

Parameters:
Name Type Description
geoObject GeoObject 待添加的地理物体对象
Returns:
GeoObject
Overrides:

addMany(geoObjects) → {Array.<GeoObject>}

Parameters:
Name Type Description
geoObjects Array.<GeoObject> 地理物体对象列表
Returns:
Array.<GeoObject>
Overrides:

changeOffsetHeight(heightopt, fieldopt, factoropt)

重新设置图层中对象的抬高高度

该方法可以重新设置图层中对象的抬高高度
Parameters:
Name Type Attributes Default Description
height Number <optional>
0 重新设置的抬高高度
field String <optional>
重新设置的抬高字段
factor Number <optional>
1 重新设置的抬高倍数

destroy() → {Boolean}

销毁图层

Returns:
Boolean
Overrides:

destroyScanning()

移除扫光

Overrides:

getById(id) → {GeoObject}

Parameters:
Name Type Description
id string 地理物体对象 ID
Returns:
GeoObject
Overrides:

getExtent() → {Extent}

Returns:
Extent
Overrides:

getItems() → {Array}

获取图层中的对象

Returns:
Array
Overrides:

hide()

隐藏图层

Overrides:

pauseScanning()

暂停扫光

Overrides:

remove(geometry)

Parameters:
Name Type Description
geometry GeoObject 地理物体对象
Overrides:

removeAll() → {Boolean}

Returns:
Boolean
Overrides:

removeById(id) → {Boolean}

Parameters:
Name Type Description
id string 地理物体对象 ID
Returns:
Boolean
Overrides:

removeMany(geometry) → {Boolean}

Parameters:
Name Type Description
geometry Array.<GeoObject> 多个地理物体对象
Returns:
Boolean
Overrides:

resumeScanning()

恢复扫光

Overrides:

setStyle(style, shareMaterialopt)

全量更新FeatureLayer的style

Parameters:
Name Type Attributes Default Description
style Object 图层样式
shareMaterial Boolean <optional>
false 是否共用材质

show()

显示图层

Overrides:

spatialQuery(geometry, method) → {Selector}

对图层进行空间查询

Parameters:
Name Type Description
geometry GeoObject | GeoJSON 要查询的Geo对象或者GeoJSON数据
method String 目前仅支持求交(GeometryIntersect)
Returns:
Selector - 查询结果

startScanning(params)

开始扫光 注意 TileLayer,Tile3DLayer不支持扫光 如果BigBuildingLayer或者geoObjectType为GeoBuilding的FeatureLayer接受扫光 useDynamicExtrude必须给false 否则扫光无法生效

Parameters:
Name Type Description
params Object 扫光参数
Properties
Name Type Attributes Description
type THING.EARTH.ScanningType <optional>
扫描类型
mode THING.EARTH.ScanningMode <optional>
扫描模式
angle Number <optional>
扫描角度,默认为0
speed number <optional>
扫描速度,默认为1。
color Array <optional>
扫描颜色,默认为白色。
opacity number <optional>
扫描透明度,默认为1。
blending boolean <optional>
是否启用混合,默认为true。
effect boolean <optional>
是否启用发光,默认为false。
Overrides:

stopScanning()

停止扫光

Overrides:

update(param, shareMaterialopt)

全量更新FeatureLayer的属性 会全量更新样式(param.style)

Parameters:
Name Type Attributes Default Description
param Object FeatureLayer的属性 需传入完整的参数
shareMaterial Boolean <optional>
false 是否共用材质