algorithm - 在画布上展开对象以最小化重叠
问题描述
我目前正在研究如何n
在 100x100 方形画布上传播/分布一定数量的对象,每个对象都有一个位置和半径大小。
我最初的想法是为边界内的每个对象随机分配一个 2D 位置。但是,这可能会导致多个对象最终可能非常靠近,从而导致巨大的重叠。
但是,如果可能的话,我想保持较小的重叠(当然,随着增加n
,将会有一个点,并非所有对象都可以在不重叠的情况下适合画布。
所以现在我正在寻找某种迭代过程,它将非常靠近的对象移得更远,但确保它不会最终落在另一个对象的位置上。
是否有针对此类问题的现有算法?我将如何开始解决这个问题?
解决方案
推荐阅读
- specflow - 无法在 specflow 2.1.0 中添加或修改标签
- python - 如何使用 Selenium 和 Python 通过“onclick”找到并单击按钮?
- shell - windows10上gsh.exe下nmake的奇怪行为
- javascript - 带有搜索选项的jquery tablesorter在chrome中不起作用
- postgresql - 在 PostgreSQL 中处理子选择
- character-encoding - 在 powerdesigner 中显示描述
- firebase - 颤振谷歌登录问题
- vb.net - VB.Net AddHandler 到整个用户控件
- x86 - 如何在用户模式下设置/清除 x86 IA32 Intel CPU 上的 TF 标志
- azure - 通过 IP 地址到达 azure VM?