2012-12-11 51 views
2

我目前在MapFragment中定义了多个GroundOverlays。我使用LatLngBounds创建每个GroundOverlay,并且大部分内容都对齐;然而,一些GroundOverlays结束了一点点。创建后GroundOverlay边界发生变化

如果我在创建后记录边界,它们符合我的期望。我第二次登录它们时,它们稍微偏离了一点。

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

它可能是图像被调整,以确保宽度/高度有长度是2.从文档的动力......

注意:当图像被添加到该地图将被转换为具有两个幂的边的图像。您可以通过使用维度为2的原始图像来避免此转换 - 例如,128x512或1024x1024。

Andy。