如何移动像超级应用程序汽车对象的GMSMarker?

时间:2016-06-09 09:04:28

标签: ios objective-c iphone swift gmsmapview

我正在开展一个项目,我需要在地图上移动我的GMSMarker,就像超级应用程序一样。我在十字路口面临的问题是我需要在道路尽头改变航向和轴承(旋转)。

我希望我的标记应该像:

  1. 汽车首先将P1移动到顶点(会合点)
  2. 然后它转向P2点和
  3. 最后将会议点移至P2
  4. enter image description here

    我使用以下代码行将标记从位置P1移动到P2,但是它给出了直接距离(紫色路径)。如何找到中间坐标,即会合点以及从P1到顶点(会合点)的距离,我需要在P2方向上转动汽车标记

    func animateCarMovementonMapWithMarker() {
        let bearing: Double = self.getHeadingForDirectionFromCoordinate(Last_Location, toCoordinate: Current_Location)
        let p1: MKMapPoint = MKMapPointForCoordinate(self.Last_Location)
        let p2: MKMapPoint = MKMapPointForCoordinate(self.Current_Location)
        let dist: CLLocationDistance = MKMetersBetweenMapPoints(p1, p2)
        CATransaction.begin()
        CATransaction.setAnimationDuration(6.0)
        self.carMarker.position = self.Last_Location
        self.carMarker.position = self.Current_Location
        self.carMarker.rotation = bearing
        CATransaction.commit()
        self.driver_Last_Location = self.Current_Location
    }
    

    我每隔" 6秒"

    获得位置更新
    {{1}}

0 个答案:

没有答案