《Processing编程学习指南》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:(美)丹尼尔·希夫曼(Daniel Shiffman)著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2017
  • ISBN:9787111558675
  • 页数:409 页
图书介绍:本书详细介绍了Processing编程的基本原理,全书分为十节课共23章,涵盖了创建最前沿的图形应用程序例如互动艺术、实时视频处理和数据可视化所需要的基础知识。此外,作为一本实验风格的手册,书中精心挑选了部分高级技术进行详尽解释。可以让图形和网页设计师、艺术家及平面设计师快速熟悉Processing编程环境。

第一节 课 开始 2

第1章 像素 2

1.1 坐标纸 2

1.2 绘制基本图形 3

1.3 灰度模式 7

1.4 RGB颜色 9

1.5 颜色透明度 10

1.6 自定义颜色取值范围 11

第2章 Processing 13

2.1 让Processing来拯救你 13

2.2 如何下载Processing 14

2.3 Processing应用程序 14

2.4 速写本 15

2.5 Processing中的代码 16

2.6 错误提示 18

2.7 Processing参考文档 20

2.8 “运行”按钮 21

2.9 你的第一个草图 22

第3章 交互 24

3.1 程序的运行流程 24

3.2 我们的好朋友:setup()和draw() 25

3.3 跟随鼠标移动 27

3.4 鼠标点击和键盘操作 30

第一节 课的项目 33

第二节 课 你所需要知道的一切 36

第4章 变量 36

4.1 什么是变量 36

4.2 变量的声明和初始化 37

4.3 使用变量 39

4.4 多种变量 42

4.5 系统变量 43

4.6 随机:多样化为生活增加趣味性 44

4.7 使用变量来创建Zoog 46

4.8 坐标平移 48

第5章 条件语句 50

5.1 布尔表达式 50

5.2 条件语句:if、else、else if 51

5.3 草图中的条件语句 54

5.4 逻辑运算符 56

5.5 多个鼠标翻转效果的实现 58

5.6 布尔变量 59

5.7 弹力球 62

5.8 物理学基础 66

第6章 循环 69

6.1 什么是迭代 69

6.2 while循环:你唯一真正需要的循环 71

6.3 “退出”条件 73

6.4 for循环 75

6.5 局域变量与全局变量 77

6.6 draw()循环内部的循环 80

6.7 长出胳膊的Zoog 82

第二节 课的项目 84

第三节 课 结构化 86

第7章 函数 86

7.1 将代码分解 86

7.2 用户自定义函数 87

7.3 定义函数 88

7.4 简单的模块化 89

7.5 实参 91

7.6 传递副本 95

7.7 返回类型 97

7.8 重新整理Zoog 100

第8章 对象 103

8.1 掌握面向对象编程 103

8.2 使用对象 104

8.3 编写饼干模具的程序 105

8.4 使用一个对象的具体步骤 107

8.5 使用标签进行组合 109

8.6 构造函数参数 112

8.7 对象也是数据类型 115

8.8 面向对象的Zoog 116

第三节 课的项目 119

第四节 课 重复性 122

第9章 数组 122

9.1 数组的作用 122

9.2 数组是什么 124

9.3 声明和创建数组 125

9.4 初始化数组 126

9.5 数组运算 127

9.6 简单的数组示例:蛇 129

9.7 对象数组 131

9.8 交互式对象 133

9.9 Processing的数组函数 136

9.10 1001个Zoog 137

第四节 课的项目 139

第五节 课 融会贯通 142

第10章 算法 142

10.1 我们现在在哪里?我们将要去哪里 142

10.2 算法:跟着你自己的节奏跳舞 143

10.3 从概念到部分 144

10.4 第1部分:雨水采集器 145

10.5 第2部分:相交 147

10.6 第3部分:计时器 152

10.7 第4部分:雨滴 154

10.8 整合 157

10.9 为下一步做好准备 164

第五节 课的项目 165

第11章 调试 166

11.1 建议1:休息一下 166

11.2 建议2:让另外一个人参与进来 166

11.3 建议3:简化 167

11.4 建议4:println()是你的朋友 168

第12章 库 171

12.1 库概述 171

12.2 内置库 172

12.3 第三方库 172

12.4 手动安装库 173

第六节 课 你周围的世界 176

第13章 数学 176

13.1 数学和编程 176

13.2 模数 177

13.3 随机数 178

13.4 概率回顾 179

13.5 代码中的事件概率 179

13.6 Perlin噪声 181

13.7 map()函数 184

13.8 角度 185

13.9 三角学 186

13.10 振荡 188

13.11 递归 190

13.12 二维数组 193

第14章 三维平移和旋转 198

14.1 z坐标轴 198

14.2 P3D究竟是什么 202

14.3 顶点形状 203

14.4 自定义三维图形 205

14.5 简单的旋转 207

14.6 围绕不同的轴旋转 209

14.7 scale()函数 211

14.8 pushMatrix()和popMatrix()函数 212

14.9 用Processing模拟太阳系 218

14.10 PShape类 220

第六节 课的项目 222

第七节 课 显微镜下的像素 224

第15章 图像 224

15.1 图像入门 224

15.2 图像的动画效果 226

15.3 我的第一个图像处理滤镜 228

15.4 图像数组 229

15.5 像素,像素,更多的像素 231

15.6 图像处理简介 235

15.7 另外一个图像处理滤镜:制作属于你自己的tint()函数 236

15.8 写入另外一个PImage对象的像素 237

15.9 第二阶段:像素组处理 239

15.10 具有创意的可视化 242

第16章 视频 244

16.1 视频直播 244

16.2 已录制的视频 249

16.3 软件镜像 251

16.4 视频作为传感器和计算机视觉 256

16.5 背景消除 260

16.6 运动检测 263

16.7 计算机视觉库 266

第七节 课的项目 267

第八节 课 外面的世界 270

第17章 文本 270

17.1 字符串从哪来 270

17.2 什么是字符串 271

17.3 显示文字 273

17.4 文字的动态效果 275

17.5 文字马赛克 278

17.6 旋转文字 280

17.7 按字符逐一显示文字 281

第18章 数据输入 286

18.1 字符串的操作 286

18.2 拆分和组合 288

18.3 处理数据 290

18.4 处理文本文件 291

18.5 表格数据 293

18.6 非标准化格式的数据 297

18.7 文本分析 302

18.8 XML 305

18.9 使用Processing的XML类 307

18.10 JSON 312

18.11 JSONObject和JSONArray 315

18.12 线程 318

18.13 API 320

第19章 数据流 323

19.1 网络通信 323

19.2 创建服务器 324

19.3 创建客户端 327

19.4 广播 329

19.5 多用户通信,第1部分:服务器 331

19.6 多用户通信,第2部分:客户端 333

19.7 多用户通信,第3部分:组合 335

19.8 串行通信 336

19.9 使用信号交换的串行通信 338

19.10 使用字符串的串行通信 339

第八节 课的项目 342

第九节 课 制造噪音 344

第20章 声音 344

20.1 基础的声音播放 344

20.2 关于声音播放的更多内容 348

20.3 声音合成 350

20.4 声音分析 353

20.5 声音阈值 355

20.6 频谱分析 358

第21章 导出 361

21.1 导出至Web 361

21.2 独立的应用程序 362

21.3 高分辨PDF文件 363

21.4 图像和saveFrame() 367

21.5 录制视频 367

第九节 课的项目 370

第十节 课 超越Processing 372

第22章 高级的面向对象编程 372

22.1 封装 372

22.2 继承 374

22.3 一个继承的示例:图形 378

22.4 多态性 381

22.5 重载 384

第23章 Java 386

23.1 揭开Processing魔法 386

23.2 如果不使用Processing,代码看上去会是什么样子 387

23.3 探索Java API 389

23.4 其他有用的Java类:ArrayList 390

23.5 其他有用的Java类:Rectangle 396

23.6 异常(错误)处理 398

23.7 Processing之外的Java 400

附录A 常见错误 402