炎の型 Scratch 2.0 プログラム入門
  • 炎の型
  • Tennis For Two <難易度 中上>
    • プロジェクトを作る
    • ボールを追加する
    • 自由落下
    • 跳ねる
    • 左右に移動
    • ボールを打つ
    • Coatを作成する
    • 完成
  • Spacewar!<難易度 上下>
    • プロジェクトを作成する
    • 太陽を作る
    • ロケットと重力を作る
    • 旋回機能を作る
    • 推進機能を作る
    • 機雷発射機能を作る
    • 的を作る
    • 完成
  • Pong <難易度 中>
    • プロジェクトを作る
    • ラケットを作る
    • ラケットを上下に移動させる
    • コースを追加
    • ボールを追加
    • ボールを移動させる
    • ボールが跳ね返る機能をついか
    • 勝ち負けを判定する
    • 打つ向きを変える
    • 完成!!
  • Tiny TETRIS<難易度 上上>
    • Table
    • プロジェクトを作る
    • ネコを削除する
    • フィールドを作成する
    • フィールドの状態を記述する
    • フィールドに枠を表示する
    • テトロミノを表示する
    • テトロミノの種類を増やす
    • テトロミノの衝突判定
    • 下に移動する
    • 左右に移動する
    • 回転させる
    • クリアする
    • テトロミノを落下させる
    • 完成!!
  • Dojo:InkRunner <難易度 下上>
    • プロジェクトを作る
    • xxxって何だろう?
    • 右に移動する
    • 左に移動する
    • 上下に移動する
    • 対戦相手を作る(1)
    • 対戦相手を作る(2)
    • 対戦相手を作る(3)
    • 完成!!
    • おまけ: Timer(1)
    • おまけ: Timer(2)
    • おまけ: 判定
  • Practice:Gravity<難易度 下中>
    • プロジェクトを作ろう
    • 地球を作る
    • 地球の位置とサイズを調整する
    • 月の大きさを調整する
    • 速度に応じて移動する
    • 引力に応じて移動する
    • 軌道を記録する
    • 完成!!
    • [おまけ:向きを計算してみる]
    • [おまけ:距離を計算してみる]
  • Dojo:おにごっこ<難易度 下中>
    • プロジェクトを作ろう
    • 右に逃げる
    • 左に逃げる
    • 上下に逃げる
    • 鬼を作る
    • 鬼が移動する
    • 捕まった時の動作
    • 完成!!
  • Practice:ポリゴン<難易度 中上>
    • プロジェクトを作る
    • ネコの表示を小さくする
    • 三角形を描く
    • Matrixを定義する
    • Matrixの掛け算
    • Z軸に対して回転
    • X軸に対して回転
    • Y軸に対して回転
    • 完成!!
    • おまけ:Cubeを描く
    • おまけ:裏と表
  • 作業テーブル:パズドラッぽいの<難易度 上中>
    • Table
    • 完成!!
  • 基礎鍛錬のゴール
Powered by GitBook
On this page
  • Matrixどうしの掛(か)け算(ざん)
  • Z軸(じく)で回転(かいてん)した後(あと)の値(あたい)
  • Scratchで実装(じっそう)してみよう
  • (1) スクリプト画面(がめん)を表示(ひょうじ)
  • (2) 回転(かいてん)スクリプトを追加(ついか)
  • (2-注)
  • (3) 確認(かくにん)する
  • (4) Good!
  1. Practice:ポリゴン<難易度 中上>

Z軸に対して回転

PreviousMatrixの掛け算NextX軸に対して回転

Last updated 7 years ago

見(み)た目(め)が変(か)わらないのはここまで。ポリゴンを回転(かいてん)させて見(み)ましょう。

Matrixどうしの掛(か)け算(ざん)

以下(いか)の用(よう)に定義(ていぎ)されています

$$\ M{11} = a{11} \times b{11} + a{12} \times b{21} + a{13} \times b{31} + a{14} \times b{41}\ M{21} = a{21} \times b{11} + a{22} \times b{21} + a{23} \times b{31} + a{24} \times b{41}\ M{31} = a{31} \times b{11} + a{32} \times b{21} + a{33} \times b{31} + a{34} \times b{41}\ M{41} = a{41} \times b{11} + a{42} \times b{21} + a{43} \times b{31} + a{44} \times b{41}\

$$\ M{13} = a{11} \times b{13} + a{12} \times b{23} + a{13} \times b{33} + a{14} \times b{43}\ M{23} = a{21} \times b{13} + a{22} \times b{23} + a{23} \times b{33} + a{24} \times b{43}\ M{33} = a{31} \times b{13} + a{32} \times b{23} + a{33} \times b{33} + a{34} \times b{43}\ M{43} = a{41} \times b{13} + a{42} \times b{23} + a{43} \times b{33} + a{44} \times b{43}\

Z軸(じく)で回転(かいてん)した後(あと)の値(あたい)

計算(けいさん)してみます。

$$\ M{11} = a{11} \times \cos\theta + a{12} \times \sin\theta \ M{21} = a{21} \times \cos\theta + a{22} \times \sin\theta \ M{31} = a{31} \times \cos\theta + a{32} \times \sin\theta \ M{41} = a{41} \times \cos\theta + a{42} \times \sin\theta \

Scratchで実装(じっそう)してみよう

(1) スクリプト画面(がめん)を表示(ひょうじ)

(1-1) 左下(ひだりした)のSprite1をクリック

(1-2) スクリプトタブをクリック

(2) 回転(かいてん)スクリプトを追加(ついか)

(2-注)

変数(へんすう)を作成(さくせい)するときは、「このスプライトのみ」にチェックを入(い)れること

ブロックを作成(さくせい)するときは、「画面を再描画せずに実行する」チェックを入(い)れること

(3) 確認(かくにん)する

(3-1) 旗(はた)がクリックされた時(とき)の、コードを変更(へんこう)する

(3-2) 右上(みぎうえ)の旗(はた)をクリック

(3-3) 三角形(さんかっけい)が回転(かいてん)すること

(4) Good!

よくできました。次(つぎ)のステップに進(すす)みましょう。

https://scratch.mit.edu/projects/88091699/