2.5 圆与椭圆

在Processing中圆形和椭圆分别由两个内建函数完成,虽然椭圆也能够完成圆形的描绘,但在官方的函数设置上,依旧将两个图形认为是不同的形状。绘制圆形是通过circle()函数来完成的。

circle(x,y,extent);

x和y代表着圆心的坐标点;

extent代表着圆形的直径大小。

输入代码circle(width/2,height/2,50);并单击“运行”按钮,得到下图效果(图2.5.1)。

图2.5.1 圆形的示例

椭圆是通过ellipse()函数来完成的。

ellipse(x,y,width,height);

x和y代表着圆心的坐标点;

width代表着椭圆形横轴方向的直径大小;

height代表着椭圆形纵轴方向的直径大小。

我们输入代码ellipse(width/2,height/2,50,100);并单击“运行”按钮,得到下图效果(图2.5.2)。

图2.5.2 椭圆形的示例

在绘制椭圆的时候,绘制模式是默认以圆心坐标为中心的(CENTER模式),而在绘制椭圆形状的时候可以设置四种模式:CENTER、RADIUS、CORNER、CORNERS,通过ellipseMode(mode)函数来设定绘制模式,该函数一定要放置在ellipse()函数之前。

ellipseMode(CENTER);
ellipse(width/2,height/2,50,100);

· CENTER模式。该模式将ellipse()函数的前两个参数作为形状的中心点,第三个和第四个参数是其宽度和高度。

· RADIUS模式。该模式将ellipse()函数的前两个参数作为形状的中心点,第三个和第四个参数是指定形状的一半宽度和高度。

· CORNER模式。该模式将ellipse()函数的前两个参数作为形状的左上角坐标位置,第三个和第四个参数是形状的宽度和高度。

· CORNERS模式。该模式将ellipse()函数前两个参数解释为形状的一个角的坐标位置,第三个和第四个参数解释为这个角的相对角的坐标位置。