没有合适的资源?快使用搜索试试~ 我知道了~
首页Processing入门指南:零基础探索图像编程与交互艺术
Processing入门指南:零基础探索图像编程与交互艺术
需积分: 10 4 下载量 94 浏览量
更新于2024-07-17
收藏 49.04MB PDF 举报
"《学习Processing:图像编程入门指南》第二版是一本友好的入门教材,专为那些对昂贵软件和复杂编程语言望而却步的初学者设计。它不设门槛,旨在教授创建前沿图形应用的基本编程构建块,包括互动艺术、实时视频处理和数据可视化。书中包含逐步示例、详尽解释、实践练习以及可供参考的代码,帮助读者平稳地度过学习曲线。 作为一本实验室风格的手册,本书特别针对图形和网页设计师、艺术家、插图师等各类专业人士,通过讲解编程语言的基础原则和精选高级技巧,让他们能够快速掌握Processing编程环境。作者丹尼尔·希夫曼以其独特的教学方法,从算法和数据挖掘开始,逐步深入到渲染和调试,系统地教授面向对象编程,这一切都发生在引人入胜的交互式视觉媒体背景下。 本书尤其适合没有编程背景的图形设计师和视觉艺术家,无论是在校大学生还是研究生,或者自学成才者,都能从中获益匪浅。它不仅教授基础知识,如变量、控制结构和函数,还会介绍如何利用Processing进行图像处理、动画制作和用户界面设计,使读者能够创作出具有交互性的多媒体作品。此外,书中的实例项目和挑战任务有助于读者将理论知识转化为实践技能,从而在视觉计算领域迈出坚实的步伐。《学习Processing》是想要跨越编程门槛,探索数字艺术和技术融合的创意人士的理想选择。"
资源详情
资源推荐
you start out trying to program everything all at once, it will be very hard to nd these bugs. e one-
step-at-a-time methodology, however, allows you to tackle these mistakes one at a time, squishing the
bugs.
In addition, incremental development lends itself really well to object-oriented programming, a core
principle of this book. Objects, which will be introduced in Chapter 8, will help you to develop projects in
modular pieces as well as provide an excellent means for organizing (and sharing) code. Reusability will
also be key. For example, if you have programmed a spaceship for Space Invaders and want to start
working on asteroids, you can grab the parts you need (i.e., the moving spaceship code), and develop the
new pieces around them.
Algorithms
When all is said and done, computer programming is all about writing algorithms. An algorithm is a
sequential list of instructions that solves a particular problem. And the philosophy of incremental
development (which is essentially an algorithm for you, the human being, to follow) is designed to make
it easier for you to write an algorithm that implements your idea.
As an exercise, before you get to Chapter 1, try writing an algorithm for something you do on a daily
basis, such as brushing your teeth. Make sure the instructions seem comically simple (as in, “Move the
toothbrush one centimeter to the left.”)
Imagine that you had to provide instructions on how to accomplish this task to someone entirely
unfamiliar with toothbrushes, toothpaste, and teeth. at is how it is to write a program. A computer is
nothing more than a machine that is brilliant at following precise instructions, but knows nothing about
the world at large. And this is where you begin your journey, your story, your new life as a programmer.
You begin with learning how to talk to your friend, the computer.
Introductionxx
Exercise I-1: Introductory Exercise: Write instructions for brushing your teeth.
Some suggestions:
• Do you do dierent things based on conditions? How might you use the words “if” or
“otherwise” in your instructions? (For example: if the water is too cold, increase the
warm water. Otherwise, increase cold water.)
• Use the word “repeat” in your instructions. For example: Move the brush up and
down. Repeat ve times.
Also, note that I am starting with Step #0. In programming, one often counts starting
from 0, so it’s good to get used to this idea right o the bat!
How to brush your teeth by ___________________________________________
Step 0. ___________________________________________________________
Step 1. ___________________________________________________________
Step 2. ___________________________________________________________
Step 3. ___________________________________________________________
Step 4. ___________________________________________________________
Step 5. ___________________________________________________________
Step 6. ___________________________________________________________
Step 7. ___________________________________________________________
Step 8. ___________________________________________________________
Step 9. ___________________________________________________________
xxiIntroduction
1 Pixels
A journey of a thousand miles begins with a single step.
—Lao-tzu
In this chapter:
– Specifying pixel coordinates
– Basic shapes: point, line, rectangle, ellipse
– Color: grayscale, RGB
– Color: alpha transparency
Note that you are not doing any programming yet in this chapter! You are just dipping your feet in the water and
getting comfortable with the idea of creating onscreen graphics with text-based commands, that is, “code”!
1-1 Graph paper
is book will teach you how to program in the context of computational media, and it will use the
development environment Processing (http://www.processing.org) as the basis for all discussion and
examples. But before any of this becomes relevant or interesting, you must rst channel your eighth-grade
self, pull out a piece of graph paper, and draw a line. e shortest distance between two points is a good
old fashioned line, and this is where you will begin, with two points on that graph paper.
Figure 1-1
Figure 1-1 shows a line between point A (1,0) and point B (4,5). If you wanted to direct a friend of yours
to draw that same line, you would say “draw a line from the point one-zero to the point four-ve, please.”
Well, for the moment, imagine your friend was a computer and you wanted to instruct this digital pal to
display that same line on its screen. e same command applies (only this time you can skip the
pleasantries and you will be required to employ a precise formatting). Here, the instruction will look like
this:
line(1, 0, 4, 5);
Congratulations, you have written your rst line of computer code! I’ll will get to the precise formatting
of the above later, but for now, even without knowing too much, it should make a fair amount of sense. I
am providing a command (which I will refer to as a function) named line for the machine to follow. In
addition, I am specifying some arguments for how that line should be drawn, from point A (1,0) to point
B (4,5). If you think of that line of code as a sentence, the function is a verb and the arguments are the
objects of the sentence. e code sentence also ends with a semicolon instead of a period.
Figure 1-2
e key here is to realize that the computer screen is nothing more than a fancier piece of graph paper.
Each pixel of the screen is a coordinate — two numbers, an x (horizontal) and a y (vertical) — that
determine the location of a point in space. And it’s your job to specify what shapes and colors should
appear at these pixel coordinates.
Nevertheless, there is a catch here. e graph paper from eighth grade (Cartesian coordinate system) placed
(0,0) in the center with the y-axis pointing up and the x-axis pointing to the right (in the positive
direction, negative down and to the left). e coordinate system for pixels in a computer window,
however, is reversed along the y-axis. (0,0) can be found at the top left with the positive direction to the
right horizontally and down vertically. See Figure 1-3.
Figure 1-3
Lesson 1: The Beginning4
Exercise 1-1: Looking at how I wrote the instruction for line — line(1, 0, 4, 5); — how would you guess you
would write an instruction to draw a rectangle? A circle? A triangle? Write out the instructions in English and then
translate it into code.
English: _________________________________________________________________
Code: _________________________________________________________________
English: _________________________________________________________________
Code: _________________________________________________________________
English: _________________________________________________________________
Code: _________________________________________________________________
Come back later and see how your guesses matched up with how Processing actually works.
1-2 Simple shapes
e vast majority of the programming examples in this book will be visual in nature. You may ultimately
learn to develop interactive games, algorithmic art pieces, animated logo designs, and (insert your own
category here) with Processing, but at its core, each visual program will involve setting pixels. e
simplest way to get started in understanding how this works is to learn to draw primitive shapes. is is
not unlike how you learn to draw in elementary school, only here you do so with code instead of crayons.
I’ll start with the four primitive shapes shown in Figure 1-4.
Figure 1-4
For each shape, ask yourself what information is required to specify the location and size (and later color)
of that shape and learn how Processing expects to receive that information. In each of the diagrams below
(Figure 1-5 through Figure 1-11), assume a window with a width of ten pixels and height of ten pixels.
is isn’t particularly realistic since when you really start coding you will most likely work with much
larger windows (ten by ten pixels is barely a few millimeters of screen space). Nevertheless, for
demonstration purposes, it’s nice to work with smaller numbers in order to present the pixels as they
might appear on graph paper (for now) to better illustrate the inner workings of each line of code.
5Pixels
剩余524页未读,继续阅读
ALo54
- 粉丝: 5
- 资源: 111
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 前端面试必问:真实项目经验大揭秘
- 永磁同步电机二阶自抗扰神经网络控制技术与实践
- 基于HAL库的LoRa通讯与SHT30温湿度测量项目
- avaWeb-mast推荐系统开发实战指南
- 慧鱼SolidWorks零件模型库:设计与创新的强大工具
- MATLAB实现稀疏傅里叶变换(SFFT)代码及测试
- ChatGPT联网模式亮相,体验智能压缩技术.zip
- 掌握进程保护的HOOK API技术
- 基于.Net的日用品网站开发:设计、实现与分析
- MyBatis-Spring 1.3.2版本下载指南
- 开源全能媒体播放器:小戴媒体播放器2 5.1-3
- 华为eNSP参考文档:DHCP与VRP操作指南
- SpringMyBatis实现疫苗接种预约系统
- VHDL实现倒车雷达系统源码免费提供
- 掌握软件测评师考试要点:历年真题解析
- 轻松下载微信视频号内容的新工具介绍
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功