【Processing入门】第四章:响应互动
来源:互联网 发布:爱的归宿网络电影 编辑:程序博客网 时间:2024/04/19 23:20
(1) mouseX,mouseY控制图形的移动
void setup(){ background(200); size(300,300); smooth();}void draw(){ fill(255,255,0); rect(mouseX,mouseY,50,50);}
还可以控制图形的大小形状
void setup(){ size(300,300); smooth();}void draw(){ background(200); stroke(0); float d=dist(mouseX,mouseY,150,150); strokeWeight(d/15); fill(255); ellipse(150,150,d*2,d); strokeWeight(d/20); fill(255,200,0); ellipse(150,150,d,d); fill(0); noStroke(); ellipse(150,150,d/3,d/3);}
(2)pmouseX,pmouseY也是一对系统变量,是指相对当前鼠标坐标点的上一个坐标位置
void setup(){ size(300,300); strokeWeight(5); smooth(); stroke(255,0,80,100); background(0);}void draw(){ float k=dist(mouseX,mouseY,pmouseX,pmouseY); strokeWeight(k); if(mousePressed) { line(mouseX,mouseY,pmouseX,pmouseY); }
}
(3)mousePressed
void setup(){ size(300,300); strokeWeight(5); smooth(); stroke(255,0,80,100); background(0);}void draw(){}void mousePressed(){ stroke(0); fill(255,255,0); ellipse(mouseX,mouseY,25,25);}
等价于
<p>void setup(){ size(300,300); strokeWeight(5); smooth(); stroke(255,0,80,100); background(0);}</p><p>void draw(){ if(mousePressed) { stroke(0); fill(255,255,0); ellipse(mouseX,mouseY,25,25); }}</p>
(4)mouseMoved,mouseDragged
void setup(){ size(300,300); background(255); stroke(0,50); smooth();}void draw(){}void mouseMoved(){ rectMode(CENTER); fill(255,255,0,50); rect(mouseX,mouseY,50,50);}void mouseDragged(){ fill(255,100,0,50); ellipse(mouseX,mouseY,50,50);}
void setup(){ size(300,300); smooth(); background(204); rectMode(CENTER);}void draw(){ if(mousePressed) { if(mouseButton == LEFT) { fill(255); } else if(mouseButton == CENTER) { fill(0); } else { fill(100); } rect(mouseX,mouseY,50,50); }}
(5)键盘响应
按击键响应,可以使用void keyPressed(),也可以使用if(keyPressed)。用系统变量指定特定按键,当key为CODED时表示功能键,使用keyCode指定具体的功能键。
void setup(){ size(300,300); smooth(); strokeWeight(10); strokeCap(SQUARE);}void draw(){ background(200); if(keyPressed) { if(key == 'a') { fill(255,0,0); rect(100,100,100,100); } if(key==CODED && keyCode == UP) { fill(255,255,0); rect(100,100,100,100); } }}
(6)随机random
random(),用于产生特定范围的随机数,比如random(1,4)
(7)限制constrain()
constrain(value,min,max),value指要限定的变量值
如
constrain(mouseX,100,400);
0 0
- 【Processing入门】第四章:响应互动
- Processing互动编程艺术
- 【Processing入门】第二章:使用Processing
- 【Processing入门】Processing第三章:绘图中
- 【Processing入门】Processing第三章:绘图下
- 第四章 碰撞响应
- 【Processing入门】第五章:动画
- Processing 入门
- 【Processing入门】第三章:绘图上
- 【Processing入门】第九章:视频音频
- 【Processing入门】第十章:3D
- processing 第四天学习笔记
- Struts2-第四篇-Processing Forms
- 第四章:利用 DOM 进行 Web 响应
- JavaScript入门-第2章 请和我互动(常用互动方法)
- Processing入门简介
- processing的入门函数
- Processing入门资料整理
- 信号屏蔽字以及pthread_join函数
- 配置问题最烦人
- spring 定时器
- 工厂模式例子
- 浅谈CSRF攻击方式
- 【Processing入门】第四章:响应互动
- PHPnow在WIN7、WIN8下使用PnCp.cmd无法重启apache和mysql
- ActiveMQ之Ajax调用
- 创业案例:七分食:专业健身餐制作者,且吃且塑形
- lambda 介绍
- oracle、sqlserver、mysql常用函数对比[to_char、to_number、to_date]
- Cache 一致性
- HTTP协议详解(真的很经典)
- Head First设计模式之单例模式