2013-04-05 20 views
0

我正在創建一個帶有不同節點和中心選定節點的圖形界面。我創建了中心節點,並繪製了一個圓圈來標記子節點將放置的位置。以圓形方式放置UIViews

我想將許多節點放置在圓的圓周中,而不是每個節點重疊。我如何找到準確的周長數?

我的每個子節點視圖都具有相同的大小。但是,不管如何,由圓周中的每個子節點佔據的是不同的。

如何查找具有特定大小的控件的總數no,這些控件可以放置在具有特定半徑的圓周上。我怎樣才能找到每個子節點的中心點放置在圓周上。

我知道我們可以使用下面的公式來找到要放置子節點的角度。這裏的問題是arcLength對於每個子節點視圖都不是固定的。

2PirC/360 =弧長X = CX + R * COS(a)中Y = CY + R * SIN(一)

enter image description here enter image description here

+0

您是否研究過[算法來檢測圓與相同平面中的任何其他圓相交] [1]? [1]:http://stackoverflow.com/questions/8367512/algorithm-to-detect-if-a-circles-intersect-with-any-other-circle-in-the-same- pla – verec 2013-04-07 03:57:45

+0

我對你對弧長的含義有點困惑。如果圓周上的每個視圖的大小相同,則它們將佔用相同的弧長。 – 2013-04-11 15:00:04

回答

0

我已經解決了由該問題使用下面的公式將其在應答在本thread在#1中提到:

(X + R cos(2kπ/ N)中,y + R SIN(2kπ/ N))