1 回答

TA貢獻1951條經驗 獲得超3個贊
/// <summary>
/// 多邊形面積計算(不論凸凹)
/// </summary>
/// <param name="N">坐標點數即多邊形的邊數</param>
/// <param name="X">坐標的橫坐標集合</param>
/// <param name="Y">坐標的縱坐標集合</param>
/// <returns>多邊形的面積</returns>
public static double Area(int N, double[] X, double[] Y)
{
double area;
if (N < 3)
{
return 0;
}
area = Y[0] * (X[N - 1] - X[1]);
for (int i = 1; i < N; i++)
{
area += Y * (X[(i - 1)] - X[(i + 1) % N]);
}
return area / 2;
}
可將經緯度轉換成二維坐標后使用上面的方法計算
- 1 回答
- 0 關注
- 1071 瀏覽
添加回答
舉報