Processing与鼠标的结合
1、使用 print 语句进行输出
输入代码:
void draw()
{
println("I’m drawing");
println(frameCount);
}
单击运行按键,在编程界面会显示输出的结果,要关闭输出,直接单击程序停止按钮即可
2、跟随鼠标进行绘图
输入代码:
void setup() {
size(480, 120);
fill(0, 102);
smooth();
noStroke();
}
void draw() {
ellipse(mouseX, mouseY, 9, 9); //跟随鼠标的位置来绘制图形
}
3、让图形跟着鼠标来运动
void setup() {
size(480, 120);
fill(0, 102);
smooth();
noStroke();
}
void draw() {
background(204);
ellipse(mouseX, mouseY, 9, 9);
}
4、通过鼠标的运动来绘制连续的线条
输入代码:
void setup() {
size(480, 120);
strokeWeight(4);
smooth();
stroke(0, 102);
}
void draw() {
line(mouseX, mouseY, pmouseX, pmouseY);
}
5、通过不同的鼠标移动速度,绘制不同粗细的线条
输入代码:
void setup() {
size(480, 120);
smooth();
stroke(0, 102);
}
void draw() {
float weight = dist(mouseX, mouseY, pmouseX, pmouseY); //定义变量存储鼠标的运动速度
strokeWeight(weight); //将鼠标的运动速度设置为线条宽度
line(mouseX, mouseY, pmouseX, pmouseY);
}
6、让鼠标绘制的线条更流畅
输入代码:
float x;
float easing = 0.01;
float diameter = 12;
void setup() {
size(220, 120);
smooth();
}
void draw() {
float targetX = mouseX;
x += (targetX - x) * easing;
ellipse(x, 40, 12, 12);
println(targetX + " : " + x);
}
7、通过鼠标来绘制不规则的平稳连续线条
输入代码:
float x;
float y;
float px;
float py;
float easing = 0.05;
void setup() {
size(480, 120);
smooth();
stroke(0, 102);
}
void draw() {
float targetX = mouseX;
x += (targetX - x) * easing;
float targetY = mouseY;
y += (targetY - y) * easing;
float weight = dist(x, y, px, py);
strokeWeight(weight);
line(x, y, px, py);
py = y;
px = x;
}