Skip to content

GIS 地图操作 ​

目录 ​

1. 添加 GIS 地图 ​

引入版本:3.1 起支持

功能描述: ​

在三维场景中添加 GIS 地图

调用方法: ​

JavaScript
let jsonData = {
  id: 'idObj',
  name: 'layerName',
  maps: [{
  mapUrl: 'http://mapserver/beijing/tileset.json',
  mapType: 'TMS',
  mapTokenName: "tk",
  mapTokenValue: "ABCDEFG",
  mapZOffset: 0,
  mapLOD: 2
  }, {
  mapUrl: 'http://mapserver/beijing/tileset.json',
  mapType: 'TMS',
  mapTokenName: "tk",
  mapTokenValue: "ABCDEFG",
  mapZOffset: 0,
  mapLOD: 2
  }]
  terrainUrl: 'http://mapserver/beijing/tileset.json',
  terrainType: "terrain",
  terrainToken: 'ABCDEFG',
  visible: true,
  alpha: 0.5,
};
appInstance.uniCall('addGISMap', jsonData, (result) => {
  console.log(result);
});
参数描述: ​
属性类型说明端渲染流渲染
idString图层对象 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别支持支持
nameString图层名称,支持为图层自定义名称支持支持
mapUrlString地图瓦片地址 流渲染 TMS 类型的 map 填写 tileset.json 文件的完整 URL 路径,WMTS 类型的填写不带 Token 的图层地址,类似:http://t0.tianditu.gov.cn/img_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILEMATRIX={z}&TILEROW={x}&TILECOL={y} 端渲染填写https://abc.xyz.com/{z}/{x}/{y}.jpg 或 png 的格式,只支持 256x256 的影像瓦片。支持支持
mapTypeString地图瓦片数据格式类别,支持“TMS”或“WMTS”两种类型支持支持
mapTokenNameString可以为"",或者如果地图瓦片需要 token,这里填写 token 的 name,在 URL 请求时当作 parameter 的 key 传入支持支持
mapTokenValueString可以为"",或者如果地图瓦片需要 token,这里填写 token 的 value,在 URL 请求时当作 parameter 的 value 传入支持支持
mapZOffsetNumber在请求地图地址时对于 Z 参数的偏移量,可以是-1、0、1 或其他整数,默认值 0不支持支持
mapLODNumber地图瓦片数据细节加载系数,表示在当前视野距离下,加载地图层级的级别系数。流渲染默认值是 2,如果想更加清晰,可以设置 1 或者 0.5支持支持
terrainUrlString高程瓦片地址 流渲染需要是 terrain 格式的,填写 tileset.json 文件的完整 URL 路径。端渲染填写:https://abc.xyz.com/tiles/terrain-rgb/{z}/{x}/{y}.png?key={apiKey},文件格式应该是 512 x 512 的 PNG,格式是 terrain-rgb, nasadem, terrarium 之一。例如 mapbox,maptiler 或者 nasadem.xyz 的高程瓦片服务。支持支持
terrainTypeString地图的高程数据格式类别,流渲染为“terrain”或者为“”,端渲染为 "terrain-rgb","nasadem",或 "terrarium" 之一。支持支持
terrainTokenString预留字段支持支持
visibleBoolean显隐控制,true:显示;false:隐藏支持支持
alphaNumber透明度,0:完全透明;1:完全不透明支持支持
回调数据: ​
JSON
{
  "result": 1,
  "message": "成功。"
}
回调数据参数描述: ​
属性类型说明
resultNumber1:代表成功;0:代表失败
messageString成功或者失败原因

返回本章目录

2. 更新 GIS 地图数据 ​

引入版本:3.1 起支持

功能描述: ​

更新三维场景中添加 GIS 地图的数据

调用方法: ​

JavaScript
let jsonData = {
  id: 'idObj',
  name: 'layerName',
  mapIndex: 0,
  mapUrl: 'http://mapserver/beijing/tileset.json',
  mapTokenName: "tk",
  mapTokenValue: "ABCDEFG",
  terrainUrl: 'http://mapserver/beijing/tileset.json',
  terrainType: 'TMS',
  terrainToken: 'ABCDEFG',
};
appInstance.uniCall('updateGISMap', jsonData, (result) => {
  console.log(result);
});
参数描述: ​
属性类型说明
idString图层对象 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别
nameString图层名称,支持为图层自定义名称
mapIndexNumber更新 map 图层数组中的编号,map 图层数组是在 addGISMap 时通过 maps 属性传入的。编号从 0 开始。如果找不到编号,或者编号超出范围,会更新默认 0 号。
mapUrlString地图瓦片地址 流渲染 TMS 类型的 map 填写 tileset.json 文件的完整 URL 路径,WMTS 类型的填写不带 Token 的图层地址,类似:http://t0.tianditu.gov.cn/img_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILEMATRIX={z}&TILEROW={x}&TILECOL={y} 端渲染填写https://abc.xyz.com/{z}/{x}/{y}.jpg 或 png 的格式,只支持 256x256 的影像瓦片。
mapTokenNameString可以为"",或者如果地图瓦片需要 token,这里填写 token 的 name,在 URL 请求时当作 parameter 的 key 传入
mapTokenValueString可以为"",或者如果地图瓦片需要 token,这里填写 token 的 value,在 URL 请求时当作 parameter 的 value 传入
terrainUrlString高程瓦片地址 流渲染需要是 terrain 格式的,填写 tileset.json 文件的完整 URL 路径。端渲染填写:https://abc.xyz.com/tiles/terrain-rgb/{z}/{x}/{y}.png?key={apiKey},文件格式应该是 512 x 512 的 PNG,格式是 terrain-rgb, nasadem, terrarium 之一。例如 mapbox,maptiler 或者 nasadem.xyz 的高程瓦片服务。
terrainTypeString地图的高程数据格式类别,流渲染为“terrain”或者为“”,端渲染为 "TMS"或者为“”
terrainTokenString预留字段
回调数据: ​
JSON
{
  "result": 1,
  "message": "成功。"
}
回调数据参数描述: ​
属性类型说明
resultNumber1:代表成功;0:代表失败
messageString成功或者失败原因

返回本章目录

3. 更新 GIS 地图样式 ​

引入版本:3.1 起支持

功能描述: ​

更新三维场景中添加 GIS 地图的样式

调用方法: ​

JavaScript
let jsonData = {
  id: 'idObj',
  mapIndex: 0,
  mapLOD: 2,
  visible: true,
  alpha: 0.1,
};

appInstance.uniCall('updateGISMapStyle', jsonData, (result) => {
  console.log(result);
});
参数描述: ​
属性类型说明
idString图层对象 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别
mapIndexNumber更新 map 图层数组中的编号,map 图层数组是在 addGISMap 时通过 maps 属性传入的。编号从 0 开始。如果找不到编号,或者编号超出范围,会默认更新 0 号。可以单独控制每个图层的现隐,如果全部图层的 visible 是 false,或者 apha 是 0,应该将地形全部隐藏。
mapLODNumber地图瓦片数据细节加载系数,表示在当前视野距离下,加载地图层级的级别系数。流渲染默认值是 2,如果想更加清晰,可以设置 1 或者 0.5
visibleBoolean显隐控制,true:显示;false:隐藏
alphaNumber透明度,0:完全透明;1:完全不透明
回调数据: ​
JSON
{
  "result": 1,
  "message": "成功。"
}
回调数据参数描述: ​
属性类型说明
resultNumber1:代表成功;0:代表失败
messageString成功或者失败原因

4. 删除 GIS 地图 ​

引入版本:3.0 起支持

功能描述 ​

删除 GIS 地图

调用方法 ​

JavaScript
let jsonData = {
  id: 'gisMapLayer', 
  overlayType: 'gisMap', 
};

appInstance.uniCall('removeOverlay', jsonData, (result) => {
  console.log(result);
});

参数描述 ​

属性类型说明
idString图层对象 id,新建时调用者自己传入的唯一标识,用于各种操作的对象识别
overlayTypeString图层对象类别

回调数据 ​

JSON
{
  "result": 1,
  "message": "成功。"
}

回调数据参数描述 ​

属性类型说明
resultNumber1:代表成功;0:代表失败
messageString成功或者失败原因

返回本章目录