我目前正在MapFragment中定义多个GroundOverlay。我正在通过LatLngBounds创建每个GroundOverlay,并且大部分都是对齐的;然而,一些GroundOverlays最终略有偏离。
如果我在创建后记录边界,它们符合我的期望。我第二次记录它们时,它们稍微偏离了。
LatLngBounds bounds = new LatLngBounds(new LatLng(point1_lat, point1_lon), new LatLng(point2_lat, point2_lon));
Log.d(TAG, "Bounds southwest: " + bounds.southwest.latitude + ", " + bounds.southwest.longitude);
Log.d(TAG, "Bounds northeast: " + bounds.northeast.latitude + ", " + bounds.northeast.longitude);
GroundOverlay groundOverlay = getMap().addGroundOverlay(new GroundOverlayOptions()
.image(bitmapDescriptor)
.positionFromBounds(bounds)
);
Log.d(TAG, "southwest: " + groundOverlay.getBounds().southwest.latitude + ", " + groundOverlay.getBounds().southwest.longitude);
Log.d(TAG, "northeast: " + groundOverlay.getBounds().northeast.latitude + ", " + groundOverlay.getBounds().northeast.longitude);
为什么GroundOverlay创建会使纬度和经度发生变化?
答案 0 :(得分:0)
可能会调整图像大小以确保宽度/高度的长度为2的幂。来自文档......
注意:将图像添加到地图时,它将转换为边长为2的图像。您可以使用尺寸为2的尺寸的原始图像来避免此转换 - 例如,128x512或1024x1024。
安迪。