早上好! 我必須使用python來計算多邊形的面積。 做到這一點的公式由(對不起,不能發佈的圖片的又一..)給出Python - 不規則多邊形區域會導致負值?
(X * Y - ý * X )+(X * Y - ý * X )+ ... +(X n-1個 * Y - ý n-1個 * X )
這是我想出了的代碼。然而,它會導致(正確)負值,我不知道爲什麼。 簡單地乘以面積時間-0.5還是有我的代碼有問題是有效的? 任何幫助非常感謝!
polygon = [[0,0],[-1,5],[2,3],[1,5],[3,6],[4,5],[5,3],[8,-2],[4,-4],[2,-5]]
area = 0.0
n = len(polygon)
for i in range(n):
i1 = (i+1)%n
area += polygon[i][0]*polygon[i1][1] - polygon[i1][0]*polygon[i][1]
area *= 0.5
print 'area = ', area
我想你會發現結果的標誌只是取決於你是順時針還是逆時針旋轉點。所以,只要拿出結果的abs(),你就會好起來的。 – Duncan