canvas.translate(x,y)一点新的认识
2012-12-18 22:33
190 查看
之前对于canvas.translate(x,y)的理解有的错误,之前一直以原点(0,0)为基准点,作用就是移动原点,默认的原点(0,0)是在屏幕左上角的,你可以通过translate(x,y)把点(x,y)作为原点,就一直以为这个(x,y)就是新的坐标原点。但看一下API就会知道,这种理解是不对的,不过API上面讲解的也不太清楚:
[java] view
plaincopy
public void translate (float dx, float dy)
Since: API Level 1
Preconcat the current matrix with the specified translation
Parameters
dx The distance to translate in X
dy The distance to translate in Y
其实是原来的原点分别在x轴和y轴偏移多远的距离,然后以偏移后的位置作为坐标原点。也就是说原来在(100,100),然后translate(1,1)新的坐标原点在(101,101)而不是(1,1)
问:translate();restore();translate();经过这三个函数,原点是怎么变化的?
答:如果在描绘之前调用save了,restore就会返回原点,否则会继续那个translate后的点。
转载自:/article/2705482.html
[java] view
plaincopy
public void translate (float dx, float dy)
Since: API Level 1
Preconcat the current matrix with the specified translation
Parameters
dx The distance to translate in X
dy The distance to translate in Y
其实是原来的原点分别在x轴和y轴偏移多远的距离,然后以偏移后的位置作为坐标原点。也就是说原来在(100,100),然后translate(1,1)新的坐标原点在(101,101)而不是(1,1)
问:translate();restore();translate();经过这三个函数,原点是怎么变化的?
答:如果在描绘之前调用save了,restore就会返回原点,否则会继续那个translate后的点。
转载自:/article/2705482.html
相关文章推荐
- canvas.translate(x,y)一点新的认识
- canvas.translate(x,y)一点新的认识
- canvas.translate(x,y)一点新的认识
- canvas.translate(x,y)一点新的认识
- canvas.translate(x,y)一点新的认识
- canvas.translate(x,y)一点新的认识
- canvas.translate(x,y)一点新的认识
- canvas.translate(x,y)一点新的认识
- canvas.translate(x,y)一点新的认识
- canvas.translate(x,y)一点新的认识
- canvas.translate(x,y)一点新的认识
- 对于Canvas和Bitmap的一点认识
- android下关于Canvas和Drawable的一点认识
- C#中使用ref和out一点认识!
- 对linux的进行和线程的一点认识
- 对canvas的translate()方法的理解
- 对maven的一点认识
- canvas每draw一次会创建创建一个图层,translate也是移动新的图层,那save restore还有什么用?
- 对于REST中无状态(stateless)的一点认识