Processing互动编程

Processing互动编程 pdf epub mobi txt 电子书 下载 2025

任远 著
图书标签:
  • Processing
  • 互动编程
  • 编程入门
  • 创意编程
  • 可视化
  • 设计
  • 艺术
  • 教育
  • 算法
  • 图形
想要找书就要到 静流书站
立刻按 ctrl+D收藏本页
你会得到大惊喜!!
出版社: 科学出版社
ISBN:9787030421364
版次:1
商品编码:11596853
包装:平装
开本:16开
出版时间:2014-11-01
用纸:胶版纸
页数:288
正文语种:中文

具体描述

产品特色

编辑推荐

适读人群 :专业编程人员和学习互动艺术的读者
入门书籍,内容丰富,实用

内容简介

  《Processing互动编程》共分3部分:第1部分主要介绍Processing编程语言,为避免枯燥,使用了大量的与现实生活类比的方法,让你一层一层地深入,培养抽象和从整体到部分再到整体的思维方式;第2部分主要介绍图形绘制和图形动画,让你学会用程序描述的方法来绘制各种各样的图形,并且在图形的基础上,利用数学知识来实现程序动画,该部分会涉及坐标、颜色、文本、位图、3D等概念;第3部分主要介绍在程序动画的基础上添加交互因素,构成完整的交互结构,这些交互因素包括鼠标、键盘、时间等。《Processing互动编程》可以让读者学会互动编程的思维模式,同时激发个人的互动艺术理念。

目录

第1部分语言基础
第1章Processing
1.1HelloProcessing
1.2Helloworld
1.3第一个图形
1.4第一个动画
1.5第一个交互
第2章变量
2.1声明变量
2.2数据类型
2.3变量名
2.4变量赋值
2.5常?量
第3章?运算符
3.1基本算数运算符
3.2赋值算数运算符
3.3自增、自减运算符
3.4关系运算符
3.5逻辑运算符
3.6条件运算符
第4章条件语句
4.1if条件语句
4.2ifelse语句
4.3elseif语句
4.4swicth分支语句
第5章循环语句
5.1while循环语句
5.2for循环语句
5.3循环嵌套
5.4跳出循环
第6章函数
6.1?定义函数
6.2函数的参数
6.3函数返回结果
6.4函数重载
6.5函数递
第7章类
7.1定义类
7.2类的继承
7.3覆盖父类方法
7.4重写toString()方法
7.5标签类
第8章字符串
8.1数组基本概念
8.2字符串的初始化
8.3字符串的方法
8.4字符串处理函数
8.5实现字符串大小写转换
第9章数组
9.1二维数组
9.2数组处理函数
9.3实现连接两个数组
9.4值数据类型与引用数据类型
第10章列表
10.1添加和删除列表元素
10.2设置和返回列表元素
10.3列表的排序
10.4列表的运算
第11章字典
11.1字典的键和值
11.2遍历键和值
11.3排序键和值
11.4字典的运算
第2部分图形、动画
第12章运行环境
12.1坐标系统
12.2程序主结构
12.3帧速率
12.4窗口大小
第13章数学基础
13.1数学计算
13.2约束、映射
13.3角度制和弧度制
13.4三角函数
13.5反正切函数
第14章2D基础图形
14.1基础几何图形
14.2描边属性
14.3扇形、弓形、环形、扇环
14.4虚线、网格
第15章颜色
15.1色彩模式
15.2创建和设置颜色
15.3颜色分量
15.4颜色渐变
第16章变换
16.1基本变换
16.2变换堆栈
16.3使用变换绘制图形
16.4变换动画
第17章曲线
17.1Bezier曲线
17.2Bezier曲线路径动画
17.3Curve曲线
17.4Curve多条连续路径动画
第18章复杂图形
18.1vertex绘制
18.2?正多边形和星形
18.3vertex环形、扇环
18.4PShape图形对象
第19章3D图形
19.13D坐标系统
19.2三维灯光
19.3三维材质
19.4三维透视
第20章随机、噪波、向量
20.1随机函数
20.2噪波函数
20.3PVector向量对象
20.4粒子动画
第21章位图
21.1加载位图
21.2显示位图
21.3PImage位图对象
21.4位图遮罩动画
21.5滤镜
21.6混合
21.7贴图
21.8位图随机动画
第22章文本
22.1文本术语
22.2文本显示
22.3字体属性
22.4创建和设置字体
22.5环形文本
22.6文本随机动画
第3部分交?互
第23章鼠标交互
23.1鼠标事件
23.2鼠标事件函数
23.3鼠标状态变量
23.4draw()函数里实现所有鼠标事件
23.5鼠标拖拽
23.6鼠标光标
23.7鼠标绘制
第24章键盘交互
24.1键盘事件
24.2键盘控制
24.3键盘交互
24.4窗口焦点
第25章日期、时间
25.1日期、时间函数
25.2设置程序使用期限
25.3制作简单计时器
25.4模拟时钟

精彩书摘

  第1部分 语言基础

  第1章 Processing
  1.1 Hello Processing
  Processing开发环境(Processing Development Environment),简称PDE,可以从它的官方网站(https://www.processing.org/download/)下载安装。PDE主要有运行窗口和编辑窗口两个窗口。运行窗口用来运行你的程序效果,编辑窗口主要用来编辑代码和发布程序。编辑窗口包括工具栏、标签栏、代码编辑区、消息区、控制台。
  工具栏 :包括运行、停止运行、新建、打开、保存、发布等按钮。
  运行:点击“运行”按钮可以运行你的程序。运行时会弹出“运行窗口”,你可以通过“运行窗口”来观察程序的视觉效果和交互效果。
  停止运行:点击“停止运行”按钮可以关闭“运行窗口”。
  新建:新建一个Processing工程文件,会弹出一个新的未保存的代码编辑窗口。在开发过程中,可以利用它来新建代码编辑窗口,测试某一段程序代码单独运行的效果。
  打开:打开一个指定路径的Processing工程文件,还可以打开最近的工程或者是Processing事例代码。
  保存:保存目前的工程文件。
  开发模式:点击右上角“Java”按钮可以切换开发模式。Processing支持很多种开发模式,可以通过点击“Add Mode”来添加新的开发模式(JavaScript、Android等),添加后需要重新运行Processing才能显示。
  标签栏:打开标签栏向下箭头的弹出菜单,可以点击“New Tab”新建标签。如果代码有很多行的话可以用它来扩展程序。不过一般我们会用它来定义一个单独的类,在后面的第7章我们会详细讲到。
  代码编辑区:所有的程序代码都在这里编辑。会用不同颜色来区分数据类型、系统变量、系统常量、系统函数、语句等。
  消息区:显示程序编译时的错误(语法错误),还有一些提示消息。
  控制台:显示程序运行时的错误,还可以用print()或println()函数在这里输出信息。
  1.2 Hello world
  我们开始写第一行代码,让你的Processing向世界问声好。打开Processing,在代码编辑区输入下面的代码:
  println("Hello, world!");
  点击“运行”后,在控制台会输出“Hello,world!”(不包含双引号)。
  我们在程序开发的过程中,可能会追踪某个变量在某个时刻的值,或者输出一些有用的信息来分析程序。这时可以使用print()和println()函数,在程序运行的时候通过控制台输出信息。print()和println()函数的区别是,println()函数输出完信息后会换行,而print()函数不会,例如:
  println("Hello,");
  println("world!");
  /* 输出:
  Hello,
  world!
  */

  print("Hello,");
  print("world!");
  //输出:Hello,world!
  有时候我们在写代码时为了便于阅读和理解会给代码添加一些标注,但是我们知道在代码编辑器里写的任何非程序语法的文字,程序都会报错。在Processing里可以使用注释,注释是不会被当作执行代码的。用“//”来添加单行注释,用“/* ”开始符号和“*/”结束符号来添加多行注释:
  //单行注释

  /*
  多行注释
  多行注释
  */
  1.3 第一个图形
  以画面中心为原点画一个直径为100像素的圆,如图1.2所示。
  ellipse(50,50,100,100); //画一个椭圆,x、y坐标都为50,宽和高都为100
  Processing提供了大量有关绘图的函数,这些函数就好比是各种各样的绘图工具。而且还可以添加图片,支持叠加和滤镜功能,如果你之前学习过图形编辑软件的话,比如Adobe Photoshop,那么在学习Processing的时候,会发现有很多概念都似曾相识。没错!图形编辑软件其实就是把绘图操作可视化。而程序绘图是使用程序语言来描述绘图。所谓描述绘图就是,概括出图形的所有特征属性,用相应的属性值来描述它。比如画一个圆,圆的特征属性是半径和位置,那么我们只要告诉Processing这个圆的半径和位置,Processing就会在屏幕帮我们画出这个圆。是不是很简单,就好像你在告诉一个使用绘图软件的人,让他帮你画出你想要的东西一样。只不过你和他沟通的时候,需要和他说他能听得懂的语言——Processing程序语言。本书将教你如何使用Processing程序语言,让你学会和他沟通,绘制出各种各样的图形。
  1.4 第一个动画
  以画面中心为原点画一个圆,让圆的直径从0开始逐渐变大,如图1.3所示。
  int diameter = 0; //声明一个直径变量,初始值为0

  //draw()函数会不断地循环执行
  void draw() {
  //画一个圆,直径为diameter变量
  ellipse(50, 50, diameter, diameter);
  diameter++; //每次循环,让直径变量增加1
  }
  上面的圆形可以随着时间逐渐变大,是因为把它的特征属性“直径”设置成了随着时间变化的量,这样就形成了动画。这种把特征属性设置为随着时间而变化的方法,是程序动画的基本实现机制。和我们传统的逐帧动画不同,传统逐帧动画需要在每一帧都重画,而程序动画只需要改变它的特征属性,计算机就会帮我们重绘,这也是为什么我们在绘图的时候用描述图形特征属性的方法来绘制。
  1.5?第一个交互
  不断以鼠标x、y坐标为原点画直径为100像素的圆,你可以移动鼠标来进行交互,如图1.4所示。
  //draw()函数会不断循环执行
  void draw() {
  //画一个圆,位置为鼠标的x、y坐标
  ellipse(mouseX, mouseY, 100, 100);
  }
  上面的圆形可以随着鼠标的移动而改变位置,是因为把它的特征属性“位置”设置成了随着时间变化的量,并且变化的量由鼠标位置来决定,这就是在程序动画的基础上添加交互因素的设计方法。
  我们已经学习了第一个图形、第一个动画、第一个交互。在这里我想告诉读者,本章不要求你理解上面所有例子中每一行代码的原理,主要目的是让你对交互动画有个初步的理解,并且能够带着交互动画的概念来完成本书的学习。下面是构成交互动画的三个过程:
  (1)图形:用特征描述绘图。
  (2)动画:把特征属性定义为随时间变化的量。
  (3)交互:设置变化量的决定因素。
  ……

前言/序言


《数字艺术新浪潮:从像素到动态表达》 简介 在信息爆炸的数字时代,我们已不再满足于静态的视觉呈现。从触屏的交互式海报,到沉浸式的虚拟现实体验,再到响应用户行为的动态网页,数字艺术的边界正在被不断拓展。然而,要驾驭这股涌动的创意洪流,需要的不仅仅是天马行空的想象力,更需要一套能够将零散想法转化为鲜活数字生命的技术语言。《数字艺术新浪潮:从像素到动态表达》便是这样一本旨在为你开启数字艺术创作新篇章的指南。 本书并非枯燥的技术手册,而是一次充满探索与实践的旅程。它将引导你深入理解数字艺术创作的核心原理,从最基础的像素构成、色彩理论,到复杂的算法生成、实时互动设计。我们相信,真正的创造力源于对工具的深刻理解与自由运用。因此,本书将聚焦于那些能够赋予你直接控制数字元素、让它们按照你的意愿呼吸、移动、回应的编程技术。 第一部分:数字世界的基础构建 在踏上创作之旅前,我们首先需要为你的想象力打下坚实的根基。这一部分将带你认识数字世界的基本构成元素。 像素的语言: 任何数字图像,无论多么复杂,都离不开构成它的基本单元——像素。我们将从像素的本质出发,理解它们如何组合成色彩、形状和纹理。你将学会如何以编程的方式“绘制”像素,理解它们的颜色模型(RGB、CMYK等)及其在不同媒介下的表现差异。这不仅仅是关于画面的美感,更是关于理解数字信息如何被“看见”。 色彩的魔力: 色彩是数字艺术中最直接、最富有情感的表达方式。本书将深入探讨色彩理论,从色轮、互补色、对比色到色彩心理学。你将学习如何通过编程精确地控制颜色,如何创建和谐、对比强烈或具有特定情绪的色彩方案。我们还将触及颜色空间的概念,理解不同颜色空间在数字创作中的应用场景,例如在屏幕显示与印刷输出之间的转换。 几何学的韵律: 从简单的直线、圆形到复杂的曲线和多边形,几何形状构成了数字视觉元素的基础骨架。你将学习如何使用代码绘制各种几何图形,理解向量图形与栅格图形的区别,并探索如何通过数学函数来生成更加有机、复杂的形状。这部分内容将为你铺设通往更高级图形生成的道路。 坐标系的探索: 在二维或三维的数字空间中,理解坐标系是定位和操控图形的关键。我们将深入讲解笛卡尔坐标系、极坐标系等,并演示如何通过编程将图形放置在精确的位置,如何进行缩放、旋转和形变。熟练掌握坐标系,你就能如同在画布上挥洒自如一般,在数字空间中自由地安排你的创作元素。 第二部分:让画面“活”起来——动态与运动的艺术 静态的图像终究难以完全承载我们涌动的创意。让画面动起来,是数字艺术表达情感、叙事和互动性的重要途径。 时间的魔术师: 时间是动态艺术的灵魂。你将学习如何通过编程控制元素在时间轴上的运动,如何定义动画的开始、结束、持续时间和插值方式。我们将探索关键帧动画、基于时间函数的连续运动,以及如何创建流畅、自然的运动轨迹。 运动的轨迹与法则: 物理世界的运动规律,如重力、惯性、弹性,都能赋予数字动画更强的真实感和生命力。本书将引入一些基础的物理模拟概念,让你能够编写代码来模拟这些运动,使你的动画元素看起来更加自然,仿佛拥有自己的生命。 程序化动画的魅力: 传统的逐帧动画耗时耗力,而程序化动画则提供了一种更高效、更具创造性的方式。你将学习如何利用算法来生成动态效果,例如粒子系统的行为、随机变化的纹理,或者根据预设规则自动生成的复杂动画序列。这种方式能让你在短时间内创造出令人惊叹的视觉奇观。 循环与节奏的交织: 动画的循环和节奏是营造视觉冲击力和叙事氛围的关键。我们将探讨如何设计出无缝的循环动画,如何通过节奏的变化来引导观众的注意力,以及如何利用重复的模式来增强画面的统一性和表现力。 第三部分:连接观众——互动设计的实践 在数字世界中,艺术不再是单向的传递,而是与观众之间的双向对话。互动设计赋予了数字艺术生命,使其能够响应用户的行为,并呈现个性化的体验。 用户输入的捕捉与响应: 鼠标的移动、点击、键盘的输入,甚至触摸屏的多点触控,都是用户与数字艺术互动的基本方式。你将学习如何编写代码来捕捉这些用户输入事件,并根据这些事件来触发相应的视觉反馈或行为变化。 状态的演变与转换: 互动艺术的核心在于“状态”的改变。一个图形可以根据用户的操作而改变颜色、大小、形状,甚至位置。本书将引导你理解如何通过编程来管理和改变这些状态,从而实现丰富的互动效果。 事件驱动的艺术: 事件驱动的编程模型是实现实时互动的基础。你将学习如何将用户的行为视为“事件”,并编写相应的“事件处理器”来响应这些事件。这种模型使得你的数字艺术能够实时地对用户的每一个动作做出反应。 数据可视化与互动: 将复杂的数据转化为直观、易懂的视觉形式,是现代数字艺术的重要方向。本书将介绍如何利用编程将数据可视化,并让这些图表能够根据用户的探索行为而动态变化,提供更深入的洞察。 第四部分:构建完整的数字作品 从单个的视觉元素到能够独立运行的数字作品,我们需要将之前所学的知识融会贯通,并构建起完整的创作流程。 架构与组织: 一个复杂的数字作品需要清晰的结构和良好的组织。你将学习如何将代码模块化,如何管理不同的创意元素,以及如何构建一个可维护、可扩展的创作框架。 用户体验设计入门: 好的互动艺术不仅要技术上可行,更要在用户体验上引人入胜。我们将探讨一些基础的用户体验设计原则,帮助你思考如何让你的作品更容易被理解、更容易被操作,并且能够带来愉悦的体验。 跨媒体的探索: 数字艺术的边界远不止于屏幕。本书将适当地触及一些跨媒体应用的思路,例如如何将你的数字作品导出为视频,如何将其集成到网页中,或者为更复杂的交互装置打下基础。 创新与实践: 学习编程的最终目的在于创造。本书将穿插大量的实例,从简单的动画练习到复杂的交互装置原型,鼓励读者动手实践。我们将提供项目灵感,并引导读者思考如何将所学知识应用于自己的独特创意之中。 目标读者 《数字艺术新浪潮:从像素到动态表达》面向所有对数字艺术创作充满热情、渴望用代码实现创意的人们。无论你是希望提升现有设计能力的平面设计师,希望为网页注入活力的前端开发者,还是对交互装置充满好奇的艺术家,亦或是刚刚踏入数字创作领域的新手,本书都将是你宝贵的伙伴。 本书不要求你有深厚的计算机科学背景,但鼓励你拥有探索未知的好奇心和动手实践的勇气。我们相信,通过系统性的学习和持续的实践,你将能够掌握驾驭数字艺术的强大力量,在广阔的数字世界中,用你的创意描绘出属于你的独特浪潮。 结语 数字艺术的世界瞬息万变,充满无限可能。掌握了编程的语言,你就掌握了与这个世界对话的钥匙。愿《数字艺术新浪潮:从像素到动态表达》能点燃你心中的火花,帮助你将脑海中那些闪烁的灵感,转化为触手可及、引人入胜的数字艺术作品。让我们一同,开启这段激动人心的创造之旅。

用户评价

评分

这本书的封面设计就充满了创意,那一抹明亮的色彩仿佛瞬间点燃了我对代码的想象。当我迫不及待地翻开第一页,就被作者流畅而富有感染力的文字所吸引。这不是一本冰冷的技术手册,更像是一位经验丰富的向导,用最平易近人的方式,带领我一步步走进编程的奇妙世界。我原本对编程只有模糊的概念,觉得它遥不可及,但这本书却用一个个生动形象的例子,让我看到了代码的生命力。比如,书中用非常直观的方式解释了“变量”的概念,就像在玩一个填数字的游戏,我瞬间就理解了它的作用。更让我惊喜的是,作者并没有一开始就抛出晦涩难懂的概念,而是循序渐进,从最基础的指令开始,一点点构建起我的编程思维。每一次小小的成功,无论是让屏幕上出现一个简单的图形,还是让一段文字以特定的方式跳动,都给我带来了巨大的成就感。这本书让我觉得,编程并不只是属于少数天才的技能,而是每个人都可以去尝试和体验的创造过程。我非常喜欢作者在讲解过程中穿插的各种小故事和比喻,它们让原本可能枯燥的技术知识变得活泼有趣,也更容易被我理解和记住。

评分

我是一名平面设计师,一直想将自己的设计理念通过更具互动性的方式呈现出来。在朋友的推荐下,我入手了《Processing互动编程》。这本书完全超出了我的预期。我原以为会是一本硬核的技术指南,没想到读起来却像在品味一本关于“创意如何实现”的杂志。作者的文字功底非常深厚,他用非常诗意的语言描述着代码的逻辑,让我感觉仿佛置身于一个由算法构建的奇幻世界。书中大量的案例都非常有启发性,很多都是我从未想过的将编程与视觉艺术结合的方式。比如,书中讲解如何利用鼠标的移动来控制图形的生成,如何让色彩随着时间的推移而变化,这些都让我脑洞大开。我尝试着将书中的一些技巧运用到我自己的设计项目中,结果令人惊喜。我能够通过简单的代码,让我的静态设计作品“活”过来,实现用户与作品的实时互动,这种体验对于我的客户来说也是非常新颖和吸引人的。这本书不仅仅是技术上的指导,更是一种思维方式的启蒙,它让我看到了创意与技术的无限可能。

评分

作为一名对编程充满好奇心的爱好者,我一直在寻找一本能够让我轻松入门且充满乐趣的书籍。当我在书店看到《Processing互动编程》时,就被它的封面所吸引。翻开书页,我被作者充满激情的文字所感染。他以一种非常接地气的方式,将复杂的编程概念变得通俗易懂。我最欣赏的是作者对于“循序渐进”原则的把握,他不会一下子就抛出大量专业术语,而是从最基本、最直观的操作开始,一步一步地引导读者建立起对编程的认知。书中大量的插图和代码示例,都极具参考价值。我尤其喜欢书中关于“游戏化学习”的设计,通过完成一个个有趣的小项目,我能够迅速掌握新的知识点,并且在实践中不断巩固。例如,书中有一个章节是关于制作一个简单的“打地鼠”游戏,在完成的过程中,我不仅学会了如何处理用户输入,如何管理游戏状态,还体会到了编程带来的乐趣。这本书让我感觉,学习编程就像玩一个大型的益智游戏,充满挑战,也充满惊喜。

评分

我是一名软件工程师,虽然日常工作中接触的编程语言比较多,但一直对Processing这种专注于创意编程的平台很感兴趣。于是我买了《Processing互动编程》来深入了解。这本书让我看到了Processing在艺术、设计以及交互式媒体领域的巨大潜力。作者对Processing的理解非常透彻,他不仅讲解了基础的语法和命令,更重要的是,他分享了许多关于如何将Processing应用于实际项目中的宝贵经验。书中的案例都非常有深度,并且充分展示了Processing在图形绘制、动画制作、数据可视化以及交互控制等方面的强大能力。我特别喜欢书中关于“生成艺术”的章节,它让我看到了代码如何能够创造出令人惊叹的视觉效果。作者的讲解思路非常清晰,逻辑性很强,即使是初学者也能轻松理解。同时,书中也包含了一些高级的主题,对于我这样的开发者来说,也能从中获得不少启发。这本书让我对Processing有了更全面的认识,也激发了我将其运用到更多创新项目中的想法。

评分

我是一名在校大学生,一直对视觉设计和交互体验抱有浓厚的兴趣。在众多的编程入门书籍中,我一眼就看中了这本《Processing互动编程》。它的名字就透露出一种“动起来”的魅力,这正是我一直追求的。收到书后,我迫不及待地开始阅读。作者的写作风格非常独特,既有专业性的严谨,又不失艺术家的浪漫。他不仅仅教授我们如何写代码,更是在引导我们如何用代码来表达创意,如何让数字世界拥有灵魂。书中那些精彩的例子,比如如何用代码绘制出动态的山峦起伏,如何在屏幕上模拟出粒子碰撞的效果,都让我惊叹不已。我特别喜欢书中关于“算法之美”的讲解,它让我意识到,即便是看似简单的代码,背后也蕴含着精妙的逻辑和设计。我尝试着跟着书中的步骤,一点点修改代码,观察屏幕上的变化。有时候,一个小小的改动就能带来意想不到的视觉效果,这种“即时反馈”的体验,让我深深着迷。这本书让我明白,编程不再是枯燥的数字和符号的堆砌,而是一种全新的艺术语言,一种可以与世界进行对话的方式。

评分

很好,很实用,学到好多

评分

不错吧,书没啥好请假的

评分

满意哦

评分

书很快到了,质量不错

评分

很好,很实用,学到好多

评分

haohaohaoahaohaoahoahhao

评分

偏于基础,对于跨界学习入门的还不错

评分

挺好的,还不错 速度也挺快的

评分

不错吧,书没啥好请假的

相关图书

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 book.coffeedeals.club All Rights Reserved. 静流书站 版权所有