2015-06-04 67 views
1

我正在創建一個模擬Petri網的Android應用程序。我代表地方由圓形和平方過渡,我通過弧連接這些意見(這只是從我的目的petri網的名稱,它只是一條直線),這就是我面臨的問題,我知道如何連接這些意見的中心點,但我不知道如何連接圓形和邊框的邊界,看看它應該解釋的一切形象:enter image description here連接幾何圖形的邊框

在我的應用程序,我知道如果我指着一個我可以知道這些視圖的維度和它的座標,你能否爲我提供一個算法的起點,這個算法將連接這兩個形狀的邊界,並在末尾畫出箭頭線?在此先感謝

+0

您是否有規則來指定要使用的形狀邊界上的哪個點? – Synergist

+0

我不知道我是否明白你的意思是「規則」,但我不知道邊界點的座標,我需要數它 –

+0

你想選擇兩個形狀的邊界上的點,線連接兩個形狀的中心會通過?或者上部形狀的邊界上的最底部點和下部形狀的邊界上的最上面的點?或者其他一些規則? – Synergist

回答

1

你可以說,發生在一個角度,距離中心這個角度返回邊界上的點的方法。這涉及到一點三角,以及正方形的情況。要在兩個形狀的邊界之間繪製一條直線,請確定差異向量atan2的角度(ys的差異,xs的差異)。用該角度選擇邊界上的點。 (這選擇連接中心的線段上的點,如果需要,可以更改此點。)用線連接兩個點,然後添加箭頭。