2016-12-22 10 views
0

私はパッチの座標のリストを格納しているリストを持っています。リストに格納された座標でパッチにアクセスする

let coor [ [0 1] [ 1 0] [1 -1] ] 

ここで、リストの2番目の要素の場所にあるパッチに赤色に変更してもらいたいと思います。

ask patch (item 1 coor) [ set pcolor red ] 

これは、patchがリストまたはブロックの代わりに数字を必要とするとエラーします。 NetLogoは、(item 1 coor)が2つの数字のセットであることを理解する方法を教えてください。

これに他の方法でアプローチしますか?私もこのために 'テーブル'拡張を使用しようとしたが、同じ問題も来ていた。これは、上記のコード内の小さな変更を必要とする

to-report patch-at-xy [#xy] 
    let _x item 0 #xy 
    let _y item 1 #xy 
    report patch _x _y 
end 

+0

回避策の1つは、最初の座標と2番目の座標をx_cor&y_corという別のリストに格納することです。 質問パッチ(アイテム1 x_cor)(アイテム1 y_cor)[セットpcolor赤] –

答えて

0

ちょうど適切なレポーターを使用し、あなたはほぼ確実のではなく、パッチのリストを格納する必要があると述べた

to test 
    let coor [ [0 1] [ 1 0] [1 -1] ] 
    ask patch-at-xy (item 1 coor) [ set pcolor red ] 
end 

それらの座標。

関連する問題