"processing语言学习笔记"
这是一份关于Processing编程语言的学习笔记,作者逐步记录了他们的学习历程。Processing是一种基于Java的编程语言,专为艺术家、设计师和非程序员设计,用于创建视觉艺术、数据可视化和互动媒体。由于Processing与Arduino紧密关联,它也常被用于电子制作和物理计算项目。
笔记涵盖了多个核心知识点:
1. `ellipse()`函数:这个函数用于在Processing中绘制椭圆,支持四种不同的模式,包括中心点模式、矩形模式、相对模式和绝对模式,可以根据需要灵活控制椭圆的位置和形状。
2. Export输出应用程序:Processing允许将程序导出为可执行文件,使得其他人无需安装Processing IDE也能运行你的作品。
3. 填充与描边:理解如何设置颜色和透明度,对图形进行填充或描边,是Processing中基本的绘图操作。
4. `vertex()`函数:通过此函数可以绘制复杂的多边形,自定义每个顶点的坐标,实现自由形状的构建。
5. `dist()`函数:这个函数计算两点之间的距离,对于碰撞检测和位置判断非常有用。
6. 键盘交互:Processing提供了处理键盘事件的能力,使得用户可以通过按键与程序进行互动。
7. 图片加载与显示:学习如何导入和显示图像,增强了Processing的视觉表现力。
8. 创建和绘制字体:自定义字体并用它们来绘制文本,可以增加程序的视觉效果和信息传递能力。
9. 插件库安装:Processing有丰富的第三方库,笔记记录了如何安装和使用这些库来扩展功能。
10. SVG文件读取:Processing能够读取SVG矢量图形文件,便于导入复杂的设计。
11. `map()`函数:将一个数值从一个范围映射到另一个范围,常用于处理传感器数据或调整图形比例。
12. `constrain()`函数:限制数值在一个指定范围内,防止超出预期值。
13. 使用`millis()`触发计时器:通过获取系统毫秒级时间戳,可以实现定时事件和动画效果。
14. Processing.js:Processing还可以通过Processing.js库在网页中运行,实现Web端的交互式图形。
15. 平移、旋转和缩放:学习如何对图形进行二维和三维的空间变换,实现动态视觉效果。
16. 数组的使用:掌握如何使用数组存储和处理多个数据,这对于组织和管理数据至关重要。
17. 三维坐标系统:Processing支持三维绘图,理解XYZ坐标系对于创建3D图形至关重要。
18. OPENGL的灯光和相机:Processing可以利用OPENGL进行高性能渲染,理解和应用灯光和相机模型可以增强3D场景的真实感。
19. 使用Processing的原因:笔记可能讨论了选择Processing作为创作工具的优点和应用场景。
20. 无规则图形和算法:笔记可能涉及了生成随机或复杂形状的方法,以及如何运用算法来创造独特视觉效果。
这份笔记全面介绍了Processing的基础和进阶特性,适合初学者逐步学习和进阶者参考,帮助读者掌握Processing语言,并应用于艺术创作、数据可视化和互动媒体项目。