我在处理. js草图时遇到了速度问题,我想通过使用obeginShape()endShape()创建我的25个椭圆来加快速度。我知道这功能有限,但否则处理将在每个椭圆调用上执行context.getinPath(),如下所示:
function line (x1, y1, x2, y2) {
context.beginPath();
context.moveTo(x1, y1);
context.lineTo(x2, y2);
context.closePath();
context.stroke();
};
如果我能以某种方式用贝塞尔顶点或简单的曲线顶点创建椭圆,那么我也许能做到这一点。有人用这种方式成功地创建了圆吗?或者有更好的选择吗?
void draw() {
translate(width/2,height/2);
drawCircle(10,width/3);
}
void drawCircle(int sides, float r)
{
float angle = 360 / sides;
beginShape();
for (int i = 0; i < sides; i++) {
float x = cos( radians( i * angle ) ) * r;
float y = sin( radians( i * angle ) ) * r;
vertex( x, y);
}
endShape(CLOSE);
}
有代码))