我有两个ASCII文件,其中包含栅格网格(map1& map2)中的单元格值。在Netlogo中是否可以通过使用map2计算map1的单元格值来创建第三个映射(map3)? (比如某种光栅叠加或光栅计算器)。输出映射(map3)将是前2个映射的乘积。
因此,在计算平均值时:如果某个特定单元格在map1中的值为1,而在map2中的值为3,则它在map3中的值为2.
这是迄今为止的代码:
extensions [ gis ]
globals [map1 map2]
patches-own [mapo1 mapo2]
to setup
ca
load-map
draw
end
to load-map
; Load the dataset
set map1 gis:load-dataset "C://uses/finalnim.asc"
set map2 gis:load-dataset "C://uses/finalvlak.asc"
gis:apply-raster map1 mapo1
gis:apply-raster map2 mapo2
gis:set-world-envelope-ds [155000 180040 418750 437550]
end
to draw
gis:set-drawing-color white
ask patches [
if mapo1 = 0.9 [ set pcolor Green ]
if mapo1 = 0.7 [ set pcolor blue ]
if mapo1 = 0.3 [ set pcolor orange ]
if mapo1 = 0.2 [ set pcolor red ]
]
resize-world 0 313 0 235
set-patch-size 1
end