任意多邊形的面積計算(叉積)

2021-09-05 03:10:18 字數 541 閱讀 3245

有關多邊形面積計算的詳細理論這裡不做介紹,僅給出**模板,並以hdu-2036作為樣例

//寫在前面

//求任意多邊形的面積可以將多邊形劃分為n個三角形

//然後利用叉積公式求每個三角形的面積並將所有三角形面積累加起來即可

//有三角形的面積叉積計算公式:已知三角形的三個頂點

//(x1,y1),(x2,y2),(x3,y3) s=((x2-x1)*(y3-y1)-(x3-x1)*(y2-y1))/2;

//於是多邊形的面積 s=sigma(ni) ni為第i個三角形的面積

//這裡以 hdu-2036作為樣例說明

#include #include #define maxn 105

using namespace std;

struct point//點的結構體

;double cross(point p1,point p2,point p3)

point node[maxn];

int main()

}

任意多邊形面積計算

任意多邊形的面積可由任意一點與多邊形上依次兩點連線構成的三角形向量面積求和得出。向量面積 三角形兩邊向量的叉乘。如下圖 按定理,多邊形面積由p點與a g的各頂點連線所構成的三角形向量面積構成,假定多邊形頂點座標順序為a g,逆時針為正方向,則有如下結論 pab,pbc,pcd均為順時針,面積為負 p...

任意多邊形面積

給定多邊形的頂點座標 有序 讓你來求這個多邊形的面積,你會怎麼做?我們知道,任意多邊形都可以分割為n個三角形,所以,如果以這為突破點,那麼我們第一步就是把給定的多邊形,分割為數個三角形,分別求面積,最後累加就可以了,把多邊形分割為三角形的方式多種多樣,在這裡,我們按照如下圖的方法分割 s點作為起始點...

任意多邊形面積的計算

原理論述1 書中給出定理 任意多邊形的面積可由任意一點與多邊形上依次兩點連線構成的三角形向量面積求和得出。向量面積 三角形兩邊向量的叉乘。如下圖 按定理,多邊形面積由p點與a g的各頂點連線所構成的三角形向量面積構成,假定多邊形頂點座標順序為a g,逆時針為正方向,則有如下結論 pab,pbc,pc...