【发布时间】:2013-01-15 17:37:39
【问题描述】:
我不确定这是否可能;但我想做的是在谷歌的街景中获取放大窗格的gps坐标(我认为这是它的名字?它通常由一个半透明的矩形或椭圆形表示,请参见下图):
面板在鼠标移动时围绕街景移动,并在建筑物、墙壁或道路旁边呈现。
理想情况下,我想绑定到鼠标移动事件并获取放大窗格的位置,但在阅读了 API 之后,这似乎是不可能的。
我可以通过在全景图上为“position_changed”事件添加监听器来从全景图中获取纬度和经度坐标:
google.maps.event.addListener(panorama, 'position_changed', function( ) {
console.log( 'position', panorama.getPosition() );
});
我也可以通过听pov_changed获取航向和俯仰信息:
google.maps.event.addListener(panorama, 'pov_changed', function( ) {
console.log( 'pov', panorama.getPov() );
});
我正在使用 Google Maps Javascript API V3。
感谢您的宝贵时间。
更新 ====> 如果我查看全景生成的源并打开 SVG 对象,我可以看到两个在鼠标移动时被修改的对象。一个 Ellipse 对象,代表道路上的面板:
<ellipse fill="white" fill-rule="evenodd" visibility="hidden" fill-opacity="0.5" cx="658" cy="223" rx="30" ry="5"></ellipse>
还有一个路径对象,它代表建筑物或墙上的面板。
<path fill="white" fill-rule="evenodd" visibility="hidden" fill-opacity="0.5" d="M400 53 L402 -22 L299 -65 L296 24 Z"></path>
所以我可能会找到窗格的尺寸,但不确定是否可以使用此信息从用户当前位置找到窗格的位置。
【问题讨论】:
-
这两个事件不使用的原因是什么?
-
@SalmanA,因为事件没有给出我需要的位置。对不起,我不认为我解释得很好。我添加了一张图片来帮助澄清:tinypic.com/r/5jy8n6/6 我想获取图像中半透明矩形的位置。矩形随鼠标移动并将自身固定在建筑物和道路上。所以,基本上在那个例子中,我想知道墙壁的 GPS 位置。
标签: javascript google-maps-api-3 google-street-view