在iOS中测量/计算距离

我需要计算iOS中两点之间的距离。 我可以保证至less有一个iPhone 4,所以相机的图像质量应该是好的。 这个想法是计算到使用图片的点的距离。 有一个名为easyMeasure的应用程序,正是我所需要做的。

我对毕达哥拉斯没问题,但是这让我很难过。 我将如何做这样的事情?

好吧,所以你是正确的,你需要使用正弦等。 首先,您需要findiPhone相机的镜头angular度。 要做到这一点,把摄像机放在远离墙壁的距离上,测量距离视野边缘到另一边的距离,再除以二。 要在下图中findθ,使用tanθ= opposite / adjacent,所以反tan(相反/相邻)=θ。

图片2

一旦你知道了,你只需要用户拍照,然后测量屏幕上的东西究竟有多大。 那么就用tanθ= opposite / adjacent,因为你现在知道了θ和相反的距离,相邻=相反/tanθ。

图片1

希望有所帮助!

ios7中的新更新
@import CoreLocation; @import MapKit;

CLLocation *sanFrancisco = [[CLLocation alloc] initWithLatitude:37.775 longitude:-122.4183333]; CLLocation *portland = [[CLLocation alloc] initWithLatitude:45.5236111 longitude:-122.675]; CLLocationDistance distance = [portland distanceFromLocation:sanFrancisco]; MKDistanceFormatter *formatter = [[MKDistanceFormatter alloc] init]; formatter.units = MKDistanceFormatterUnitsImperial; NSLog(@"%@", [formatter stringFromDistance:distance]); // 535 miles