解释我的问题并不容易,但我会努力的。
我有一个android GoogleMap,在它的顶部,我有一个ImageView始终位于它的中心。如果我拖动/平移地图,图钉将始终位于GoogleMap的中心。
现在,我在地图上的某个地方添加了一个标记。我想缩放以使中心点保持在地图的中心,并且标记在地图中可见,并且达到最高缩放级别。
问题是,如果我只是检查标记是否在地图的边界内,然后继续放大/缩小直到它,这个过程将始终重复,即尝试放大,如果标记在外面,然后缩小。
问题是我依赖于OnCameraChange侦听器,每当我放大或缩小时,它都会不断调用自己,因此,放大/缩小的过程将无限期地发生
journeyGoogleMap.setOnCameraChangeListener(new OnCameraChangeListener()
{
@Override
public void onCameraChange(final CameraPosition position)
{
基本上,我需要的是一个函数,其中我可以提供中心LatLng和markerLatLng,它会自动计算LatLngBounds,确保我的中心位于LatLng边界的中心,然后我可以简单地使用
public static CameraUpdate newLatLngBounds (LatLngBounds bounds, int width, int height, int padding)
如下面的链接所示https://developers.google.com/maps/documentation/android/reference/com/google/android/gms/maps/CameraUpdateFactory#newLatLngBounds(com.google.android.gms.maps.model.LatLngBounds,int,int,int)
如果你还需要澄清,请告诉我
使用googleMap.get投影(). getVisibleArea()
获取屏幕的所有四个角作为形成梯形的LatLng
值。计算梯形与通过中心和标记绘制的线相交的位置。比例因子是(中心到标记的距离/中心到交叉点的距离)。现在只需使用此比例因子相对于中心缩放梯形。这是新的可见区域。
您还可以使用getVisibleRegion()。使用latLngBounds简化计算,但请注意,返回矩形的某些区域实际上不可见。
您需要从两点计算LatLngBounds
:
第二个计算如下:
LatLng other = new LatLng(2 * center.latitude - position.latitude, 2 * center.longitude - position.longitude);
参见LatLngBoundsUtils。一般解决方案的fromcenter和positions。
我正在使用Android API的GoogleMaps和一个自定义的TileProvider,它使用URL获取缩放/x/y格式的平铺,以显示自定义的世界地图。 这里没什么特别的。该应用程序用于使用开放式街道地图。我注意到,在一定的缩放级别上,它会显示更详细的图像。 与谷歌地图相比,OSM的zoomlevel似乎有所不同。这会导致OSM的URL中出现更高的缩放值,而GoogleMaps会将更低的值放
我使用的是谷歌地图API v3。我在地图上添加了一些带有信息的标记。双击(缩放)后,将选择my infowindow的内容。它不是那么友好的用户... null 你知道如何避免在信息中选择文本吗?谢了。
你知道吗?
我有一个网页上的现有地图,使用以下脚本段正确缩放和居中:var mapOptions={center:{lat: 43.57023,lng:-79.48676},缩放: 12}map=newgoogle.maps.Map(document.getElementById(地图画布), mapOptions); 然后,我使用以下命令添加kml层:var myLayer=new google.maps.
所以我看到了一个特殊的例外,我敢肯定的是谷歌地图的绘图代码。 我有一个片段,在那里我以编程方式添加了一个支持地图片段,然后我在其中操纵谷歌地图实例。 这是stacktrace: 我无法可靠地复制它(尽管这种情况经常发生),我已经查看了ReadWriteDirectByteBuffer和ShortToByteBufferAdapter,但没有任何东西突然出现在我面前。 有什么想法吗?
我有问题加载一个谷歌地图在我的片段。一切都从一个循环器视图适配器开始,该适配器启动活动“ViatGedetAllViewActivity”: 这是我的DetallViewActivity: =2 03-24 02:55:53.881 639-7362/com.example.usuari.MyApplication3 w/ResourcesManager:GetTopleVelResources: