如果您无法将第三方渲染产品纳入您的解决方案,则可能需要创建自己的 3D Tiles 渲染器。此方法要求您考虑以下重要因素:
内容网址
在提供仿真 3D 图块时,Map Tiles API 会返回子数据集的 URI。这些图块集 URI 不是常规网址,仅包含路径和参数组成部分。它们不包含授权请求所需的 API 密钥。如需了解详情,请参阅 3D Tiles 规范。
请求和响应
以下是写实 3D 地图块请求和响应的一些示例。您可以使用 Chrome 开发者工具检查这些元素。
根 tileset 请求示例:
https://tile.googleapis.com/v1/3dtiles/root.json?key=YOUR_API_KEY
图块集响应 URI 示例:
/v1/3dtiles/datasets/CgA/files/UlRPVEYuYnVs.json?session=CIqhrPOFvdHSYg
渲染器使用的示例图块请求网址:
https://tile.googleapis.com/v1/3dtiles/datasets/CgA/files/UlRPVEYuYnVs.json?session=CIqhrPOFvdHSYg&key=YOUR_API_KEY
https://tile.googleapis.com/v1/3dtiles/datasets/CgA/files/UlRPVEYubm9k.glb?session=CIqhrPOFvdHSYg&key=YOUR_API_KEY
在构建后续的图块请求时,您应附上图块集 URI 中显示的任何参数以及您的 API 密钥。3D Tiles API 提供以下两个参数:
session
- 3D 加载会话的内置标识符。它由 API 自动生成。在构建后续图块请求时,必须由渲染器附加。
key
- 您用于访问 3D 图块服务的 API 密钥。您必须将其附加到所有后续图块请求中。
显示提供方信息
版权归属是指确认地图图块的来源,是使用此 API 的必要条件 - 这包括 Google 品牌版权归属(徽标)以及数据版权归属。您可以在 Map Tiles API 政策页面上找到 Google 徽标。数据提供方信息会在每个图块响应中返回。在 asset
、copyright
下的 glTF 图块中查找。
{
"asset": {
"version": "2.0",
"generator": "draco_decoder",
"copyright": "Data SIO, NOAA, U.S. Navy, NGA, GEBCO;Landsat / Copernicus"
}
}
您必须在文本行中(通常在渲染底部)汇总、排序和显示此信息。这需要执行以下步骤:
从视图中的所有图块中提取所有版权信息。
使用英文分号分隔多个版权来源。
根据出现次数对信息进行排序。
在屏幕上显示版权来源,并按出现次数从多到少排序,类似于 Google 地球的做法。