语义图块原型和示例服务器

Unity SDK 使用 semantictileapi.proto 中的协议缓冲区接口来检索地图项和地形图块资源。替换服务应实现此 API。我们提供了一个 Python 服务器示例,用于演示 SDK 如何传递参数,以及如何构建响应才能与 SDK 兼容。

下载归档文件

归档文件包含以下文件:

  • semantictileapi.proto 是 Unity SDK 用于检索地图项和地形图块资源的协议缓冲区定义。

  • server.py 是一个示例服务器,用于演示与 SDK 兼容的协议缓冲区序列化和传送。

  • BUILD.bazelWORKSPACE.bazel 共同构成了一个 Bazel 项目,您可以使用该项目为 Python 生成协议缓冲区绑定。如需详细了解如何安装和使用 Bazel,请参阅 https://bazel.build/

  • example_tiles.py 显示了一些有关如何使用 Python 创建 FeatureTilesTerrainTiles 的示例。

运行方法

安装 Bazel 后,您只需运行以下命令即可构建并启动服务器:

> bazel run server

如果您不想安装 Bazel,也可以使用 Protoc 构建 Python 协议缓冲区库。如需了解如何使用 protoc 工具,请参阅 Protocol Buffer Basics: Python,但我们建议使用 Bazel 来构建此示例。

您可以使用 c网址 向正在运行的服务器发送请求:

> curl 'localhost:8000/featuretiles/@120588,78656,17z?alt=proto' --output test_feature
> curl 'localhost:8000/terraintiles/@120588,78656,17z?alt=proto' --output test_terrain

如果您希望查看人类可读的格式,请使用 alt=json

> curl 'localhost:8000/featuretiles/@120588,78656,17z?alt=json'

如需详细了解地图项和地形图块格式,请参阅 semantictileapi.proto 的注释。