在有限的空間中生成已知數量的非重疊固定半徑圓的最佳方式是什麼?如何在固定區域生成不重疊的圓圈?
0
A
回答
3
用最少的剩餘空間做到這一點的方法是將圓心置於六邊形網格上,就像您製作金字塔金字塔時所獲得的圖案一樣。
2
你可以把屏幕分割爲一個網格,並繪製在每個「方」了一圈:)
3
如果你只是想在一個小範圍內儘可能多的圈,使用hexagonal close packing。
3
見Circle packing theorem在維基百科上
0
這將取決於空間和其他限制的圈子裏,你沒有指定的自然形狀。例如,要在高度爲Y和長度爲X的矩形中生成N個非重疊圓,請將每個圓的直徑設爲X/10 * N或Y/10 * N中的較小者,並讓每個中心間隔一段距離均勻地分佈在劃分矩形的水平線上,跨越其長度的一半。
1
我不認爲你的問題是明確的。對世代有什麼限制?
下面是固定半徑的非重疊的圓隨機收集丟棄算法:
- 維持各界的列表
- 通過
- 生成候選生成隨機中心允許區域
- 測試列表中的每個現有圓以與候選人發生碰撞,並拒絕是否發現任何碰撞。如果全部通過,請將此候選人添加到您的列表中。
- 轉到#1,直到你滿意的數量產生
編輯:閱讀問題更加緊密,半徑指定...
相關問題
- 1. MATLAB:區域重疊的圓圈
- 2. 由重疊圓圈構成的區域和周長
- 3. SVG或Canvas:2個圓圈的填充/陰影重疊區域
- 4. 如何在半徑增加時在CLLocationManager中繪製區域的固定圓圈
- 5. 保持重疊的圓圈
- 6. 如何讓生成的圈子在html5中不重疊?
- 7. 如何加入重疊圓圈?
- 8. 在兩個重疊的橢圓形狀區域內生成隨機點
- 9. 在MATLAB中刪除重疊的圓圈
- 10. 如何在Google Maps API中將不同的顏色應用於圓圈的重疊區域
- 11. android - 如何定義一個圓圈內的可觸摸區域
- 12. css重疊的圓圈和文本框
- 13. 防止拖動圓圈重疊
- 14. 如何計算並在矩形區域上放置圓圈?
- 15. ScrollMagic:當它與固定區域重疊時隱藏內容
- 16. 如何生成不同尺寸的圓圈圖像?
- 17. 在android中生成隨機圓圈
- 18. 我如何生成特定給定區域之間不重疊的隨機對象?
- 19. 查找重疊區域和非重疊區域
- 20. 圓圈圖像疊加
- 21. 如何用盡可能小的圓形區域圍繞文字製作圓圈?
- 22. 我如何圍繞一個固定的圓圈拖動圈 - d3.js
- 23. 如何計算重疊區域?
- 24. 如何切斷重疊區域?
- 25. 這個功能爲什麼不檢測重疊的圓圈?
- 26. 如何將圖片拖動到andEngine中的特定圓圈區域
- 27. 檢測圖像中的重疊橢圓區域(MATLAB)
- 28. Matlab:如何在具有特定半徑的圓中生成非均勻且非重疊的圓/矩形
- 29. OpenCV確定相交/重疊區域
- 30. 使用Javascript生成隨機圓圈
你應該更具體。這個圈子的分佈是一個問題嗎?是否應該覆蓋大部分表面?最簡單的方法是從x = r,y = r開始,對於半徑爲r的圓,並逐行放置它們,直到其中有足夠多的... – 2009-02-06 21:05:00