嗨,我正在尝试开发一个使用iPhone的GPS和指南针的应用程序,以便指向某个特定位置的指针(就像指南针总是指向北方)。位置是固定的,无论用户位于何处,我总是需要指针指向该特定位置。我有这个位置的Lat / Long坐标,但不知道如何使用指南针和GPS指向该位置...就像http://www.youtube.com/watch?v=iC0Xn8hY80w此链接1:20'我已经知道某些程序标题= atan2(sin(lon2-lon1)* cos(lat2),cos(lat1)* sin(lat2) - sin(lat1)* cos(lat2)* cos(lon2-lon1))然后乘以180 /π然后加360如 - (CLLocationDirection)directionToLocationCLLocati on *)location {
CLLocationCoordinate2D coord1 = self.coordinate; CLLocationCoordinate2D coord2 = location.coordinate;
CLLocationDegrees deltaLong = coord2.longitude - coord1.longitude; CLLocationDegrees yComponent = sin(deltaLong)* cos(coord2.latitude); CLLocationDegrees xComponent =(cos(coord1.latitude)* sin(coord2.latitude)) - (sin(coord1.latitude)* cos(coord2.latitude)* cos(deltaLong));
CLLocationDegrees radians = atan2(yComponent,xComponent); CLLocationDegrees度= RAD_TO_DEG(弧度)+ 360;
返回fmod(度,360); } 我设置了一个箭头,想让箭头旋转。但结果不对。 并且它不使用当前标题。我认为它必须使用当前标题与结果相结合来旋转箭头。
任何人都可以给我一些解决方案。