溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

iOS開發(fā)之仿射變換示例總結

發(fā)布時間:2020-06-28 10:26:07 來源:網(wǎng)絡 閱讀:473 作者:zsdnr 欄目:移動開發(fā)

一、平移

接下來我們來看一下CGAffineTransform的平移,在使用CGAffineTransform進行平移的時候,我們要注意坐標系的轉(zhuǎn)換。下方是我們在做UI布局時的坐標系,也就是iOS屏幕的坐標系。左上角是原點,x軸右為正,左為負,y軸上為負,下為正。下方就是iPhone的屏幕坐標系。平移時也是采用下方的坐標系結構。

iOS開發(fā)之仿射變換示例總結 

下方就是對ImageView的平移的效果。分別使用兩個Slider來控制左右移動和上下移動。具體運行效果如下所示。

  iOS開發(fā)之仿射變換示例總結

控制平移的代碼也是比較簡單的,如下所示。x參數(shù)為正時則向右移動,x為負數(shù)時,向左移動。而參數(shù)y為正時,向下移動,y為負值時向上運動。具體代碼如下所示:

   iOS開發(fā)之仿射變換示例總結

 

二、縮放

聊完平移,接下來我我們來看一下仿射變換的縮放。使用CGAffineTransform進行View的縮放也是比較簡單的,下方就是對ImageView進行縮放的運行效果。在縮放的過程中分為x方向上的縮放和y方向的縮放。x和y分別表示在x軸和y軸上縮放的倍數(shù),如果x或者y為負數(shù)的話,那么將相應的視圖翻轉(zhuǎn)后在進行縮放,運行效果如下所示。

  iOS開發(fā)之仿射變換示例總結

實現(xiàn)上述效果也是比較簡單的,代碼就下方一行,如下所示,x就表示x軸上的縮放量,y就表示y軸上的縮放量。

  iOS開發(fā)之仿射變換示例總結

 

 

三、旋轉(zhuǎn)

接下來就來聊聊CGAffineTransform的旋轉(zhuǎn),直奔主題,下方就是旋轉(zhuǎn)的運行結果。旋轉(zhuǎn)是是按照弧度進行旋轉(zhuǎn)的,一圈是0-2∏,如果弧度為正,則是順時針旋轉(zhuǎn),如果弧度為負,則是逆時針旋轉(zhuǎn)。具體運行結果如下所示:

  iOS開發(fā)之仿射變換示例總結

實現(xiàn)上述效果的代碼也是比較簡單的,具體代碼如下所示:

  iOS開發(fā)之仿射變換示例總結


向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI