2011-02-23 47 views
1

我在画布上使用canvas.DrawPath()绘制了两个箭头。我正在使用canvas.rotate()来旋转,但它显然将同时旋转两个箭头。在画布中旋转两个分离对象(路径)

编号喜欢能够单向旋转一个箭头,并在另一个方向旋转另一个箭头。

这可能吗?

回答

4

当您使用canvas.rotate()要变更关联到画布上的转换矩阵,因此,所有你写的话后,将由矩阵的当前状态的影响,你必须做到以下几点:

canvas.save();  //Save current canvas matrix state 
canvas.rotate(angle); 
canvas.DrawPath(); //Draw first arrow 
canvas.restore(); //Restore canvas matrix to saved state 
canvas.DrawPath(); //Draw second arrow without the rotation 
+0

谢谢,完美无缺! – mmmbaileys 2011-02-23 04:42:08