Skip to content

TdtImageryProvider 天地图 ​

TdtImageryProvider 用于加载天地图矢量、影像、标注和地形晕渲影像瓦片。Provider 使用天地图 Web Mercator 数据服务模板,并统一处理服务子域名、请求层级和开发者 Key。

BaseMap 用法 ​

js
const baseMap = new BaseMaps.BaseMap(viewer, {
  type: 'tdt',
  style: 'vec', // vec、cva、img、cia、ter
  key: import.meta.env.VITE_TDT_KEY,
  maximumLevel: 18,
})

style 类型 ​

style类型常见用途
vec矢量底图道路、行政区和基础地理要素
cva矢量中文标注叠加在 vec 上显示中文地名
img影像底图卫星和航空影像
cia影像中文标注叠加在 img 上显示中文地名
ter地形晕渲影像用颜色与明暗表达地貌起伏的二维背景

三维地形 ​

style: 'ter' 仍然是影像瓦片,不会改变 Cesium 地球表面的几何起伏。需要真实高程、遮挡关系和地形深度检测时,请使用 TdtTerrain:

js
const terrain = new BaseMaps.TdtTerrain(viewer, {
  key: import.meta.env.VITE_TDT_KEY,
  depthTestAgainstTerrain: true,
})

标注服务是透明瓦片。需要“影像 + 中文标注”时,可以创建两层底图资源,并将标注层放在上方:

js
const imagery = new BaseMaps.BaseMap(viewer, {
  type: 'tdt',
  style: 'img',
  key: import.meta.env.VITE_TDT_KEY,
  index: 0,
})

const labels = new BaseMaps.BaseMap(viewer, {
  type: 'tdt',
  style: 'cia',
  key: import.meta.env.VITE_TDT_KEY,
  index: 1,
})

// 页面销毁时分别释放
imagery.destroy()
labels.destroy()

构造参数 ​

参数类型默认值说明
stylestring'vec'天地图数据类型
keystring''天地图开发者 Key
urlstring内置模板覆盖默认瓦片地址
protocolstring当前页面协议指定 http 或 https
subdomainsstring[]0–7天地图服务子域名
minimumLevelnumberCesium 默认值最小请求层级
maximumLevelnumber18最大请求层级

直接创建 Provider ​

js
const provider = new BaseMaps.TdtImageryProvider({
  style: 'vec',
  key: import.meta.env.VITE_TDT_KEY,
})

const baseMap = new BaseMaps.BaseMap(viewer, { provider })

Key 配置 ​

建议通过环境变量注入 Key,不要将凭证直接提交到公开仓库:

dotenv
VITE_TDT_KEY=你的天地图Key

天地图服务的访问范围、配额和可用图层由开发者账号权限决定。如果服务域名或代理地址不同,可以通过 url 覆盖 SDK 默认模板。

基于 Apache-2.0 许可发布