官方手册:Welcome to Processing! / Processing.org
画布
void setup()执行一次的函数
void draw()循环 有了void draw,程序才会持续刷新,持续监听动态
void mousePressed()描述的是鼠标按下之后会执行什么命令
size(长,宽) 铺开画布,画布大小
background() 背景 一个值灰度 三个值RGB 两个值/四个值最后加上alpha
画笔
strokeWeight(线宽)描边
stroke(R,G,B)描边颜色
fil(R,G,B,A)填色
noStroke()去框
noFill去填充
图形/文字/几何体
图形
point(x,y)
line(x1,y1,x2,y2)
triangle(x1,y1,x2,y2,x3,y3)三角形
ellipse(x位置,y位置,长轴,短轴)椭圆
rect(x1,y1,x2,y2)长方形
多边形画法:
beginShape();
vertex(x,y);
vertex(x,y);
……
endShape(CLOSE)//连接第一个点和最后一个点。依次连接,注意顺序。
frameRate每秒运行的次数
mouseX mouseY数据 定位自己的鼠标
mousePressed
for int i=0;i<= ;i++
&& and
|| or
line
文字
text(“文字内容”/变量名,x,y)
字体使用
将ttc格式的字体拖进编译框,记得开头声明PFont myFont
在setup写入myFont=reateFont(“字体名称”,大小)创建字体。
在draw框架内,使用textFont(字体名称)调用字体
textSize(字体尺寸)
textAlign(CENTER/RIGHT/LEFT,CENTER/TOP/BOTTOM)对齐方式 记得大写!
fill可以用来填充文字颜色。
数据
random(a) 0~a的随机数
random(a,b)a~b的随机数
ceil(数据) 天花板,上进一格,比你大的整数
floor(数据) 地板,下进一格,比你小的整数
round(数据)
dist(x1,y1,x2,y2)求两点距离=sqrt(sq(xa-xb)+sq(ya-yb))两点距离公式//前者省运算,否则得多开方
基础语法
数组
声明:数据类型[]数组名称=new 数据类型[数量]
数组赋值与使用可以使用for循环遍历。
任何数据类型都可以创建 PImage也可以
小心越界
二维数组 //有一说一,为什么processing不好好设计一个二维数组的语法。。。
编号=行号*每排数量+列号
即 行号=编号/每排数量
列号=编号%每排数量
功能函数
map映射函数
map(x,a,b,A,B)
B=map(A,A起点,A终点,B起点,B终点)
正态分布/高斯分布
float x=randomGaussian();
图像
把图片拖入代码编辑器,生成data文件夹,data就是资源包
PImage pic;
pic = LoadImage(“ sample.jpg");//载入图片
pic. resize( 640, 360);//调整尺寸
image(pic,50,50);//显示图片
color C = pic.get( 639 ,359);//提取颜色
copy(x1,y1,x2,y2,x3,y3,x4,y4)将像素区域从一个图像复制到另一个图像中。
LoadPixels()把当前画面所有的像素颜色导入到pixels数组里
updatePixels()用pixels里存储的画面颜色值重新渲染画面
width,height窗口的宽和高
pic.width, pic.height 变量图片的宽和高
画面
frameCount当前是第几帧画面
输入
mouseX mouseY
pmouseX pmouseY上一帧鼠标位置
mousePressed鼠标按下的判定,布尔类型
色彩
color col = pic.get( 320,180)颜色变量 一张图某个像素点的颜色数据
float redValue = red(col)红色分量
float greenValue = green(col)绿色分量
float blueValue = blue(col)蓝色分量
float hueValue= hue(col)色相值
float satValue= saturation(col)饱和度
float briValue=brightness(col)明度
float alphaValue = alpha(col)透明度
三角函数
ellipse和rac都是画圆,
arc(x,y,w,h,sa,fa);顺时针sa:起始角度fa:结束角度fa>sa。(这里是弧度
radians(角度)角度转换成弧长
atan2(y,x)反正切函数。输入两条直角边的长度,可以算出角度。
计算从指定点到从正 x 轴测量的坐标原点的角度(以弧度为单位)。值以 float 的形式返回,范围从 PI 到 -PI 。 atan2() 函数最常用于将几何体定向到光标的位置。注意:由于计算切线的结构,点的y坐标是第一个参数,x坐标是第二个参数。
坐标系
translate(x,y)坐标系偏移
scale(倍数)缩放
rotate(弧度)让坐标系以原点为轴心,顺时针旋转x度
要成对出现!
pushMatrix();记录坐标系
popMatrix();恢复到↑的状态
时间
hour() minute() second()返回时分秒
基础概念
RGB
HSB:hue色相saturation饱和度brightness明度
黄金角度137.508
把一个圆分成a,b两个圆弧,当b=137.508时b/a=0.618黄金分割比
Voronoi Diagram