配列処理-発展6

問題

配列とアニメーションを組み合わせた処理を実装してください:

  • グローバル変数として:
    • int[] 型の配列 status をサイズ 8 で初期化してください
  • setup() 関数で:
    • 幅×高さのキャンバス でキャンバスを作成してください
    • frameRate(1) で毎秒1フレームの描画速度に設定してください
    • ループで各要素に ランダムな値を取得 で生成した値を代入してください(0=赤、1=青、2=白)
    • 各要素に対応する円を描画してください:
      • 0 の場合は赤色(RGB: 255, 0, 0)
      • 1 の場合は青色(RGB: 0, 0, 255)
      • 2 の場合は白色(RGB: 255, 255, 255)
      • 円の位置は (40 + i*60, 100), 直径は 60
  • draw() 関数で毎フレーム:
    • 最後の要素を一時変数に保存してください
    • ループで配列の要素を右から左へシフトしてください(i=7 から 1 まで)
    • 最初の要素に一時変数の値を代入してください
    • 円を再描画してください(配列内容に応じた色で)
ヒントを見る
  • size(幅, 高さ): キャンバスのサイズを設定
  • random(最小値, 最大値): 指定範囲のランダムな値を取得
  • 配列の値によって描画色を分岐させることができます
  • シフト処理で配列要素が回転するアニメーション効果が生まれます
  • frameRate() で描画速度を制御できます

実行例