2012-01-30 6 views
4

私はランダムに動いているNetLogoにカメを作りましたが、いくつかの障害があります。現在の方向を得ることは可能ですか?私は、亀が障害物を見たときにセンターに戻ってくるようにしたい。私は中心までの距離を計算することができますが、私はその方向性を知らないので、例えば前方または後方に言うことができません。動いているエージェントの方向を学ぶ

答えて

3

facexyあなたは、原点に向かって、あなたの亀の見出しを設定することができますプリミティブ:

http://ccl.northwestern.edu/netlogo/docs/dictionary.html#facexy

+0

答えてくれてありがとうございました。私は顔つきを理解しました。しかし、今、私は、亀の目の前に障害物を置こうとしています。ナマリーは障害物を見ると、原点まで運ぶ。これを行うには、カメの座標が正か負かをチェックするたびに(いつも背中や他の側ではなく前方に障害物を置く)。もっとシンプルにするという考えはあるのか?またはcleverer ?? – Ecrin

+0

あなたが何を意味するのか正しく理解していれば、必要なものは 'patch-ahead'です:http://ccl.northwestern.edu/netlogo/docs/dictionary.html#patch-ahead –

+0

はい、そうです。もう一度ありがとう – Ecrin

5

亀の現在の方向はheading変数で与えられます。この変数に読み書きすることができ、カメの見出しを変更することができます。また、facexyをNとして使用して変更することもできます。

0
ask turtle <who> 
[If (patch-ahead = obstacle) 
[ 
    facexy origin 
    fd distance origin 
] 
] 

ここで、障害物と起源はそれぞれのパッチです。 Jose M VidalとN. Payetteがすでに言っていることに基づいて構築する。

関連する問題