canvas.scale(-1, -1 , px, py) <px, py 是scale的中心>
scale为负值即可实现反转 drawable.
scale的操作其实就是以px/y为中线,对两边的点乘以scale的大小以后,得到的坐标值就是转换以后的位置,那么设为-1,就可以实现镜面反射的效果了,px/y在这里成了镜子的位置(要原位置反转,那么px/y所在位置就应该是drawable的中心).想不明白的话,算一下坐标(x, y)转换以后的值即可.
canvas.scale(-1, -1 , px, py) <px, py 是scale的中心>
scale为负值即可实现反转 drawable.
scale的操作其实就是以px/y为中线,对两边的点乘以scale的大小以后,得到的坐标值就是转换以后的位置,那么设为-1,就可以实现镜面反射的效果了,px/y在这里成了镜子的位置(要原位置反转,那么px/y所在位置就应该是drawable的中心).想不明白的话,算一下坐标(x, y)转换以后的值即可.