2 回答

TA貢獻(xiàn)1757條經(jīng)驗(yàn) 獲得超8個(gè)贊
我覺得可能是樓主理解錯(cuò)了,這個(gè)Rect對(duì)象只是表示四個(gè)點(diǎn)組成的矩形而已,說白了就是儲(chǔ)存四個(gè)點(diǎn)信息的一個(gè)對(duì)象。canvas畫上去的時(shí)候只是用了他四個(gè)點(diǎn)的信息。旋轉(zhuǎn)的時(shí)候跟Rect這個(gè)對(duì)象一點(diǎn)關(guān)系也沒有。而且你看
public boolean contains(int x, int y) {
return left < right && top < bottom // check for empty first
&& x >= left && x < right && y >= top && y < bottom;
}
源碼也只是判斷一下你的坐標(biāo)是否存在于這四個(gè)點(diǎn)中。
至于你要獲取旋轉(zhuǎn)角度,我認(rèn)為你可以用一個(gè)變量就可以解決掉嘛,這個(gè)矩形畢竟是你寫代碼控制旋轉(zhuǎn)的。不知道你看的懂不,反正我是認(rèn)真回答的

TA貢獻(xiàn)1805條經(jīng)驗(yàn) 獲得超10個(gè)贊
三角函數(shù)了解一下,根據(jù)一個(gè)角度和一個(gè)中心點(diǎn)能算出某個(gè)點(diǎn)偏移后的坐標(biāo)對(duì)吧,在這里就是中心點(diǎn)就是矩形的中心點(diǎn),然后就是算矩形左上角和右下角偏移后的坐標(biāo)。
添加回答
舉報(bào)