我正在构建一个商店查找器,并希望实现以下工作流程:
以上情况很好,但如果地图实际上看起来没有移动,直到找到一些商店,那将是更好的用户体验。
那么,是否可以按如下方式查询Google地图:给定一个边界框,我们是否可以找到包含该特定边界框的正确缩放的Google Map 的边界,实际加载谷歌地图?
我不确定它是否可能,因为它取决于我页面中地图div的宽度,我想。
geocoder.geocode( {'address': search_text }, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
map.panTo(results[0].geometry.location);
map.fitBounds(results[0].geometry.bounds);
var bounds_to_check_for_stores = map.getBounds();
// QUESTION: get bounds_to_check_for_stores without the three preceding steps?
}
}
答案 0 :(得分:0)
google.maps.LatLngBounds
api-doc有一个方法:extend(point:LatLng)
,它允许您扩展边界以确保调整边界以包含作为传递的LatLng
点参数。 extend
方法返回已调整的LatLngBounds
。
有了这个,你可以:
Map.getBounds()
。LatLngBounds.extend
属性,调用.geometry.location
调整边界。Map.panToBounds
更改地图的视口,保持用户体验简单,因为只会对视图进行一次更改。