坐标变换与路径

的头像
205

CanvasRenderingContext2D 提供了如下了3个方法进行坐标变换。
translate(float dx, float dy):平移坐标系统。该方法相当于把原来位于(0,0)位置的坐标原点平移到(dx dy)点。在平移后的坐标系统上绘制图形时,所有坐标点的X坐标都相当于增加了 dx,所有点的y坐标都相当于增加了 dy。
Scale(float sx, float sy):缩放坐标系统。该方法控制坐标系统水平方向上缩放 sx,垂直方向上缩放 sy。在缩放后的坐标系统上绘制图形时,所有坐标点的X坐标都相当于乘以了sx 因子,所有点的 Y坐标都相当于乘以了 sy 因子。
rotate(loat angle):旋转坐标系统。该方法控制系统旋传 angle 弧度。在旋转后的坐标系统上绘制图形时,所有坐标点的×、Y坐标都相当于旋转了 angle 弧度之后的坐标
为了让开发者在进行坐标变换时无须计算多次坐标变换后的累加结果,CanvasRenderingContext2D 还提供了如下两个方法来保存、恢复绘图状态
save( ):保存当前的绘图状态
restore( ):恢复之前保存的绘图状态。
需要说明的是 save0方法保存的绘图状态,不仅包括当前坐标系统的状态,也包括CanvasRenderingContex2D所设置的填充风格、线条风格、阴影风格的各种绘图状态。但 save()方法不会保存当前 Canvas 上绘制的图形。

用户评论
评论列表