0
我想測試一個圓是否與正方形相交。我已經想出瞭如何做到這一點的最好方法是找出是否存在一個x,使得:x在平方的最小和最大x值之間;將等式轉換爲C++
abs(x-centerOfCircle) <= radiusOfCircle
問題是我無法弄清楚如何將其轉換成代碼,任何人都可以幫忙嗎?
我想測試一個圓是否與正方形相交。我已經想出瞭如何做到這一點的最好方法是找出是否存在一個x,使得:x在平方的最小和最大x值之間;將等式轉換爲C++
abs(x-centerOfCircle) <= radiusOfCircle
問題是我無法弄清楚如何將其轉換成代碼,任何人都可以幫忙嗎?
我會將您的問題轉換爲檢測圓的中心是否在內圓角方塊內,圓角方塊按您的圓的半徑定義爲原始方塊的輪廓。
然後相交測試是相當微不足道做以下簡單子測試:
如果上述任何3次測試爲真,你的圈子相交的正方形。
@ 0x499602D2他的問題是如何讓'x',因爲他需要找出是否有任何'x'適合方程。 – Barmar 2014-11-01 00:38:23
你不通過測試是否有任何這樣的'x'。你可以用一個與方形角的座標一起工作的算法來實現。我不知道算法,但我相信你可以通過Google搜索找到它。 – Barmar 2014-11-01 00:41:58