Gin*_*as_ 11 android google-maps angle direction driving-directions
我的Google地图中有一个标记,如下所示:

当用户开车时,我想根据他的行驶方向旋转它.我怎样才能做到这一点?我应该使用以前的位置和当前位置坐标进行计算,但我不知道如何.
hun*_*dym 38
如果您使用GPS定位用户,那么Location您进入的对象onLocationChanged包含方位.
如果您只有两个坐标(例如,您只有网络位置提供者的坐标),则可以使用Location.bearingTo()计算两个坐标的方位:
Location prevLoc = ... ;
Location newLoc = ... ;
float bearing = prevLoc.bearingTo(newLoc) ;
Run Code Online (Sandbox Code Playgroud)
如果您有方位,可以使用MarkerOptions.rotation()以下方法设置标记的旋转:
mMap.addMarker(new MarkerOptions()
.position(markerLatLng)
.icon(BitmapDescriptorFactory.fromResource(R.drawable.map_marker))
.anchor(0.5f, 0.5f)
.rotation(bearing)
.flat(true));
Run Code Online (Sandbox Code Playgroud)
您必须将锚点设置为要旋转的点,并且它也是您希望位于您设置为标记的位置的点.(0.5,0.5)是图像的中心.
| 归档时间: |
|
| 查看次数: |
16778 次 |
| 最近记录: |