Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- data = [
- [lat,long],[lat,long],[lat,long]
- ]
- function GetCenterFromDegrees(data)
- {
- if (!(data.length > 0)){
- return false;
- }
- var num_coords = data.length;
- var X = 0.0;
- var Y = 0.0;
- var Z = 0.0;
- for(i = 0; i < data.length; i++){
- var lat = data[i][0] * Math.PI / 180;
- var lon = data[i][1] * Math.PI / 180;
- var a = Math.cos(lat) * Math.cos(lon);
- var b = Math.cos(lat) * Math.sin(lon);
- var c = Math.sin(lat);
- X += a;
- Y += b;
- Z += c;
- }
- X /= num_coords;
- Y /= num_coords;
- Z /= num_coords;
- var lon = Math.atan2(Y, X);
- var hyp = Math.sqrt(X * X + Y * Y);
- var lat = Math.atan2(Z, hyp);
- var newX = (lat * 180 / Math.PI);
- var newY = (lon * 180 / Math.PI);
- return new Array(newX, newY);
- }
Add Comment
Please, Sign In to add comment