当前位置:   article > 正文

Random Target Moving~

f - moving target csdn

测试了一下用向量处理随机目标,还是挺有趣的,源码如下:

 1 PVector p1, p2;
 2 float gap = 10;
 3 void setup() {
 4   size(1920, 1080);
 5   background(255);
 6   p1 = new PVector(random(width), random(height));
 7   p2 = new PVector(width/2, height/2);
 8   smooth();
 9 }
10 void draw() {
11   if (abs(p1.x-p2.x)<gap && abs(p1.y-p2.y)<gap) {
12     p2.set(random(width), random(height));
13     gap = random(5,50);
14   }
15   PVector dir = PVector.sub(p2, p1);
16   dir.normalize();
17   dir.mult(gap);
18   p1.add(dir);
19   strokeWeight(gap);
20   point(p1.x, p1.y);
21 }

还有很大改善的空间:

1、将random换成柏林噪音将会获得更加平滑的图案。
2、用数组来控制运行轨迹将会获取蛇形图案

转载于:https://www.cnblogs.com/x5115x/p/3234665.html

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/75102
推荐阅读