前ページまでに、基本的なdeltaの使い方を紹介しました。ここでは一定間隔で実行する処理を紹介します。


  1. 四角 PGRectangle() を使います。サイズは .scale( square:200 ) を指定して大きめにします(見やすくするためです)。

  2. .deltaAngle(degrees:) を追加し、回転させます。

  3. .inteval(sec:) を追加し、続けて { } で処理ブロックを書きます。

  4. 作った処理ブロックの中に $0 と、続けて .color( .random ) を書きます。

1
2
3
4
5
6
7
8
9
func design( screen:PGScreen ) {
   PGRectangle()
   .scale( square:200 )
   .deltaAngle( degrees:1.0 )
   .interval( sec:1.0 ) {
       $0
       .color( .random )
   }
}
  1. 「コードを実行」を押します。

目標

  • 回転しながら、1秒ごとに色がランダムに変化する四角が表示されたら成功です。

終わったら次のページへ進みます。


  • Note: .interval(sec:) の後ろの処理ブロックはクロージャと呼ばれる関数です。intervalがsecで指定した秒数ごとに、クロージャを繰り返して処理します。

  • Note: $0 はSwiftの省略表記です。クロージャに渡される最初の値という意味になります。渡されるものは処理によって変わります。 .interval(sec:) の場合、 $0 はintervalを呼んでいる図形自身です。