【问题标题】:Loading Google Street View Image API by panorama ID rather than location通过全景 ID 而不是位置加载 Google Street View Image API
【发布时间】:2012-07-18 08:47:46
【问题描述】:

街景图像 API(documented here)提供特定位置的静态图像。但是,它不接受用于加载特定全景图的全景图 ID 参数。

最近添加到 Google 地图的街景图像已“脱离地图”,只能通过全景 ID(panoid URL 参数)访问,例如 these hot-tub monkeysthis donkey。如果您从 URL 中删除 panoid,则为 monkeys don't load。作为对比,这个picture of a tree 不需要panoid 来加载街景全景图。

通过 API 加载这些全景图时会出现相同的行为。 Google Maps API docs 对 panoid 有以下说法:

返回街景全景图的当前全景图 ID。此 id 仅在浏览器的当前会话中是稳定的。

但是,如上图所示,全景图 ID 与当前会话无关。

我的问题是 Google Street View Image API 不接受 panoid,所以我无法找到获得猴子的静态图像。 static image of the tree 有效,但我得到 the monkeys 的“无图像”。

为什么这些街景不能在 API 上按位置提供,有没有办法从全景 ID 加载静态图像?

【问题讨论】:

    标签: google-maps google-static-maps google-street-view


    【解决方案1】:

    我认为它有点像黑客,但这是你的猴子:

    http://cbk0.google.com/cbk?output=thumbnail&w=500&h=500&panoid=-_0l0tU3lKz0JtaEsqJk7w

    我使用this 站点作为参考

    【讨论】:

    • 谢谢,这是一个开始,但缩略图服务还有很多其他缺点。如果他们只支持 panoids,我宁愿使用官方 API。
    • 你也可以只使用法线贴图的url 例如:maps.google.com/…
    • 您在这里的建议不正确。请求cbk0.google.com/cbk?不是公共 API 的一部分,因此不可靠。另一个答案链接到实际的 API (maps.googleapis.com/maps/api/streetview),这是正确的做法。
    【解决方案2】:

    您缺少三个参数:pov、heading 和 pitch,因此您无法看到猴子图像。

    使用全景 ID 调用街景图像 API 时,请尝试使用 &pano=#panoid。

    The monkey

    【讨论】:

      【解决方案3】:

      这里是使用 PanoID 的网址

      https://maps.googleapis.com/maps/api/streetview?size=300x150&pano=YOUR_PANOID&heading=0&pitch=0&key=YOUR_API_KEY

      您可以通过提供标题值来移动全景视图。在上面的例子中默认为零。

      【讨论】:

      • 由于新的 ID 更长,确实有斜线,有时以“F:-”开头,有时不是,我很好奇 ID 应该如何格式化。我的所有模式都不起作用。您能否描述确切如何格式化 PanoID?
      • 请注意,现有街景图像 api 中存在一个错误,当您传递新的更长的 panoID 时,它不会返回图像,特别是带有 F:- (photosphere) 的图像。错误报告可以在这里找到:issuetracker.google.com/issues/35831151
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多