求多邊形包圍區域:
已知單元格中,黑色部分為封閉邊緣,如何求出綠色部分也在包圍圈之內?
有了上面的概念之後,只需要選定乙個點作為起點並沿邊緣走一圈再回到起點,通過判斷向左側拐和向右拐的次數,若左拐次數大於右拐次數則為左側包圍,反之為右側包圍。
在給定的包圍順序下判定了左(右)側包圍,遍可獲得包圍區域
以上過程,只要封閉路徑確定,那麼左拐和右拐的次數一定不會相等。
當封閉路徑不確定時如圖:
藍色部分與黑色邊構成封閉區域,如何求綠色包圍區域?
如果按照第一種情況裡說的找乙個確定的封閉路勁是可以解決問題的,但若遇到更為複雜的情況一來找出這條確定的路徑比較困難,再者即便找出來了,也可能會包圍本不應該在包圍區域內的格仔。
回歸到問題的最本質:求包圍區域,一定是要所有可能的點都在包圍圈中,如果存在包圍洩漏,說明包圍圈不封閉,或者本身就在包圍圈外。有了這個思路,在結合第一種求包圍區域的方法,得到乙個可適應所有包圍情況的解決思路就不難了。
多邊形求面積,
這個程式很值得一博。昨天一位學地質的高中同學問我寫個程式求多邊形面積,因為他說看到excel就煩。正好前段時間在csdn上看到乙個帖子求多邊形面積,也想到了乙個演算法,於是寫了這個程式。演算法描述 乙個多邊形的面積可以由這樣兩個系列的梯形來計算,以凸多邊形舉例,在圖形上方的一系列邊和其在x軸的投影組...
求多邊形面積
可以利用多邊形求面積公式 s 0.5 x0 y1 x1 y0 x1 y2 x2 y1 xn y0 x0 yn 其中點 x0,y0 x1,y1 xn,yn 為多邊形上按逆時針順序的頂點。簡要證明 1.我們先簡單地從三個點入手 包括原點 面積s oab sabcd s oad s obc sabcd y...
求任意多邊形面積(凹多邊形和凸多邊形)
遇到問題 已知多邊形的各個左邊點,要求多邊形的面積 然後我搜尋了下看到這篇文章 這個人說的不多,但是簡單明瞭 首先已知各定點的座標分別為 x1,y1 x2,y2 x3,y3 xn,yn 則該多邊形的面積公式為 s 1 2 x1 y2 x2 y1 x2 y3 x3 y2 xk yk 1 xk 1 yk...