帝国音乐网站怎么做数据表,注册公司的条件和费用,图片转短链接生成器,注册网站引流文章目录 示例程序刷新逻辑二维对象 Processing是专门用于艺术设计的编程语言#xff0c;可以实现非常炫酷的图形和功能#xff0c;比如下面这张联合国用的图就是用Processing编写的#xff0c;本文简要介绍以下Processing#xff0c;并列出其二维对象。 示例程序
第一步可以实现非常炫酷的图形和功能比如下面这张联合国用的图就是用Processing编写的本文简要介绍以下Processing并列出其二维对象。 示例程序
第一步下载、解压、点击可执行文件processing.exe就可以启动了。
启动之后会出现四个示例并且温馨提示如果是初学者就点开看看。
接下来就以鼠标交互作为示例来初步学习一下Processing语言。
/*** Mouse 2D. * 移动鼠标改变每个箱子的尺寸*/void setup() {size(640, 360); rectMode(CENTER);
}void draw() {background(51); fill(255, 204);rect(mouseX, height/2, mouseY/210, mouseY/210);fill(255, 204);int inverseX width-mouseX;int inverseY height-mouseY;rect(inverseX, height/2, (inverseY/2)10, (inverseY/2)10);
}运行结果如下 其中setup是启动时的代码draw是程序执行后运行的代码。
size函数用于声明窗口尺寸rectMode为矩形模式其运行时的绘图逻辑如下
backgrround设置背景fill设置图形颜色255是灰度204是透明度rect矩形对象第一个矩形的起始位置由鼠标的坐标决定mouseX和mouseY分别是鼠标的X和Y坐标第二个矩形则根据计算得到。
刷新逻辑
为了加深对draw函数的理解下面将所有杂七杂八的代码都去掉仅保留一条绘制矩形的代码
void setup() {size(600, 300);
}void draw() {rect(mouseX, mouseY, 80, 80);
}结果如下即鼠标所到之处均会绘制一个正方形。故而可以理解为draw被封存在一个死循环中每隔一段时间就会对draw中的内容进行绘制但在绘制新内容的同时并不会取消以往的结果。正因如此示例程序中才会加上backgrond。 二维对象
Processing提供了下面几种二维对象
图形函数参数弧线arc()6个圆circle()3个圆心坐标 ( x , y ) (x,y) (x,y)和半径椭圆ellipse()4个中心坐标 ( x , y ) (x,y) (x,y)和宽、高点point()2个坐标 ( x , y ) (x,y) (x,y)矩形rect()4个坐标 ( x , y ) (x,y) (x,y)和宽、高正方形square()3个坐标 ( x , y ) (x,y) (x,y)和边长线段line()4个2个端点的 ( x , y ) (x,y) (x,y)坐标三角形triangle()6个3个顶点的 ( x , y ) (x,y) (x,y)坐标四边形quad()8个4个顶点的 ( x , y ) (x,y) (x,y)坐标
其中弧线相对来说比较复杂其实质是椭圆的一段边所以输入参数首先是椭圆的坐标和宽高然后是弧线的起始位置。
此外如果指定第7个参数则可设置弧线的模式包括
OPENCHORDPIE
区别如下 绘图代码为
void setup() {size(600, 300);textSize(50);fill(255, 255, 255);arc(100, 50, 200, 100, 0, HALF_PI);arc(400, 50, 200, 100, 0, HALF_PI, OPEN);text(OPEN, 400, 50);arc(100, 200, 200, 100, 0, HALF_PI, CHORD);text(CHORD, 100, 200);arc(400, 200, 200, 100, 0, HALF_PI, PIE);text(PIE, 400, 200);
}