多邊形上點的順序排序 如何通過點建立多邊形?(上)

2021-10-18 21:14:08 字數 1251 閱讀 9015

第一步我們需要將現有的火山噴發點轉為線,可以使用

點集轉線

工具。

線欄位表示這些點會根據不同的位置建立單獨的閉合線段,排序字段表示在這個位置的多個點要如何連線,結果如下:

結果會變成下面這樣:

舉個簡單的例子,比如下面這兩張圖,點的順序不一樣,結果就完全不同了。

因此,這幾個引數的設定是非常重要的!

02 要素轉面   

有了閉合曲線以後,我們就可以通過

要素轉面

工具將線要素轉為面要素。

03 要素包絡矩形   

除了之前介紹的方法以外,我們看看有沒有其它方法生成多邊形呢?

答案當然是肯定的!就是

要素包絡矩形轉面

工具!這個工具的引數非常簡單,只需要將我們第一步生成的線作為輸入要素就可以執行了。

結果和之前的要素轉面工具的結果完全不一樣!

這個工具會找到每一條線段位於最外圍的折點,提取它們的xy座標,從而得到包絡矩形上下左右四個角點的座標,最後將它們連線起來形成新的面要素。

注意:絕對水平的線(平行於x軸)和絕對垂直的線(平行於y軸),沒有辦法輸出結果!因為這兩種線得到的面的面積為0!

——end——   

三點順序及簡單多邊形

一 三點順序 思路 利用向量叉積 即叉乘 判斷是逆時針還是順時針 設a x1,y1 b x2,y2 c x3,y3 則三角形兩邊的向量分別是 ab x2 x1,y2 y1 ac x3 x1,y3 y1 則ab和ac的叉積為 2 2的行列式 x2 x1,y2 y1 x3 x1,y3 y1 值為 x2 ...

找出多邊形的中心點

找出多邊形的中心點 b2vec2 findcentroid vector vertices 代替box2d 做檢查,我自己處理異常總比box2d報錯直接導致程式不能再執行了的強 if area flt epsilon else return c b2vec2 findcentroid b2vec2 ...

如何計算任意多邊形的面積?

對二維平面上的乙個多邊形 phi 的頂點按順序 順時針或逆時針 編號為 p 1,p 2,cdots p n 為了方便,定義 p p 1 記 p i 的座標為 x i,y i 則該多邊形的面積為 a frac left sum x iy x y i right frac left sum p i ti...