我使用ipinfodb.com一段时间从用户IP获取纬度和经度以查看谷歌街景。但最近ipinfodb已经改变了他们的数据库,并且大部分纬度/经度值被改变了,因为我没有得到街景。给定IP或纬度/经度的Next&Nearest Google Streetview
我正在使用“Google Maps Javascript API V3服务”,但不确定如何访问下一个和最近的Google街景视图。你能建议吗?
问候
我使用ipinfodb.com一段时间从用户IP获取纬度和经度以查看谷歌街景。但最近ipinfodb已经改变了他们的数据库,并且大部分纬度/经度值被改变了,因为我没有得到街景。给定IP或纬度/经度的Next&Nearest Google Streetview
我正在使用“Google Maps Javascript API V3服务”,但不确定如何访问下一个和最近的Google街景视图。你能建议吗?
问候
下面一个getPanoramaByLocation方法是如何解决给定的latLng位置的给定半径范围内的街景,请注意一个例子,如果半径小于50米最近的全景将返回
var streetViewService = new google.maps.StreetViewService();
streetViewService.getPanoramaByLocation(latLng, radius, function(data, status)
{
if (status == google.maps.StreetViewStatus.OK)
{
var nearStreetViewLocation = data.location.latLng;
//...
}
});
半径不保证最接近的街道观点。例如:如果视点距离10米,但您将半径定义为1000,则最近的未选中。所以,如果你有几个点(有些真的很近,真有些远),那么我会仍然使用迭代:
var streetViewService = new google.maps.StreetViewService();
var radius = 10;
streetViewService.getPanoramaByLocation(latLng, radius, handler);
function handler(data, status) {
if (status == google.maps.StreetViewStatus.OK) {
var nearStreetViewLocation = data.location.latLng;
//...
} else {
radius += 50;
streetViewService.getPanoramaByLocation(latLng, radius, handler);
}
};
巧妙的解决办法(+1);-) – Marcelo 2012-10-27 16:06:59
这并不就近寻找解决办法:如果你扩展半径(即2000)你没有得到最近的视点。 – Tiit 2013-02-22 11:38:20