[iPhone] CGAffineTransform 画像を回転、移動、反転させる

画像を移動、回転、反転、拡大するために CGAffineTransform を使います。

im_1
im_2

Swift 3.0
Xcode 8.0

 

sponsored link

CGAffineTransform

 

UIViewをアフィン・マトリクス変換を使って回転、拡大縮小、移動処理ができます。

  • 回転:init(rotationAngle: CGFloat)
    • CGAffineTransform(rotationAngle: CGFloat(angle))
  • 拡大・縮小:init(scaleX: CGFloat, y: CGFloat)
    • CGAffineTransform(scaleX: A, y: B)
    • AあるいはBを負の値にすると反転になります
  • 移動:init(translationX: CGFloat, y: CGFloat)
    • CGAffineTransform(translationX: C, y: D)

サンプルコードは下のようになります。
Storyboard にボタンを配置して、ボタンを押すたびにメソッドを順番に実行するアプリです。
ViewController.swift

 
simulator-screen-shot-2016-10-22-17-03-41
 
拡大
simulator-screen-shot-2016-10-22-17-03-46
 
ミラー
simulator-screen-shot-2016-10-22-17-03-51
 
回転
simulator-screen-shot-2016-10-22-17-03-55
 
移動
simulator-screen-shot-2016-10-22-17-03-59
 
合成(拡大+移動)
simulator-screen-shot-2016-10-22-17-04-03