2016-07-06 6 views
0

NetLogoにモデルをセットアップしました。シミュレーション空間は、半径20kmのGISマップです。NetLogoでパッチ間の距離を測定する方法

max xcorとycorはそれぞれ20とmin xcorとycor -20に設定されています。これは41×41のトーラスを与えます。

私は代理店をパッチ0 0のマップの中心に置き、20km、すなわちGISマップの範囲としてカバーできる最大距離を求めます。

ask turtles [ 
set heading 360 
fd 1 ] 

私は右の私は、このコードを20回繰り返す場合、彼らは非常に20キロではありません、最後のパッチ(XCOR 0 ycor 20)の中心になるだろうと言っにいますか?

これが正しいとすれば、エージェントが適切な距離を移動するようにコーディングするにはどうすればよいですか。ここでサークルを四角い形にしようとしているような気がする。

私は半径与えられた権利に見える私は40000を取得し、世界の幅によってパッチスケールを掛けた場合について975.6

set patch-scale (item 1 gis:world-envelope - item 0 gis:world-envelope)/world-width 

で出てくるパッチのスケールを取得するには、以下の行を追加することができます言うべきの円は20kmです。 `` 0 'を見出し設定とまったく同じことを行い360`見出しに設定することを

おかげ

+0

注意。 –

答えて

1
globals [km] 

to test 
    ca 
    let extent 40 ;desired world-width, in kilometers 
    set km (world-width/extent) 
    crt 1 [set heading 360] 
    ask turtle 0 [fd (20 * km)] 
end 
関連する問題