我目前正在开发一个 android 项目,该项目需要在地图上放置当前位于地图视野中的每个地方的标记(从 Google Maps Android API v2 创建)标记。
我在windows azure服务器上使用数据库,我正在获取所有的记录,这些记录的纬度和经度在一个圆圈内,原点在设备位置,半径是中心到手机角落/侧面的距离.
如何获得地图中心到一侧的距离?以及如何将其转换为十进制度?
我目前正在开发一个 android 项目,该项目需要在地图上放置当前位于地图视野中的每个地方的标记(从 Google Maps Android API v2 创建)标记。
我在windows azure服务器上使用数据库,我正在获取所有的记录,这些记录的纬度和经度在一个圆圈内,原点在设备位置,半径是中心到手机角落/侧面的距离.
如何获得地图中心到一侧的距离?以及如何将其转换为十进制度?
您可以从地图中获取 LatLngBounds
LatLngBounds bounds = mMap.getProjection().getVisibleRegion().latLngBounds;
使用边界的northeast
和southwest
角,您应该能够查询您的数据库以仅选择您感兴趣的标记。
您还可以检查标记是否在该 LatLngBounds 内
bounds.contains(yourLatLngFromAzure)
yourLatLngFromAzure 是一个com.google.android.gms.maps.model.LatLng