Class: FdImageryLayersManager

FdTools. FdImageryLayersManager

影像图层管理器


new FdImageryLayersManager(viewer)

Parameters:
Name Type Description
viewer Freedo.Viewer

视景器

Example
var container = document.getElementById('freedoContainer');
var viewer = Freedo.FdApp.createDefaultViewer('freedoContainer');
var imageryManager = new Freedo.FdTools.FdImageryLayersManager(viewer);

imageryManager.addDefaultImageryLayer();

Members


imageryLayersOptions :Array.<Object>

影像图层选项,参考FdTools.FdImageryLayersManager#add

Type:
  • Array.<Object>
Example
var imageryLayersOptions = imageryManager.imageryLayersOptions;
for(var i = 0 ;i < imageryLayersOptions.length ;i++){
     var imageryLayersOption = imageryLayersOptions[i] ;
     var iconUrl = imageryLayersOption.iconUrl; //影像图层的图标url路径
     var name = imageryLayersOption.name; //影像图层的名称
     var type = imageryLayersOption.type; //影像图层的类型,可能是BingMaps/Mapbox/ESRI/OpenStreetMap/WMTS/TileMapService/UrlTemplate
     var layerOption = imageryLayersOption.layerOption; //影像图层配置信息,可能是alpha/show,alpha表示透明度,show表示可见与否
     var alpha = layerOption.alpha; //影像图层透明度,范围在[0.0, 1.0]之间
     var show = layerOption.show; //影像图层是否可见
     var providerOptions = imageryLayersOption.providerOptions; //影像图层供应商配置信息,根据imageryLayerOptions.type不同,有不同的配置参数,例如:type为BingMaps时,需配置providerOptions.url和providerOptions.mapStyle;type为ESRI时,需配置providerOptions.url和providerOptions.enablePickFeatures
}

length :Number

项目中所包含的影像数量

Type:
  • Number

Methods


add(imageryLayerOptions [, index])

添加影像图层

Parameters:
Name Type Argument Description
imageryLayerOptions Object

影像图层配置信息

Properties
Name Type Description
iconUrl String

影像图层的图标url路径

name String

影像图层的名称

type String

影像图层的类型,可能是BingMaps/Mapbox/ESRI/OpenStreetMap/WMTS/TileMapService/UrlTemplate

layerOption Object

影像图层配置信息,可能是alpha/show,alpha表示透明度,show表示可见与否

Properties
Name Type Description
alpha Number

影像图层透明度,范围在[0.0, 1.0]之间

show Boolean

影像图层是否可见

providerOptions Object

影像图层供应商配置信息,根据imageryLayerOptions.type不同,有不同的配置参数,例如:type为BingMaps时,需配置providerOptions.url和providerOptions.mapStyle;type为ESRI时,需配置providerOptions.url和providerOptions.enablePickFeatures

index Number <optional>

影像图层索引

Example
var imageryLayerOptions = {
    'name': '资源三号卫星影像',
    'type': 'WMTS',
    'iconUrl': './static/blackMarble.png', // 图层的图标路径
    'layerOption': {
        'show': true,
        'alpha': 1.0
    },
    'providerOptions': {
        'url': '//219.142.143.106:7090/rest/wmts/',
        'layer': '资源三号卫星影像',
        'style': 'default',
        'format': 'tiles',
        'tileMatrixSetID': '资源三号卫星影像',
        'minimumLevel': 0,
        'maximumLevel': 18,
        'tilingScheme': 'Geographic'
    }
};

var index = imageLayersManager.length;
imageLayersManager.add(imageryLayerOptions, index);

addAmapImageryLayer( [style])

添加高德地图

Parameters:
Name Type Argument Description
style String <optional>

可选地图样式,默认为高德街道图。其他可选值:img、cva


addBaiduMapImageryLayer()

添加百度地图


addByPMTS(options)

通过服务地址来添加影像

Parameters:
Name Type Description
options Object
Properties
Name Type Description
url String

影像服务发布地址

autoFly Boolean

加载成功后是否自动飞到影像位置

show Boolean

是否显示

name String

名称

stillness Boolean

是否禁止事件触发,默认false,不禁止


addDefaultImageryLayer()

添加默认的影像图层(资源三号卫星影像)


addEsriGauss(options)

通过ArcGIS Server服务地址来添加高斯3度带投影的影像

Parameters:
Name Type Description
options Object
Properties
Name Type Description
url String

影像服务发布地址

autoFly Boolean

加载成功后是否自动飞到影像位置

show Boolean

是否显示

name String

名称

stillness Boolean

是否禁止事件触发,默认false,不禁止


addTianDiTuImageryLayer(token)

添加天地图影像图层(天地图影像)

Parameters:
Name Type Description
token String

访问天地图所需token; 如果不传入,则使用Freedo默认token.


addTianDiTuZhuJiImageryLayer(token)

添加天地图影像中文注记图层(天地图影像中文注记)

Parameters:
Name Type Description
token String

访问天地图所需token; 如果不传入,则使用Freedo默认token.


dispose()

销毁所有资源

Example
imageLayersManager.dispose();

getAllLayers()

获取所有的影像图层


getLayerProperty(index, property)

获取影像图层属性信息

Parameters:
Name Type Description
index Number

影像图层索引

property String

影像图层的属性名称,可能是alpha/show,alpha表示透明度,show表示可见与否

Returns:

返回属性值,alpha的类型是Number,show的类型是Boolean

Type
Number/Boolean

lower(index)

下移影像图层

Parameters:
Name Type Description
index Number

影像图层索引

Example
//假设目前已经添加了[a,b,c,d]四个图层
imageLayersManager.lower(1) ;
//调用后顺序变成了[a,c,b,d]

on(listener [, scope])

注册捕捉FdImageryLayersManager类的回调函数。

Parameters:
Name Type Argument Description
listener FdTools.FdImageryLayersManager~FdImageryLayersManagerCallback

当有事件触发时被执行的函数,FdImageryLayersManager的事件类型只有“Changed”一种。

scope Object <optional>

listener函数执行时的绑定的对象。

Returns:

返回一个函数,调用该函数可以取消监听。

Type
Freedo.Event~RemoveCallback
Example
imageLayersManager.on( function(eventType ,param){
     if(eventType === 'Changed'){

     }
});

raise(index)

上移影像图层

Parameters:
Name Type Description
index Number

影像图层索引

Example
//假设目前已经添加了[a,b,c,d]四个图层
imageLayersManager.raise(2) ;
//调用后顺序变成了[a,c,b,d]

remove(index)

删除影像图层

Parameters:
Name Type Description
index Number

影像图层索引

Example
//假设目前已经添加了[a,b,c,d]四个图层
imageLayersManager.remove(2) ;
//删除后变成了[a,b,d]

removeAll()

删除所有的影像图层

Example
//假设目前已经添加了[a,b,c,d]四个图层
imageLayersManager.removeAll() ;
//删除后变成了[]

setLayerProperty(index, property, value)

设置影像图层属性信息,会触发Changed事件

Parameters:
Name Type Description
index Number

影像图层索引

property String

影像图层的属性名称,可能是alpha/show,alpha表示透明度?,show表示可见与否

value Number/Boolean

alpha的类型是Number,show的类型是Boolean


showLayers(index, layers)

显示ArcGIS或者WMS图层内部指定的子图层(未被指定的子图层将被隐藏)

Parameters:
Name Type Description
index Number

影像图层索引

layers String

子图层名, 多个图层用英文逗号分隔

Type Definitions


FdImageryLayersManagerCallback(eventType)

Parameters:
Name Type Description
eventType String

事件类型有:Changed