2013年1月7日月曜日

地図上の2点間の距離を計算するライブラリ - ZFHaversine

Haversine とは日本語で三角法の半正矢を指す。このライブラリは2つの緯度・経度間の距離を計算する。




地球は球体なので2点間の距離を出すには平面のような簡単な式は使えない。そこで半正矢関数を利用するとのこと。

ライブラリ自体はこんな感じで簡単に使える。
ZFHaversine *distance = [[ZFHaversine alloc] initWithLatitude1:latitude1
                                                    longitude1:longitude1
                                                     latitude2:latitude2
                                                    longitude2:longitude2];

NSLog(@"Kilos %f", [distance kilos]);
NSLog(@"Miles %f", [distance miles]);
NSLog(@"Nautial Miles %f", [distance nauticalMiles]);
NSLog(@"Meters %f", [distance meters]);
NSLog(@"Feet %f", [distance feet]);
NSLog(@"Inches %f", [distance inches]);
結果が実際の単位(キロメートルやマイル)で取れる。地味だが便利。

ライセンス:MIT


(参考)


0 件のコメント:

コメントを投稿