緯度・経度から距離を算出

2点の緯度・経度情報から距離(メートル)を算出するプログラムを書きました。
参考にさせていただいたのは、以下。
緯度経度から2点間の距離を求める | ぷちのいず

本当に助かりました。ありがとうございます。
自分の場合、精度は高くなくてもよいので、上述の記事にもあった、http://oshiete.goo.ne.jp/qa/249931.htmlの近似手法を取り入れました。
Javaで書くと以下です。

      • -

//2点の緯度・経度によって距離を算出 meterで算出
private double getDistanceOfMeter( double latitude1, double longitude1, double latitude2, double longitude2 ){

double diffOfLatitude = ( latitude1 - latitude2 ) / 2.0;
double diffOfLongitude = ( longitude1 - longitude2 ) / 2.0;

double distance = 0;
//緯度の差をΔδ,経度の差をΔλ
//sin^2 (d/2) = sin^2 (Δδ/2) + (cosδ1)×(cosδ2)×sin^2 (Δλ/2)
//これを用いてsin^2(d/2)を求め,ルートをとって,arcsinをとって(ラジアンで),2倍すればdとなる
distance = Math.pow( Math.sin( diffOfLatitude ), 2.0 ) +
Math.cos( latitude1 ) * Math.cos( latitude2 )*Math.pow( Math.sin(diffOfLongitude ), 2.0 );

//6370(km)*1000(m)*2.0 = 12740000
//pai( 3.1415 )/180.0 = 0.017452778
distance = 12740000*Math.asin( Math.sqrt( distance )*0.017452778 );
//Log.e("*****dist", Double.toString( distance )); //Androidプログラム用
return distance;
}

スゲー読みづらい。はてブでの最適なソースコードの貼り付け方を調べないと。。。