Processing是一种具有革命前瞻性的新兴计算机语言,它的概念是在电子艺术的环境下介绍程序语言,并将电子艺术用程序的方式实现。它是 Java 语言的延伸,并支持许多现有的 Java 语言架构,不过在语法上简易许多,并具有许多贴心及人性化的设计。
上图是以心形图片为底色,用java代码模拟水波纹效果。
代码如下:
//以图片作为底图的涟漪
PImage base;
float[][] pt1;
float[][] pt2;
float refraction = 0.1; //减缓系数
void setup(){
size(400,400);
base = loadImage("a.jpg");
base.resize(width,height);
base.loadPixels();
pt1 = new float[width][height];
pt2 = new float[width][height];
for(int y=0;y<height;y++){
for(int x=0;x<width;x++){
pt1[x][y] = 0;
pt2[x][y] = 0;
}
}
}
void draw(){
if(mousePressed){
pt2[mouseX][mouseY] += 800;
}
if(frameCount%10==0){
pt2[int(random(width))][int(random(h