【processing】小代码2

时间:2024-01-17 11:25:44

函数:

绘制直线*图形:

beginShape(), vertex(), endShape() 分别是绘制图形开始,连接图形的节点,绘制结束 endShape(CLOSE)表示闭合图形。

绘制曲线边框*图形:

beginShape() 开始绘制

vertex() 图形起始端点

bezierVertex(cx1,cy1,cx2,cy2,x,y) 曲线 cx1,cy1,cx2,cy2为第一和第二个控制点坐标 x,y为结束端点坐标

endShape()

颜色:关键在括号后面有几个值

灰阶:            color(灰度)

灰阶含透明度: color(灰度, 透明度)

彩色:            color(R,G,B)

彩色含透明度: color(R,G,B,透明度)

colorMode(): 定义色彩模式

  colorMode(RGB, 255) 采用RGB模式

colorMode(HSB,360,100,100) 采用HSB模式 后面数字是取值范围

绘画属性:

background(color) 设定画布颜色

fill(color) 指定填充颜色

noFill() 不填色

stroke(color) 指定线条颜色

noStroke() 不画线条

strokeWeight(thickness) 指定边框宽度

strokeCap(mode) 指定线条端点形式包括 SQUARE(方形端点) PROJECT(方形延伸端点) ROUND(圆形端点)

strokeJoin(mode) 指定线条折角形式 包括 MITER(尖角) BEVEL(斜角) ROUND(圆角)

smooth()开启平滑绘图模式

noSmooth() 关闭平滑绘图模式

------------------------------------------

代码实例:来自《Processing互动编程艺术》

size(,);
background();
smooth();
noFill();
for(int i = ; i < ; i+= )
{
stroke();
strokeWeight(i/);
ellipse(,,i+i/,i+i/);
}

【processing】小代码2

---------------------------------------------------------------------

size(,);
background();
smooth();
strokeWeight();
for(int y = ; y <= ; y+=)
{
for(int x = ; x <= ; x+=)
{
stroke(y,x,);
line(x,y,x+,y-);
}
}
for(int y = ; y <= ; y+=)
{
for(int x = ; x <= ; x+=)
{
stroke(x,y,);
line(x,y,x+,y+);
}
}

【processing】小代码2

---------------------------------------------

size(,);
background();
smooth();
noFill();
for(int d = ; d < ; d+=)
{
for(int x = ; x < ; x+=)
{
for(int y = ; y < ; y+=)
{
stroke(random(,),random(,),random(,));
strokeWeight();
ellipse(x,y,d,d);
}
}
}

【processing】小代码2

很像是书的封面

------------------------------------------------------------------

size(,);
smooth(); //ear
fill();
ellipse(,,,);
ellipse(,,,); //head
fill();
strokeWeight();
ellipse(,,,); //eye
fill();
ellipse(,,,);
ellipse(,,,);
fill();
ellipse(,,,);
ellipse(,,,); //nose
fill();
ellipse(,,,); //mouse
noFill();
stroke();
strokeWeight();
bezier(,,,,,,,);

【processing】小代码2

-----------------------------------------------------

size(,);
background();
int d = ;
for(int x = ; x < ; x += d/)
{
for(int y = ; y < ; y+=d/)
{
noFill();
stroke(,,);
ellipse(x,y,d,d);
}
}

【processing】小代码2