canvas中的rotate使用
rotate 用于旋转canvas画布,以canvas的原点为中心进行旋转.如果想改变canvas的原点位置,可以使用translate进行修改
如下所示
var cxt=canvas.getContext("2d");
cxt.fillStyle="rgb(250,0,0)";
cxt.fillRect(0,0,20,50);
cxt.translate(100,100);
for(var i=0;i<12;++i)
{
cxt.rotate(Math.PI/6); //旋转30度,其中Math.PI表示为180度
cxt.fillRect(0,0,20,50);
}
上面的示例为旋转30度画一个20,50的红色矩形
translate(100,100),将canvas的原点转移到坐标为(100,100),相当于canvas的(0,0)坐标在(100,100)坐标位置上,我们只需要将(100,100)看成是canvas的原点坐标就行了。。
rotate旋转,是以x轴进行旋转的,正数为顺时针,负数为逆时针旋转。切记,在旋转后,图形的x,y值是以旋转后的x,y进行定义的。
附件为示例的效果