ProcessingJoy ——互斥的彩色粒子【JAVA】
【摘要】
效果图
代码十分简单,所以就话不多说,直接看代码与注释
完整代码与注释
定义粒子的 Particle 类
class Particle{ float mass = random(0.003, 0.03); PVector position; PVector velocity = new PVector(0, 0); ...
效果图
代码十分简单,所以就话不多说,直接看代码与注释
完整代码与注释
定义粒子的 Particle 类
-
class Particle{
-
-
float mass = random(0.003, 0.03);
-
PVector position;
-
PVector velocity = new PVector(0, 0);
-
color colors[] = {#52489c, #4062bb, #59c3c3, #ebebeb, #f45b69};
-
int idx = 0;
-
-
Particle(){
-
position = new PVector(mouseX, mouseY);
-
idx = (int)random(5);
-
}
-
-
void draw(){
-
-
PVector acc = new PVector(0, 0);
-
-
/// @note 处理和其他粒子的关系
-
for(int i = 0; i < particles.size(); i++){
-
Particle p = particles.get(i);
-
if(p != this){
-
/// @note 根据两个粒子之间的距离,计算互相作用力,并更新本粒子的加速度
-
float distance = max(PVector.dist(this.position, p.position), 1);
-
float force = (distance - 300) * this.mass / di
文章来源: panda1234lee.blog.csdn.net,作者:panda1234lee,版权归原作者所有,如需转载,请联系作者。
原文链接:panda1234lee.blog.csdn.net/article/details/116879897
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)