javascript - 将图像随机放置在 <div> 中并确保均匀分布

标签 javascript html algorithm

我有一个 X 乘 Y 的矩形 html div。假设这个 div 的中心位于 x(c) 和 y(c)。我有 N 维 x(i) 和 y(i) 的图像。图片大小大约是包含的 div 的 1/8,并且每张图片的大小都与其余的不同。

将这些图像放置在此 div 中的好方法是什么,以便它们在每次加载页面时均匀分布(但随机放置)。查看 javascript 实现。

编辑:在 dascandys 回答之后,我想我可以更好地措辞这个问题。我的意思是在每个页面加载时随机加载图像序列,同时保持外观和感觉平衡。

最佳答案

您实际上并不是在寻找随机分布。真正随机意味着它的一部分是空的,而在另一个 Angular 落,它们中的两个重叠。

如果您想科学一点,可以使用随机生成的带有 N 个点的 Voronoi 图和 Lloyd 算法将这些点移动到更均匀的分布。

如果您更喜欢实用的方法,只需将它们放在随机位置并反复查看它们是否重叠,如果重叠,则将它们分开。对于 8 幅图像,这会更慢,但仍然超出人类感知的速度。

关于javascript - 将图像随机放置在 <div> 中并确保均匀分布,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7041034/

相关文章:

java - 如何从数据集中找到峰值坐标

algorithm - 最小公约数

java - 安全删除java实现

javascript - jQuery 函数 "on()"在 Firefox 中工作但在 Chrome 中不起作用

javascript - 为什么代码不能使用名为 jquery 1 9 的脚本

html - 替换并放置一个向下弹跳的箭头

html - 如何创建 "Add To Favorites"超链接?

javascript - 只列出对象数组的一个属性

javascript - Vuejs 生命周期问题,仅在 Webpack 加载器刷新页面上的元素后才填充数据数组?谷歌地图标记不显示?

javascript - 为什么我的 discord 机器人不发送消息?