welcome: please sign in
location: "etoysはみ出ないように動く"の差分
4と6のリビジョン間の差分 (その間の編集: 2回)
2012-07-03 02:51:29時点のリビジョン4
サイズ: 1531
編集者: masahiko
コメント:
2012-07-03 03:02:24時点のリビジョン6
サイズ: 2210
編集者: masahiko
コメント:
削除された箇所はこのように表示されます。 追加された箇所はこのように表示されます。
行 28: 行 28:
動かすオブジェクトに、センサーに使う印を描きます。
 . このオブジェクトに使われていない色にすること
 . 進む方向の先につけること
例(矢印で示した水色の部分)
 . {{attachment:car11.png}}
動かしたい範囲の周りを、1色で囲みました。
 . {{attachment:car21.png}}
スクリプトはこのように書けます。
縁の色にぶつかったら反対向きに進みます。
 . {{attachment:car22.png}}
意味は
 . センサーの部分が茶色のところに触れたときは
  . およそ180度回転する
乱数(40)は1~40の間の値を取るので
自動車を回すに用いる値は 161~200 のどれかになります。
行 32: 行 48:
 . {{attachment:car12.png}}
 . {{attachment:car13.png}}
行 36: 行 54:
 . {{attachment:car31.png}}
 . {{attachment:car32.png}}
 . {{attachment:car33.png}}
行 40: 行 61:
 . {{attachment:car11.png}}
 . {{attachment:car12.png}}
 . {{attachment:car13.png}}
 . {{attachment:car21.png}}
 . {{attachment:car22.png}}
 . {{attachment:car31.png}}
 . {{attachment:car32.png}}
 . {{attachment:car33.png}}

はみ出ないように動く

よく紹介されているスクリプトに

  • 自動車をコースにそって走らせたり、 魚が池から出ないように動かしたりする

ものがあります。

スクリプトでは

  • オブジェクトの前側にセンサーとなるものを設定し
  • センサーにどの色が触れたかで進む方向を調整

します。


分類

センサーの個数、判定に用いる色で 次のように分類できます。

センサーの個数

  1. 前方に1つのセンサーを用いる
  2. 前方の左右、あわせて2つのセンサーを用いる

判定に用いる色

  1. 進めない部分の色を1つ指定する。
  2. 進める部分の色を1つ指定する。

以上の組み合わせで4パターン考えられます。


パターン1

  • センサー1つ
  • 進めない部分の色を指定

動かすオブジェクトに、センサーに使う印を描きます。

  • このオブジェクトに使われていない色にすること
  • 進む方向の先につけること

例(矢印で示した水色の部分)

  • car11.png

動かしたい範囲の周りを、1色で囲みました。

  • car21.png

スクリプトはこのように書けます。 縁の色にぶつかったら反対向きに進みます。

  • car22.png

意味は

  • センサーの部分が茶色のところに触れたときは
    • およそ180度回転する

乱数(40)は1~40の間の値を取るので 自動車を回すに用いる値は 161~200 のどれかになります。


パターン2

  • センサー1つ
  • 進める部分の色を指定
  • car12.png

  • car13.png


パターン3

  • センサー2つ
  • 進めない部分の色を指定
  • car31.png

  • car32.png

  • car33.png


パターン4

  • センサー2つ
  • 進める部分の色を指定
  • car41.png

  • car42.png

etoysはみ出ないように動く (最終更新日時 2012-07-06 00:31:47 更新者 masahiko)