泊松分布 (Poisson-Disc)算法

举报
ShaderJoy 发表于 2021/12/30 01:23:30 2021/12/30
【摘要】 动画链接:http://bl.ocks.org/mbostock/dbb02448b0f93e4c82c3   Poisson-Disc 算法介绍     1. 红点代表 “活跃” 的样本。在每次迭代中,从该组的所有活跃样本中随机地选择一个样本。接着在样本周围的环形区域内随机产生新的候选样...

动画链接:http://bl.ocks.org/mbostock/dbb02448b0f93e4c82c3
 

Poisson-Disc 算法介绍

 

 

1. 红点代表 “活跃” 的样本。在每次迭代中,从该组的所有活跃样本中随机地选择一个样本。接着在样本周围的环形区域内随机产生新的候选样本(如动画中黑圈白底的点),最多产生 k 次。

2. 环带的半径范围为 (r, 2r),其中 r 是任意两个样本之间的最小允许距离。如果产生的新候选样本落在了现有样本半径为 r 的范围内(即动画中的灰色禁区)将被拒绝,与现有的样本相连的黑色线表示新候选点太靠近现有样本点。如果候选样本点满足以上条件并被接受(即和周围的现有样本点距离大于等于 r ),它将被作为新的活跃样本(红色)。

3. 如果第 k 个候选样本点仍然是是不可接受的,那么所选择的“活跃”样本点将被标记为无效(非活性),将不再用于产生候选样本点。非活性的样本点用黑色表示。

当没有样本保持活跃,算法结束。

 

【尺寸为 \frac{R}{\sqrt{2}} 的背景网格是用来加速每个候选的距离检查。因为每个小格只能包含至多一个样本,所以只需要检查固定数目的相邻小格即可】

 

文章来源: panda1234lee.blog.csdn.net,作者:panda1234lee,版权归原作者所有,如需转载,请联系作者。

原文链接:panda1234lee.blog.csdn.net/article/details/50971382

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。