未旋转的时候,可以使用Rect.contains(x,y)来判断一个点是否在这个rect当中,但当rect失败了之后,就不知道该怎么做了
2 回答
陪伴而非守候
TA贡献1757条经验 获得超8个赞
我觉得可能是楼主理解错了,这个Rect对象只是表示四个点组成的矩形而已,说白了就是储存四个点信息的一个对象。canvas画上去的时候只是用了他四个点的信息。旋转的时候跟Rect这个对象一点关系也没有。而且你看
public boolean contains(int x, int y) {
return left < right && top < bottom // check for empty first
&& x >= left && x < right && y >= top && y < bottom;
}
源码也只是判断一下你的坐标是否存在于这四个点中。
至于你要获取旋转角度,我认为你可以用一个变量就可以解决掉嘛,这个矩形毕竟是你写代码控制旋转的。不知道你看的懂不,反正我是认真回答的
holdtom
TA贡献1805条经验 获得超10个赞
三角函数了解一下,根据一个角度和一个中心点能算出某个点偏移后的坐标对吧,在这里就是中心点就是矩形的中心点,然后就是算矩形左上角和右下角偏移后的坐标。
添加回答
举报
0/150
提交
取消