計算幾何 多邊形面積

2021-09-22 10:22:16 字數 950 閱讀 5316

彙總篇:計算幾何彙總

規定頂點逆時針方向的多邊形面積為正

取原點0(0,0)

s(a,b,c,d)=s(o,a,b)+s(o,b,c)+s(o,c,d)+s(o,d,a)

圖中o在外部,

obc,ocd, oda

全部是正的,加起來構成了5變形

obcda

的面積,但

oab是負面積,因此最後剛好等於

abcd

的面積。

而如果o點在多邊形內部,則四個三角形全是正面積,等式正好成立。

#includeclass point 

friend const point operator+(const point& p1,const point& p2);

friend const point operator-(const point& p1,const point& p2);

friend const point operator*(const point& p,const double& m);

friend const point operator*(const double& m,const point& p);

friend const point operator/(const point& p,const double& m);

friend ostream& operator <

};typedef point vect2;//重新命名,向量也是用座標表示

class line

};double cross(point o,point a,point b)

double polyarea(point *ex,int num)

計算幾何 多邊形

判定凸多邊形 頂點凹凸性法 判斷點在凸多邊形內外 與判定凸多邊形差不多,用判斷點與多邊形兩頂點叉乘,都大於0,點在多邊形內,小於0,點在多邊形外。水平 垂直交叉點數判別法 適用於任意多邊形包括凹凸邊形 注意到如果從p作水平向左的射線的話,如果p在多邊形內部,那麼這條射線與多邊形的交點必為奇數,如果p...

多邊形面積 ssl1213 計算幾何

中學生傑利陶醉於數學研究 他思考的問題對於專家而言可能太多簡單,但作為乙個15歲的業餘愛好者,他做得非常棒 他太熱衷思考數學問題,以至於輕易就學會了試用數學方法來解決碰到的問題 一天,他看到桌上的一張紙 他四歲的妹妹瑪利在上央畫了一些線 那些線恰好構成了乙個凹多邊形,如下圖 棒極了 他想,這些多邊形...

多邊形面積 ssl1213 計算幾何

輸入乙個多邊形,求面積。第一行是乙個整數n,代表圖形的頂點數 n 接下來的n行,每行一對實數,代表頂點座標 xi,yi 每個樣例的圖形由第乙個頂點連線第二個頂點,第二個頂點連線第三個頂點 最後第n個頂點連線第乙個頂點形成封閉多邊形。輸出圖形面積或字串 impossible 如果圖形是乙個多邊形,計算...