1. 程式人生 > >如何檢測一個圓在多個圓內?

如何檢測一個圓在多個圓內?

https data- 兩個 .com origin 所有 結果 定義 thum

問題定義:

存在多個半徑相同的圓,和一個半徑不同的圓,如何判斷半徑不同的圓完全在一群圓內。下圖演示了幾種情況,左邊是完全在圓內,右邊不是。

技術分享

解決方法之一:

對於紅圓在某個黑圓之內或者在所有黑圓之外等的特例情形,可以用簡單的圓圓之間的幾何判斷算法得到結果,對於其余部分相交的一般情形,如果同時滿足以下兩個條件則紅圓在黑圓內:

1. 紅圓與所有黑圓的交點都在黑圓內;

2. 黑圓之間的交點如果在紅圓內,則其也必然在黑圓內。

否則,紅圓不在黑圓內。

如何檢測一個圓在多個圓內?