第1章 认识Processing 1
1.1 Processing是什么 2
1.2 Processing的诞生 3
1.2.1 MIT与约翰·梅达 3
1.2.2 Casey Reas和Ben Fty 6
1.3 Processing能做什么 8
1.3.1数据视觉化 8
1.3.2生成艺术 10
1.3.3互动艺术 14
第2章 使用Processing 17
2.1下载与安装 17
2.2开发环境 18
2.2.1开发环境界面 18
2.2.2快捷按钮 20
2.3语法结构 20
2.3.1基本语句 21
2.3.2代码编写流程 22
2.3.3注释 22
2.3.4表达式和陈述 23
2.3.5控制台 24
2.4变量 24
2.4.1声明一个变量 25
2.4.2变量的类型 26
2.4.3系统变量 27
2.5符号与条件式 28
2.5.1布尔表达式 28
2.5.2算术运算符 28
2.5.3关系操作符 29
2.5.4逻辑操作符 29
2.5.5条件式—if、else和else if 33
本章作业 36
第3章 绘画 39
3.1画布与坐标 39
3.1.1像素与画布 39
3.1.2直角坐标与计算机屏幕坐标 40
3.2图形 41
3.2.1点 41
3.2.2直线 42
3.2.3矩形 42
3.2.4圆与圆弧形 43
3.2.5三角形与四边形 45
3.2.6贝塞尔曲线 46
3.2.7自由图形 47
3.3色彩 49
3.3.1灰阶与透明度 50
3.3.2 RGB色彩 52
3.3.3 HSB色彩 53
3.4绘画属性设定 55
3.4.1填色与边框 55
3.4.2图形的顺序 56
3.5重复绘画 58
3.5.1简单的重复 58
3.5.2迭代法与while循环 59
3.5.3 for循环 60
3.6 PDF输出与绘画实例 62
3.6.1 PDF格式输出 62
3.6.2绘画实例 63
3.6.3学生作品欣赏 64
本章作业 66
第4章 响应互动 67
4.1鼠标响应 67
4.1.1鼠标移动响应mouseX和mouseY 67
4.1.2 pmouseX和pmouseY 70
4.1.3鼠标响应事件 72
4.2键盘响应 75
4.2.1按击键响应 75
4.2.2特定按键响应 78
4.2.3功能键响应 79
4.3随机random 80
4.4限制constrain 83
本章作业 84
第5章 动画 85
5.1运动的产生 85
5.1.1变量控制运动 85
5.1.2条件句控制运动 86
5.1.3加速与减速 87
5.2随机运动 89
5.3曲线轨迹运动 90
5.4坐标转移、旋转与缩放 95
5.4.1坐标转移 95
5.4.2旋转运动 96
5.4.3缩放运动 99
5.5 pushMatrix()与popMatrix() 100
5.6时间控制 102
本章作业 103
第6章 函数与对象 105
6.1函数 105
6.1.1定义函数 105
6.1.2调用函数 109
6.1.3函数与循环 111
6.1.4函数返回类型 114
6.2类与对象 115
6.2.1面向对象的程序设计 115
6.2.2定义类 116
6.2.3创建对象 119
6.2.4构造器的引数 121
本章作业 124
第7章 数组 125
7.1变量列数组 127
7.1.1声明变量列数组 127
7.1.2定义数组的长度 128
7.1.3给数组赋值 128
7.2变量列数组实例 130
7.3对象的数组 134
本章作业 137
第8章 图片与文字 139
8.1图片 139
8.1.1显示图片 139
8.1.2图片互动 143
8.1.3图片色彩设置 144
8.2文字 147
8.2.1使用字体 147
8.2.2字符串 148
本章作业 150
第9章 视频 151
9.1播放视频文件 151
9.2实时视频输入 155
9.3视频互动特效 158
9.3.1互动色彩调整 158
9.3.2视频马赛克 159
9.3.3色彩捕捉 161
9.3.4版画效果 166
本章作业 169
第10章Minim音频 171
10.1播放音频 171
10.2声音的视觉化 173
10.3音频输入互动 179
本章作业 181
第11章3D 183
11.1 3D简介 183
11.2 3D图形 184
11.3 3D空间旋转 185
11.4 3D互动 187
11.5参考案例 190
本章作业 192
第12章Arduino与物理计算 193
12.1 Arduino简介 193
12.2 Arduino与开关 195
12.3 Arduino与传感器 197
12.4光敏传感器 200
本章作业 202
附录A 203
后记 205
参考书目 206