0
A
回答
0
嘗試
local abs = math.abs
local function distanceBetweenTwoPoints(x1, y1, x2, y2)
return (((x2 - x1)^2) + ((y2 - y1)^2))^0.5
end
-- (x1, y1) center and r1 radius of first circle
-- (x2, y2) center and r2 radius of second circle
local function circleOverlap(x1, y1, r1, x2, y2, r2)
return (distanceBetweenTwoPoints(x1, y1, x2, y2) <= r2 + r1)
end
local function oneCircleInsideOther(x1, y1, r1, x2, y2, r2)
return (distanceBetweenTwoPoints(x1, y1, x2, y2) <= abs(r2 - r1))
end
一些測試
print(circleOverlap(0, 0, 1, 0, 0, 2)) -- true
print(circleOverlap(0, 1, 1, 0, 3, 1)) -- false
print(circleOverlap(1, 1, 1, 3, 3, 1)) -- false
print(circleOverlap(5, 10, 5, 12, 10, 2)) -- true
print(oneCircleInsideOther(0, 0, 1, 0, 0, 2)) -- true
print(oneCircleInsideOther(0, 1, 1, 0, 3, 1)) -- false
print(oneCircleInsideOther(1, 1, 1, 3, 3, 1)) -- false
print(oneCircleInsideOther(5, 10, 5, 12, 10, 2)) -- false
0
從以前的答案借款:
-- (x1, y1) center and r1 radius of first circle
-- (x2, y2) center and r2 radius of second circle
-- return true if cirecle 2 is inside circle 1
local function circleInside(x1, y1, r1, x2, y2, r2)
return (distanceBetweenTwoPoints(x1, y1, x2, y2)+ r2 < r1)
end
相關問題
- 1. 尋找一個圓圈是否在另一個圓圈內
- 2. 檢查另一個圓圈是否包含圓圈
- 3. 檢查一個球是否在由一條線繪製的圓圈內
- 4. 如何在一個圓圈
- 5. 檢查一個點(lat/long)是否在一個圓圈內(Center lat/long known)
- 6. 如何使用KineticJS從一個圓圈創建箭頭到另一個圓圈?
- 7. Python/Psychopy:檢查某個點是否在圓圈內
- 8. 在距離10處的圓圈內畫一個圓圈
- 9. (UE4)檢查一個點是否位於碰撞圓圈中
- 10. 從圓圈的各個部分檢查
- 11. 如何在WPF中創建一個帶圓圈的圓圈?
- 12. 檢查點是一個圓
- 13. Python - 在計算對象時移除另一個圓圈內的圓圈
- 14. 圍繞一個大圓圈移動一個小圓圈
- 15. 計算在一個圓圈
- 16. HoughCircles能否在opencv中檢測圓圈內的圓圈?
- 17. CSS:位置圓(LI)成一個圓圈
- 18. 如何將圓圈後面的一行移至圓圈底部
- 19. 如何在一個大圓圈中均勻分佈12個圓圈
- 20. 如何檢查一個圓是否位於凸多邊形的內部
- 21. 畫一個圓圈像素
- 22. 如何通過css/js將N個圓圈分佈到另一個圓的內部邊界?
- 23. 如何使UIButton成爲一個圓圈?
- 24. Squeak - 如何移動一個圓圈?
- 25. 閃迴圈不在另一個圓內旋轉
- 26. 如何檢查一個字段是否包含圓括號?
- 27. 在內部繪製一個帶扇葉的圓圈,Java
- 28. 檢查線和一個圓圈在帆布的碰撞android
- 29. 如何在一個圓圈內定位和裁剪UIImage
- 30. 圓圈內空圈:
拿紙筆並嘗試自己解決它。這不是一個思維服務。 至少給了我們一些想法。 – Piglet