先給出地點座標類的定義。
public class geocoordinate
}public double longitude
}public geocoordinate(double latitude, double longitude)
public override string tostring()
,", latitude, longitude);
}}
下面給出完整的計算方法。
///
/// 根據輸入的地點座標計算中心點
///
///
///
public geocoordinate getcenterpointfromlistofcoordinates(listgeocoordinatelist)
x = x / total;
y = y / total;
z = z / total;
double lon = math.atan2(y, x);
double hyp = math.sqrt(x * x + y * y);
double lat = math.atan2(z, hyp);
return new geocoordinate(lat * 180 / math.pi, lon * 180 / math.pi);
}
對於400km以下時,可以採用下面的簡化計算方法。
///
/// 根據輸入的地點座標計算中心點(適用於400km以下的場合)
///
///
///
public geocoordinate getcenterpointfromlistofcoordinates(listgeocoordinatelist)
lat /= total;
lon /= total;
return new geocoordinate(lat * 180 / math.pi, lon * 180 / math.pi);
}
詳細的演算法說明,可以參考。
擴充套件閱讀。
找出多邊形的中心點
找出多邊形的中心點 b2vec2 findcentroid vector vertices 代替box2d 做檢查,我自己處理異常總比box2d報錯直接導致程式不能再執行了的強 if area flt epsilon else return c b2vec2 findcentroid b2vec2 ...
求取多邊形矩形包圍框的中心點方法
今天下午做了一下遊戲功能的擴充,不料又落馬了,記錄一下 求取多邊形的中心位置 該方法是最原始版,之前因為用的少,所以沒有發覺到邏輯上存在錯誤 added by bruce yang on 2012.09.02.15.30 實踐證明,這個方法的邏輯是錯誤的,汲取這個教訓 b2vec2 getpolyc...
計算旋轉中心點座標
記旋轉角為 和 計算採用弧度制 作用 將數值浮點到8位小數 const parsenumber num 抽象成如下數學模型 已知圓上任意一點座標a x,y 過該點的直徑與x負軸的夾角為 半徑r,求圓心座標 target是乙個json物件,裡邊包含長寬 旋轉角 位置等資訊if target objec...