经纬志
首页 / Cesium / 使用示例

自定义瓦片影像提供者

官方的 ArcGIS MapServer 示例从远程服务取瓦片。这里用同一套接口,把每个瓦片换成 canvas 现画,调用方式完全一致。

CesiumJS 1.121 · 更新 2026-10-28
源码与运行效果
运行效果

一个影像提供者要实现什么

最少要有 tilingScheme、rectangle、tileWidth、tileHeight、maximumLevel 和 requestImage。Cesium 调用 requestImage(x, y, level) 取图,返回 canvas 或 Image 都可以。

示例把提供者写成普通对象,省掉了继承,字段一一对应就能被影像图层接受。

怎么判断瓦片位置

在 Web 墨卡托切片方案下,用 tilingScheme.tileXYToRectangle(x, y, level) 把切片号换算成经纬度范围,再按范围在 256×256 的画布上画出网格、经纬度和色带。

可以直接改的地方

位置改什么效果
maximumLevel5 改成 3切片更少、细节更糊
requestImage改画布上的绘制内容瓦片图案
tilingSchemeWebMercatorTilingScheme / GeographicTilingScheme切片方式

出错不报红:提供者的 readyPromise 只是为了兼容旧接口;请求失败时影像层会整层不显示,排查时先看控制台的网络与异常信息。