Tuesday, March 31, 2009

/**
* Convert Latitude Longitude Decimal To Minutes
*
* decimalToMinutes(-122.56334) returns array("deg"=>-122, "min"=>33, "sec"=>48.0234)
*
* @param int $value Value to be Converted
*/
function decimalToMinutes($value){
$pos = ($value < 0) ? -1:1;
$abs = abs(round($value, 6));
$deg = floor($abs)*$pos;
$min = floor(($abs-floor($abs))*60);
$sec = round((((($abs-floor($abs))*60)-$min)*60), 4);
return array("deg"=>$deg, "min"=>$min, "sec"=>$sec);
}
/**
* Convert Latitude Longitude Minutes To Decimal
*
* minutesToDecimal(-122 33 48.0234) returns int -122.56334
*
* @param string $value Value to be Converted
*/
function minutesToDecimal($value){
list($deg,$min,$sec) = explode(' ',$value);
$pos = ($deg < 0) ? -1:1;
$deg = abs(round($deg,6));
$min = abs(round($min,6));
$sec = abs(round($sec,6));
return round($deg+($min/60)+($sec/3600),6)*$pos;
}

Tuesday, March 24, 2009

distance between Geocodes calculation:

function getDistanceBetweenPointsNew($latitude1, $longitude1, $latitude2, $longitude2, $unit = 'Mi') {
$theta = $longitude1 - $longitude2;
$distance = (sin(deg2rad($latitude1)) * sin(deg2rad($latitude2))) + (cos(deg2rad($latitude1)) * cos(deg2rad($latitude2)) *
cos(deg2rad($theta)));
$distance = acos($distance);
$distance = rad2deg($distance);
$distance = $distance * 60 * 1.1515;
switch($unit) {
case ‘Mi’: break;
case ‘Km’ : $distance = $distance * 1.609344;
}return (round($distance,2));
}


Ref: http://marketingtechblog.com/2007/09/15/calculate-distance/

Friday, March 06, 2009

Cloud computing versus grid computing
I wonder how long will take me to understand this article in deep... I mean real deep!!!

Thursday, March 05, 2009