GeoDataSource

数据源/数据提供者 基类

new Cesium.GeoDataSource(options)

Name Type Description
options Object optional 参数选项:
Name Type Description
url String optional 数据源地址
filter Object optional 数据源过滤器/数据源请求参数
Author:
  • liuck
Example:
//1、自定义数据源对象, 继承基类GeoDataSource。
    class GLWG_LKQ_DataProvider extends GeoDataSource {}
    let dataProvider = new GLWG_LKQ_DataProvider({});

    //2、基于回调的方式直接使用
    var ds = new Cesium.GeoDataSource({
        url: './Contour20201130.json'
    });
    ds.load((res) => {
        let features = res.features;
    })

    //3、基于事件的方式直接使用
    var ds = new Cesium.GeoDataSource({
        url: './Contour20201130.json'
    });
    ds.addListener(function(res){
        let features = res.features;
    }, this)
    ds.load();
Demo:

Methods

addListener(listener, scope)

添加监听
Name Type Description
listener function 监听的回调函数,用于绑定图层与数据源,当数据源对象数据加载完成后自动触发图层的setData函数接口
scope Layer
Example:
layer._dataSource.addListener(layer.setData, this);

conversionData()

转换数据, 需要在子类中重载、实现

destroy()

销毁对象

getData()

获取数据源内部数据,一般为服务返回的原始结构数据

getFeatures()

获取转换后的数据

load(callback, failback)

加载数据,一般是从服务端接口获取数据
Name Type Description
callback function 数据请求成功后执行的回调函数
failback function 数据请求异常后执行的回调函数
Example:
let layer = new GLWG_LKQ_OperationalLayer({});
let datasource = new GLWG_LKQ_DataProvider({});
layer.setDataSource(datasource);
datasource.setFilter{{}};
datasource.load();

raiseDataChanged()

触发数据源对象对外的数据改变/加载的事件, 一般作为数据源ajax完数据后,触发与数据源绑定的图层重新渲染逻辑

removeListener(listener)

解除监听
Name Type Description
listener function
Example:
this._dataSource.removeListener(this.setData);

setFilter(filter)

设置过滤器参数,一般为ajax请求中的param参数
Name Type Description
filter object

setURL(url)

设置数据源服务地址
Name Type Description
url string