提供: Japanese Scratch-Wiki

(Adding interwikis.)
(デフォルトソートの整備(Botによる自動編集) () へ向ける (ブロック) --> () へむける (ふろつく))
 
(3人の利用者による、間の5版が非表示)
13行目: 13行目:
  
 
*スプライトが常にマウスポインターの方を向くようにする
 
*スプライトが常にマウスポインターの方を向くようにする
<sb>
+
<scratchblocks>
@greenFlag がクリックされたとき
+
@greenFlag が押されたとき::events hat
 
ずっと
 
ずっと
 
[マウスのポインター v] へ向ける
 
[マウスのポインター v] へ向ける
 
(10) 歩動かす
 
(10) 歩動かす
</sb>
+
</scratchblocks>
  
 
*スプライトの進むべき方向を示す
 
*スプライトの進むべき方向を示す
<sb>
+
<scratchblocks>
 
[スプライト2 v] へ向ける
 
[スプライト2 v] へ向ける
 
<[スプライト2 v] に触れた?> まで繰り返す
 
<[スプライト2 v] に触れた?> まで繰り返す
 
(5) 歩動かす
 
(5) 歩動かす
</sb>
+
</scratchblocks>
  
 
*実行中の[[プロジェクト]]の目的地を示す
 
*実行中の[[プロジェクト]]の目的地を示す
<sb>
+
<scratchblocks>
 
[ヒント v] を受け取ったとき
 
[ヒント v] を受け取ったとき
 
[たからもの v] へ向ける
 
[たからもの v] へ向ける
</sb>
+
</scratchblocks>
  
 
==別のブロックによる表現==
 
==別のブロックによる表現==
 
このブロックは、次のように[[三角法]](三角関数)を使うと、別のブロックで代用できる。
 
このブロックは、次のように[[三角法]](三角関数)を使うと、別のブロックで代用できる。
  
<sb>
+
<scratchblocks>
[delta_x v] を (([x 座標 v] of [スプライト1 v]) - (x 座標)) にする
+
[delta_x v] を (([スプライト1 v] [x 座標 v]::sensing) - (x 座標)) にする
[delta_y v] を (([y 座標 v] of [スプライト1 v]) - (y 座標)) にする
+
[delta_y v] を (([スプライト1 v] [y 座標 v]::sensing) - (y 座標)) にする
 
もし <(delta_y) = [0]> なら
 
もし <(delta_y) = [0]> なら
 
もし <(delta_x) < [0]> なら
 
もし <(delta_x) < [0]> なら
47行目: 47行目:
 
でなければ
 
でなければ
 
もし <(delta_y) < [0]> なら
 
もし <(delta_y) < [0]> なら
((180) + ([atan v] of ((delta_x) / (delta_y)))) 度に向ける
+
((180) + (((delta_x) / (delta_y)) の [atan v]::operators)) 度に向ける
 
でなければ
 
でなければ
([atan v] of ((delta_x) / (delta_y))) 度に向ける
+
(((delta_x) / (delta_y)) の [atan v]::operators) 度に向ける
</sb>
+
</scratchblocks>
  
 
==関連提案==
 
==関連提案==
57行目: 57行目:
 
しかしこの動作は、向かせたい座標に別のスプライトを置いて「() へ向ける」ブロックを使うか、次のスクリプトを使うことで実現できる。
 
しかしこの動作は、向かせたい座標に別のスプライトを置いて「() へ向ける」ブロックを使うか、次のスクリプトを使うことで実現できる。
  
<sb>
+
<scratchblocks>
[delta_x v] を ((x) - (x position)) にする
+
[delta_x v] を ((x) - (x座標)) にする
[delta_y v] を ((y) - (y position)) にする
+
[delta_y v] を ((y) - (y座標)) にする
 
もし <(delta_y) = [0]> なら
 
もし <(delta_y) = [0]> なら
 
もし <(delta_x) < [0]> なら
 
もし <(delta_x) < [0]> なら
68行目: 68行目:
 
でなければ
 
でなければ
 
もし <(delta_y) < [0]> なら
 
もし <(delta_y) < [0]> なら
((180) + ([atan v] of ((delta_x) / (delta_y)))) 度に向ける
+
((180) + (((delta_x) / (delta_y)) の [atan v]::operators)) 度に向ける
 
でなければ
 
でなければ
([atan v] of ((delta_x) / (delta_y))) 度に向ける
+
(((delta_x) / (delta_y)) の [atan v]::operators) 度に向ける
</sb>
+
</scratchblocks>
  
 
[[変数]] xとyには、向かせたい座標を入れる。
 
[[変数]] xとyには、向かせたい座標を入れる。
86行目: 86行目:
  
 
[[en:Point Towards () (block)]]
 
[[en:Point Towards () (block)]]
[[de:Drehe dich zu () (Block)]]{{GitHub|scratch-flash|/src/primitives/|MotionAndPenPrims.as|112|branch=646523e6846ad0dd993213a38b46fe2ea511d026}}[[ru:Повернуться к ()]]
+
[[de:Drehe dich zu () (Block)]]{{GitHub|scratch-flash|/src/primitives/|MotionAndPenPrims.as|112|branch=646523e6846ad0dd993213a38b46fe2ea511d026}}[[ru:Повернуться к ()]]{{デフォルトソート:() へむける (ふろつく)}}

2019年9月27日 (金) 02:00時点における最新版

このきじは ひらがなのページがありません。ごめんなさい。
() へ向ける
[マウスのポインター v] へ向ける
カテゴリ 動き
タイプ スタック

() へ向けるブロック動きブロックスタックブロック)を使うと、現在のスプライトを、マウスのポインター、または、他のスプライト(コスチュームの中心が基準となる)に向けることができる。これによって、スプライトの向きが変わり、スプライトが回転する。

使用例

() 度に向けるブロックが、特定のオブジェクトを向くものではないのに対し、「() へ向ける」ブロックは、別のスプライトやマウスポインターの方向にスプライトの向きを変更できる。 「() へ向ける」ブロックのよくある使用例は次のとおり:

  • スプライトが常にマウスポインターの方を向くようにする
@greenFlag が押されたとき::events hat
ずっと
[マウスのポインター v] へ向ける
(10) 歩動かす
  • スプライトの進むべき方向を示す
[スプライト2 v] へ向ける
<[スプライト2 v] に触れた?> まで繰り返す
(5) 歩動かす
[ヒント v] を受け取ったとき
[たからもの v] へ向ける

別のブロックによる表現

このブロックは、次のように三角法(三角関数)を使うと、別のブロックで代用できる。

[delta_x v] を (([スプライト1 v] の [x 座標 v]::sensing) - (x 座標)) にする
[delta_y v] を (([スプライト1 v] の [y 座標 v]::sensing) - (y 座標)) にする
もし <(delta_y) = [0]> なら
もし <(delta_x) < [0]> なら
(-90 v) 度に向ける
でなければ
(90 v) 度に向ける
end
でなければ
もし <(delta_y) < [0]> なら
((180) + (((delta_x) / (delta_y)) の [atan v]::operators)) 度に向ける
でなければ
(((delta_x) / (delta_y)) の [atan v]::operators) 度に向ける

関連提案

複数のScratcherから、このブロックに近い、特定の座標位置を向くブロックの導入が要望されている [1]

しかしこの動作は、向かせたい座標に別のスプライトを置いて「() へ向ける」ブロックを使うか、次のスクリプトを使うことで実現できる。

[delta_x v] を ((x) - (x座標)) にする
[delta_y v] を ((y) - (y座標)) にする
もし <(delta_y) = [0]> なら
もし <(delta_x) < [0]> なら
(-90 v) 度に向ける
でなければ
(90 v) 度に向ける
end
でなければ
もし <(delta_y) < [0]> なら
((180) + (((delta_x) / (delta_y)) の [atan v]::operators)) 度に向ける
でなければ
(((delta_x) / (delta_y)) の [atan v]::operators) 度に向ける

変数 xとyには、向かせたい座標を入れる。

関連項目

出典

  1. scratch:discuss/post/62984