Gis 在netlogo中使用2个地图

Gis 在netlogo中使用2个地图,gis,netlogo,Gis,Netlogo,是否可以在netlogo模型中使用两个地图?如果是,如何组合或将其导入netlogo 第一张地图有土地使用价值,第二张地图有土地价格价值。所以,我需要这两个属性来支持我的模型 下面的代码用于导入第一张地图 to-report read-map[m] let raster-map gis:load-dataset m gis:load-dataset m gis:set-world-envelope gis:env

是否可以在netlogo模型中使用两个地图?如果是,如何组合或将其导入netlogo

第一张地图有土地使用价值,第二张地图有土地价格价值。所以,我需要这两个属性来支持我的模型

下面的代码用于导入第一张地图

to-report read-map[m] 
let raster-map gis:load-dataset m                                         
gis:load-dataset m
gis:set-world-envelope gis:envelope-of raster-map
report raster-map

end

to read-input-maps[m]
let data-source word"data/input/maps/" m
let input-map read-map data-source
gis:apply-raster input-map map-value
ask patches
[set map-value ifelse-value (map-value <= 0 or map-value >= 0)
[map-value]
[-9999]]                                                                         
end

to read-map-attributes[m]
let data-source word "data/input/maps/"m
file-open data-source
set n-cols read-from-string remove "NCOLS"file-read-line
set n-rows read-from-string remove "NROWS" file-read-line
set xll read-from-string remove "XLLCORNER" file-read-line
set yll read-from-string remove "YLLCORNER" file-read-line
set cell-size read-from-string remove "CELLSIZE"file-read-line
file-close
resize-map

end

to resize-map
  resize-world 0 n-cols 0 n-rows
  set-patch-size 50 / cell-size

 end

  to display-map
  ifelse input-file = "turi3400m2.asc"[
  ask patches with[map-value = 1] [ set pcolor orange];Hutan sekunder orange 
  ask patches with[map-value = 2] [ set pcolor orange];Semak/belukar orange
  ask patches with[map-value = 3] [ set pcolor yellow];Permukiman yellow
  ask patches with[map-value = 4] [ set pcolor green];Kebun campuran green
  ask patches with[map-value = 5] [ set pcolor green];Sawah green
  ask patches with[map-value = 6] [ set pcolor orange];Tanah terbuka orange
  ask patches with[map-value = 7] [ set pcolor green];Tegalan/ladang green

   ]
  end

  to setup-function [m]
    read-map-attributes m
    read-input-maps m
    display-map
   end


  to setup
    ca
    setup-function 
    Input-File
报告读取地图[m]
让光栅地图gis:加载数据集m
gis:加载数据集m
gis:设置世界封套gis:栅格地图的封套
报告栅格地图
结束
读取输入映射[m]
让数据源单词“data/input/maps/”m
让输入地图读取地图数据源
gis:应用光栅输入地图值
询问补丁
[设置映射值ifelse值(映射值=0)
[地图价值]
[-9999]]                                                                         
结束
读取地图属性的步骤[m]
让数据源单词“data/input/maps/”m
文件开放数据源
设置n-cols从字符串读取删除“NCOLS”文件读取行
设置从字符串读取的n行删除“NROWS”文件读取行
设置xll从字符串读取删除“XLLCORNER”文件读取行
设置yll从字符串读取删除“yll角”文件读取行
设置从字符串读取的单元格大小删除“CELLSIZE”文件读取行
文件关闭
调整贴图大小
结束
调整地图大小的步骤
调整世界大小0 n列0 n行
设置修补程序大小50/单元大小
结束
显示地图
ifelse输入文件=“turi3400m2.asc”[
使用[map value=1][set pcolor orange];Hutan sekunder orange询问补丁
使用[map value=2][set pcolor orange];Semak/belukar orange询问补丁
使用[map value=3][set pcolor yellow];Permukiman yellow询问修补程序
使用[map value=4][set pcolor green];Kebun campuran green询问修补程序
使用[map value=5][set pcolor green];Sawah green询问面片
使用[map value=6][set pcolor orange];Tanah terbuka orange询问补丁
使用[map value=7][set pcolor green];Tegalan/ladang green询问补丁
]
结束
设置功能的步骤[m]
读取地图属性m
读取输入映射
显示地图
结束
设置
ca
设置功能
输入文件
请帮忙解决这个问题

更换一下怎么样:

patches-own [map-value]

gis:apply-raster input-map map-value
与:


这是我能想到的最简单的修复方法。它是否适合您的用例?

有什么障碍阻止您使用两个地图。。。?你试过了吗?我试过了。。但netlogo似乎只能处理一张光栅地图。现在,我正在尝试修改shapefile贴图,以便可以在模型中使用所需的贴图值。“NetLogo只能处理一个光栅贴图”到底是什么意思?你怎么知道的?你到底尝试了什么?实际上我还在研究它,但据我所知,我们可以将其格式为.asc、txt或.shp的地图导入netlogo。Asc和txt格式也称为光栅地图。我已将光栅地图导入到模型中。我想再向模型中导入一个光栅贴图,因为我需要贴图中的一些值来支持模型,但到目前为止,我仍然无法做到这一点。netlogo模型似乎只能使用一个光栅地图。但是,对于shp格式的贴图或shapefile,我们可以将多个贴图导入到模型中。如果netlogo只能导入1个光栅地图,那么我可以使用shp地图来替代它。您仍然没有提供任何实际证据来说明“netlogo模型似乎只能使用一个光栅地图”。你为什么这么说?你试了什么?
patches-own [map-value-1 map-value-2]

ifelse m = "..."
  [ gis:apply-raster input-map map-value-1 ]
  [ gis:apply-raster input-map map-value-2 ]