在下圖中,您會看到(1)一個三角形和一個圓。給定該三角形中的專用點X,我想從這一點上剪掉一切看不見的東西。用(2)中的簡單多邊形差分算法去除圓形沒有問題。但是,我可以使用什麼樣的算法來獲得像(3)中的多邊形?多邊形裁剪:只有「可見」區域
多邊形總是很簡單。
編輯:圓只是一個例子。每個簡單的多邊形應該是可能的。
你可以像我的需要,採取了看比賽的形象 「盟軍敢死隊 - 敵後」:平行於d
在下圖中,您會看到(1)一個三角形和一個圓。給定該三角形中的專用點X,我想從這一點上剪掉一切看不見的東西。用(2)中的簡單多邊形差分算法去除圓形沒有問題。但是,我可以使用什麼樣的算法來獲得像(3)中的多邊形?多邊形裁剪:只有「可見」區域
多邊形總是很簡單。
編輯:圓只是一個例子。每個簡單的多邊形應該是可能的。
你可以像我的需要,採取了看比賽的形象 「盟軍敢死隊 - 敵後」:平行於d
這是基本的想法。
我假設一個更一般的問題,但它會更容易適應您的問題:給定一個包含所有形狀,一個點和一組幾何形狀的,我們希望從計劃中刪除從該點不可見的區域。
我們想要做的是得到,對於每個形狀,它是starting_polar
和ending_polar
點,即具有屬於該形狀的最小和最大極角的2個點。
現在,我們將從刪除形狀和我們將刪除這些點所形成的quadrilateral
:starting_polar
,ending_polar
和兩條直線(x, starting_polar)
和(x, ending_polar)
和的邊界之間的交叉點。
在你的情況下,計劃將只是triangle
。
+1,Commandos。優秀的遊戲。 –
如果你沒有得到答案,你可能會提供賞金。 –
你的問題看起來非常類似於http://stackoverflow.com/q/5892539/359538 –