E拓建筑网    

 找回密码
 快速注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

查看: 154|回复: 1

[软件作品] 结合Voronio2D做Happy New Year[转载]

[复制链接]

7

主题

52

帖子

388

e币

拓邑团练

UID
138187
注册时间
2014-7-4
最后登录
2019-2-9
学课程攒e币
发表于 2019-2-9 11:47:40 | 显示全部楼层 |阅读模式



图文版权归原作者所有


                               
登录/注册后可看大图


                               
登录/注册后可看大图


                               
登录/注册后可看大图

思路如下:

绘制矩形边框,边框内生成随机点(Pop2D),并Graft,每个点自成一组。


                               
登录/注册后可看大图


                               
登录/注册后可看大图

用多段线绘制文字,并Join,得到N条多段线,并求得每个点在所有多段线上的最近点(Crv CP),此时Graft后的每组点能够生成N个最近点。


                               
登录/注册后可看大图


                               
登录/注册后可看大图


                               
登录/注册后可看大图

求每个点与N条多段线上最近点的距离(Dist),得到N个距离数据,对数据进行从小到大的排序(Sort),并提取中最小值(Item),从而得到与每个点最近的那条多段线上的最近点。


                               
登录/注册后可看大图


                               
登录/注册后可看大图

再求出每个点和其最近点的距离(Dist),以及每个点和其最近点的矢量方向(Vect2Pt),这两个数据可作为随机点的移动向量。


                               
登录/注册后可看大图

对距离除以2,即实际距离越小,移动距离越小,(如实际距离是2,移动距离为1,实际距离为4,移动距离仅为2,使得离多段线较远的点移动较少,有利于疏密关系对比更明显)。得到移动向量(Amp)。


                               
登录/注册后可看大图


                               
登录/注册后可看大图

为了疏密对比更强烈,把大于一定距离的点剔除掉,只剩下距离较近的点。


                               
登录/注册后可看大图


                               
登录/注册后可看大图

对剩下的点进行移动(Move),用移动后的点生成泰森多边形(Voronoi)。


                               
登录/注册后可看大图


                               
登录/注册后可看大图

感觉应该还有很多可以优化的地方


Happy New Year.gh

13.25 KB, 下载积分: e币 -2  e币充值 VIP免e币

0

主题

155

帖子

103

e币

拓乡士官

UID
43574
注册时间
2012-6-19
最后登录
2019-4-23
学课程攒e币
发表于 2019-2-16 15:27:17 | 显示全部楼层
图片都挂掉了~~~

以下回复属于恶意灌水!请不要抱有侥幸心理,我们随时注意到您的言行。

无意义字符串×,无文字纯表情×,在一个主题帖无休止回复×,在多个主题帖回复同样话语(严厉打击“谢谢分享”党×

您需要登录后才可以回帖 登录 | 快速注册 微信登录

本版积分规则

发布主题 快速回复 返回列表

关于我们|广告服务|E拓建筑网 ( 粤ICP备11043922号 )

GMT+8, 2019-4-24 04:52 , Processed in 0.164063 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2011-2019 拓筑文化

快速回复 返回顶部 返回列表