2013-10-23 69 views
2

從任意矩形開始,用戶可以放置任意數量的圓圈。 圓圈允許彼此重疊,沒有任何限制。檢查圓圈是否完全覆蓋區域

圓圈的大小可以不同。

測試矩形是否完全被圓圈覆蓋的最好方法是什麼?

+0

圓圈是否允許在矩形外延伸? –

+1

只要圓的一部分位於矩形內,它們就儘可能多地需要。 – avalore

回答

0

我最終發現JS和Objective-C中最簡單的解決方案(對我來說)是簡單地遍歷每個像素並檢查顏色(假設圓被着色)並檢查它是否爲一個圓圈(或它的邊界)。只要找到圓圈的顏色,就會停止迭代,因爲區域顯然沒有被形狀完全覆蓋。

該解決方案的優點是實際形狀無關緊要(我們最終也添加了其他形狀)。

1

這似乎是一個非常棘手的算法,但幸運的是它dsomebody想到之前:)

檢查這個問題:

https://cs.stackexchange.com/questions/11163/circles-covering-a-rectangular-how-to-verify-it

似乎有同樣的問題,因爲你。

+2

這確實是一個有趣的(也許是有用的)鏈接,但是(據我所知)*答案*應該總是包含最相關的信息,而不僅僅是一個鏈接。 –

+0

鏈接的問題/答案假定所有圈子都有相同的半徑。 – brainjam