允许在地址与地理坐标之间进行转换。
以下示例展示了如何使用此类查找与科罗拉多州“Main St”地点最匹配的九个地点,将其添加到地图中,然后将其嵌入到新的 Google 文档中。
// Find the best matches for "Main St" in Colorado. const response = Maps.newGeocoder() // The latitudes and longitudes of southwest and northeast // corners of Colorado, respectively. .setBounds(36.998166, -109.045486, 41.001666, -102.052002) .geocode('Main St'); // Create a Google Doc and map. const doc = DocumentApp.create('My Map'); const map = Maps.newStaticMap(); // Add each result to the map and doc. for (let i = 0; i < response.results.length && i < 9; i++) { const result = response.results[i]; map.setMarkerStyle(null, null, i + 1); map.addMarker(result.geometry.location.lat, result.geometry.location.lng); doc.appendListItem(result.formatted_address); } // Add the finished map to the doc. doc.appendImage(Utilities.newBlob(map.getMapImage(), 'image/png'));
另请参阅
方法
方法 | 返回类型 | 简介 |
---|---|---|
geocode(address) | Object | 获取指定地址的大致地理坐标。 |
reverse | Object | 获取指定地理点的大致地址。 |
set | Geocoder | 设置应在结果中获得额外偏好的区域的边界。 |
set | Geocoder | 设置结果中使用的语言。 |
set | Geocoder | 设置解读地点名称时要使用的区域。 |
详细文档
geocode(address)
获取指定地址的大致地理坐标。
// Gets the geographic coordinates for Times Square. const response = Maps.newGeocoder().geocode('Times Square, New York, NY'); for (let i = 0; i < response.results.length; i++) { const result = response.results[i]; Logger.log( '%s: %s, %s', result.formatted_address, result.geometry.location.lat, result.geometry.location.lng, ); }
参数
名称 | 类型 | 说明 |
---|---|---|
address | String | 住址 |
返回
Object
- 包含地理编码数据的 JSON 对象,如此处所述
reverse Geocode(latitude, longitude)
获取给定地理坐标的大致地址。
// Gets the address of a point in Times Square. const response = Maps.newGeocoder().reverseGeocode(40.758577, -73.984464); for (let i = 0; i < response.results.length; i++) { const result = response.results[i]; Logger.log( '%s: %s, %s', result.formatted_address, result.geometry.location.lat, result.geometry.location.lng, ); }
参数
名称 | 类型 | 说明 |
---|---|---|
latitude | Number | 相应点的纬度 |
longitude | Number | 点的经度 |
返回
Object
- 包含反向地理编码数据的 JSON 对象,如此处所述
另请参阅
set Bounds(swLatitude, swLongitude, neLatitude, neLongitude)
设置应在结果中获得额外偏好的区域的边界。
// Creates a Geocoder that prefers points in the area of Manhattan. const geocoder = Maps.newGeocoder().setBounds( 40.699642, -74.021072, 40.877569, -73.908548, );
参数
名称 | 类型 | 说明 |
---|---|---|
sw | Number | 边界西南角的纬度 |
sw | Number | 边界西南角的经度 |
ne | Number | 边界东北角的纬度 |
ne | Number | 边界东北角的经度 |
返回
Geocoder
- 用于简化调用链接的 Geocoder 对象
另请参阅
set Language(language)
set Region(region)
设置解读地点名称时要使用的区域。支持的地区代码与 Google 地图支持的 ccTLD 相对应。例如,地区代码“uk”对应于“maps.google.co.uk”。
// Creates a Geocoder with the region set to France. const geocoder = Maps.newGeocoder().setRegion('fr');
参数
名称 | 类型 | 说明 |
---|---|---|
region | String | 要使用的地区代码 |
返回
Geocoder
- 用于简化调用链接的 Geocoder 对象