建筑物轮廓和入口

建筑物轮廓是一组纬度/经度坐标对,用于定义一个 2D 多边形,表示建筑物覆盖的地球表面区域。您可以使用此多边形在地图上绘制建筑物的轮廓。入口是指一个纬度/经度坐标对,用于定义地点的入口和出口位置;例如,建筑物的门。

其他参数

地理编码请求反向地理编码请求地点地理编码请求中添加 extra_computations=BUILDING_AND_ENTRANCES,以便在响应中接收入口和建筑物轮廓。

示例请求

以下查询启用美国某餐厅的建筑物轮廓和入口 美国加利福尼亚州山景城:

https://maps.googleapis.com/maps/api/geocode/json?place_id=ChIJ4TTDdzS3j4AR78EQgu5EADA&extra_computations=BUILDING_AND_ENTRANCES&key=YOUR_API_KEY

示例响应

上述查询的响应如下所示:

{
  "entrances": [
    {
      "location": {
        "lat": 37.3925065,
        "lng": -122.0799465
      },
      "building_place_id": "ChIJVeHddzS3j4ARFZJVu4Cf27o"
    }
  ],
  "buildings" : [
    {
      "building_outlines" : [
        {
          "display_polygon" : {
            "coordinates" : [
              [
                [
                    -122.080188246116,
                    37.3926407183216
                ],
                [
                    -122.080281351765,
                    37.3924887558601
                ],
                [
                    -122.080023707261,
                    37.392390122414
                ],
                [
                    -122.079926266852,
                    37.3925369491992
                ],
                [
                    -122.080188246116,
                    37.3926407183216
                ]
              ]
            ],
            "type" : "Polygon"
          }
        }
      ],
      "place_id" : "ChIJVeHddzS3j4ARFZJVu4Cf27o"
    }
  ],
}

启用此功能后,系统会返回 2 个数组: buildings[]entrances[]

每个 entrances 结果都包含以下字段:

  • location 是入口的纬度/经度坐标。
  • building_place_id 是包含入口的建筑物的地点 ID。请注意,此参数并非始终会填充。

每个 buildings 结果包含以下字段:

  • place_id 是相应建筑物的唯一标识符。如需了解详情,请参阅地点 ID 概览
  • building_outlines[] 是与相应建筑物关联的轮廓数组。目前,此数组只有一个条目。每个对象 building_outlines[] 具有以下字段:
    • display_polygon 是多边形的 GeoJSON 编码,使用 RFC 7946 格式近似表示建筑物覆盖的地球表面面积。请注意,RFC 7946 格式支持多边形,因此一个 display_polygon 对象可以表示多个多边形。

覆盖率

此功能在所有地区均可使用;不过,并非所有建筑物都有轮廓或入口,并且覆盖范围因地区而异。此外,您还应该 预计会收到包含建筑物轮廓但不含 进入次数。入口覆盖率预计会随着时间的推移而提高。

反馈

这是一项实验性功能。如果您能提供反馈,我们将不胜感激。 buildings-in-geocoding-feedback-channel@google.com.