GeoWebMapTileServiceImageryProvider

多时相图层服务类(继承自WebMapTileServiceImageryProvider,修改了times属性,可直接设置为时间数据数组, 或者从服务自动获取时间数据填充,可结合时间轴控件)

new Cesium.GeoWebMapTileServiceImageryProvider(初始化参数:options)

Name Type Description
初始化参数:options
Properties:
Name Type Attributes Default Description
url Resource | String WMTS GetTile操作的基本URL(用于KVP编码的请求)或tile-URL模板(用于RESTful请求)。 tile-URL模板应包含以下变量:{style},{TileMatrixSet},{TileMatrix},{TileRow},{TileCol}。如果实际值是硬编码的,或者服务器不需要,则前两个是可选的。 {s}关键字可用于指定子域。
format String <optional>
'image/jpeg' 从服务器检索图像的MIME类型。
layer String WMTS请求的层名称。
style String WMTS请求的样式名称。
tileMatrixSetID String 用于WMTS请求的TileMatrixSet的标识符。
tileMatrixLabels Array <optional>
TileMatrix中用于WMTS请求的标识符的列表,每个TileMatrix级别一个。
dimensions Object <optional>
包含静态尺寸及其值的对象。
tileWidth Number <optional>
256 平铺宽度(以像素为单位)。
tileHeight Number <optional>
256 平铺高度(以像素为单位)。
tilingScheme TilingScheme <optional>
与TileMatrixSet中的拼贴组织相对应的拼贴方案。
rectangle Rectangle <optional>
Rectangle.MAX_VALUE 图层所覆盖的矩形。
minimumLevel Number <optional>
0 图像提供者支持的最低详细程度。
maximumLevel Number <optional>
图像提供程序支持的最大详细程度,如果没有限制,则为未定义。
ellipsoid Ellipsoid <optional>
椭球。如果未指定,则使用WGS84椭球。
credit Credit | String <optional>
数据源的信用,显示在画布上。
subdomains String | Array.<String> <optional>
'abc' URL模板中用于 {s} 占位符的子域。如果此参数是单个字符串,则字符串中的每个字符都是一个子域。如果是一个数组,数组中的每个元素都是一个子域。
times Array <optional>
时间维度数据集合,例如["2020-01-07","2020-10-01","2020-10-02","2020-10-03"],默认是空。
autoRequestTimeDemension Boolean <optional>
是否自动获取时间维度,默认为否,当启用时,自动获取服务端多时相时间信息填充times。
options.antiPreMultiplyAlpha Boolean <optional>
false 是否取消预乘,默认false。如果为true的话,可以解决渲染栅格瓦片黑边的问题。
Author:
  • guopei
Examples:
// 天地图墨卡托
 var tdt = new Cesium.GeoWebMapTileServiceImageryProvider({
		url: "http://{s}.tianditu.gov.cn/img_w/wmts?service=wmts&request=GetTile&version=1.0.0&LAYER=img&tileMatrixSet=w&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}&style=default&format=tiles&tk=e90d56e5a09d1767899ad45846b0cefd",
		subdomains: ['t0','t1','t2','t3','t4','t5','t6','t7'],
		layer: 'img',
		style: 'default',
		tileMatrixSetID: 'w',
		format: 'tiles'
	});
	viewer.imageryLayers.addImageryProvider(tdt);
// 天地图经纬度直投
	var tdt = new Cesium.GeoWebMapTileServiceImageryProvider({
		url: "http://{s}.tianditu.gov.cn/img_c/wmts?service=wmts&request=GetTile&version=1.0.0&LAYER=img&tileMatrixSet=c&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}&style=default&format=tiles&tk=e90d56e5a09d1767899ad45846b0cefd",
		subdomains: ['t0','t1','t2','t3','t4','t5','t6','t7'],
		layer: 'img',
		style: 'default',
		tileMatrixSetID: 'c',
		format: 'tiles',
		tilingScheme: new Cesium.GeoGeographicTilingScheme(),
	});
	viewer.imageryLayers.addImageryProvider(tdt);
// 指定time的多时相服务
  var wmts = new Cesium.GeoWebMapTileServiceImageryProvider({
      url: new Cesium.Resource({
        url: "http://192.168.30.109:9010/JDZ_DOM/wmts",
      }),
      credit: "CLIP",
      layer: layer,
      style: layer,
      format: "image/png",
      tileMatrixSetID: tileMatrixSet,
      times: ['2003-06-30 00:00:00'], //times数组中指定唯一值
      autoRequestTimeDemension: false, //自动获取时间维度不启用
      tilingScheme: new Cesium.GeographicTilingScheme(),
      tileMatrixLabels: ["1", "2", "3", "4","5", "6", "7", "8", "9", "10", "11",
        "12", "13", "14", "15", "16", "17", "18", "19", "20"],           
    });
    viewer.imageryLayers.addImageryProvider(wmts);
// 多个时间数据的多时相服务
  var wmts = new Cesium.GeoWebMapTileServiceImageryProvider({
    url: new Cesium.Resource({
      url: "http://192.168.30.109:9010/JDZ_DOM/wmts",
    }),
    credit: "CLIP",
    layer: layer,
    style: layer,
    format: "image/png",
    tileMatrixSetID: tileMatrixSet,
    times: ['2003-06-30 00:00:00','2010-06-30 00:00:00','2021-06-30 00:00:00'],//默认显示第一条时间对应的数据
    autoRequestTimeDemension: false, //自动获取时间维度不启用
    tilingScheme: new Cesium.GeographicTilingScheme(),
    tileMatrixLabels: ["1", "2", "3", "4","5", "6", "7", "8", "9", "10", "11",
      "12", "13", "14", "15", "16", "17", "18", "19", "20"],           
  });
  viewer.imageryLayers.addImageryProvider(wmts);  
// 自动获取时间数据的多时相服务
  var wmts = new Cesium.GeoWebMapTileServiceImageryProvider({
    url: new Cesium.Resource({
      url: "http://192.168.30.109:9010/JDZ_DOM/wmts",
    }),
    credit: "CLIP",
    layer: layer,
    style: layer,
    format: "image/png",
    tileMatrixSetID: tileMatrixSet,
    //times: ['2003-06-30 00:00:00','2010-06-30 00:00:00','2021-06-30 00:00:00'], //不传times
    autoRequestTimeDemension: true, //自动获取时间维度启用,默认显示获取的第一条时间对应的数据
    tilingScheme: new Cesium.GeographicTilingScheme(),
    tileMatrixLabels: ["1", "2", "3", "4","5", "6", "7", "8", "9", "10", "11",
      "12", "13", "14", "15", "16", "17", "18", "19", "20"],           
  });
  viewer.imageryLayers.addImageryProvider(wmts);   
// ArcGIS建议方案(经纬度)
   var tilingScheme = new Cesium.GeoGeographicTilingScheme({
      viewer: viewer,
      resolutions: [0.15228550437313793, 0.07614275218656896, 0.03807137609328448, 0.01903568804664224, 0.00951784402332112],
      origin: [-400, 399.9999999999998],
      extent: [73.44696, 6.3186412, 135.08583, 53.557926],
      matrixWidth: 14,
      matrixHeight: 11,
      identifier: 0
	 });
   var wmts = new Cesium.WebMapTileServiceImageryProvider({
        url: 'http://192.168.100.231:6080/arcgis/rest/services/BOU1_4M_s/MapServer/WMTS?',
        layer: 'BOU1_4M_s',
        style: 'default',
        tileMatrixSetID: 'default',
        format: 'image/png',
        tilingScheme: tilingScheme,
        maximumLevel: tilingScheme.maximumLevel,
        rectangle: tilingScheme.dataRectangle
   });
   viewer.imageryLayers.addImageryProvider(wmts);
// ArcGIS建议方案(高斯坐标)
   var tilingScheme = new Cesium.GeoProjectedTilingScheme({
        viewer: viewer,
        resolutions: [16.933367200067735, 8.466683600033868, 4.233341800016934, 2.116670900008467, 
            1.0583354500042335, 0.5291677250021167, 0.26458386250105836, 0.13229193125052918],
        origin: [-5123200.0, 1.00021E7],
        extent: [546325.4733999966, 4640460.086300001, 553366.0957999966, 4646337.4473],
        matrixWidth: 1310,
        matrixHeight: 1237,
        identifier: 0
    });
    var wmts = new Cesium.WebMapTileServiceImageryProvider({
        url: "http://192.168.100.231:6080/arcgis/rest/services/MapService_Local/shenyang1/MapServer/WMTS",
        layer: 'MapService_Local_shenyang1',
        style: 'default',
        tileMatrixSetID: 'default028mm',
        format: 'image/png',
        tilingScheme: tilingScheme,
        maximumLevel: tilingScheme.maximumLevel,
        rectangle: tilingScheme.dataRectangle
    });
    viewer.imageryLayers.addImageryProvider(wmts);
// Globe切片(高斯坐标)
   var tilingScheme = new Cesium.GeoProjectedTilingScheme({
        viewer: viewer,
        globeScaleDenominators: [72223.96373402284, 36111.98186703892, 18055.99093349196, 9027.99546674598, 4513.99773337299],
        origin: [-2.00375083427892E7, 2.00375083427892E7],
        extent: [546325.4733999966, 4640460.086300001, 553366.0957999966, 4646337.4473],
        matrixWidth: 4210,
        matrixHeight: 3148,
        identifier: 13
    });
    var wmts = new Cesium.GeoWebMapTileServiceImageryProvider({
        url: "http://192.168.100.231:8889/sy_shp_without_daihao/wmts?",
        layer: 'sy_xh_123',
        style: 'sy_xh_123',
        tileMatrixSetID: 'sy_xh_123_Matrix_0',
        format: 'image/png',
        tilingScheme: tilingScheme,
        maximumLevel: tilingScheme.maximumLevel,
        rectangle: tilingScheme.dataRectangle
    });
    viewer.imageryLayers.addImageryProvider(wmts);
Demo:

Extends

  • WebMapTileServiceImageryProvider

Methods

staticCesium.GeoWebMapTileServiceImageryProvider.getInstanceByCapabilities(options)Promise

通过请求服务元信息创建GeoWebMapTileServiceImageryProvider
Name Type Description
options Object 参数选项:
Name Type Description
viewer Viewer optional 三维球对象
url Resource | String 服务地址
layer String optional WMTS请求的图层名称
parameters Object optional 传递给服务的附加参数
Returns:
如果请求元信息成功,则创建Provider
Example:
var promise = Cesium.GeoWebMapTileServiceImageryProvider.getInstanceByCapabilities({
 viewer: viewer,
 url: 'http://192.168.100.231:6080/arcgis/rest/services/MapService_Local/shenyang1/MapServer/WMTS',
 layer: 'MapService_Local_shenyang1',
});
promise.then(function(provider) {
 viewer.imageryLayers.addImageryProvider(provider);
});

requestAssignImage(num)

指定加载数据集中的第index+1个数据图层
Name Type Description
num Number