我有一个关于Netlogo上GIS可能性的一般性问题。
我在QGIS上有一个全国土壤湿度的TIF文件。我正在创建一个Netlogo模型,在这个模型中,当输入(用户给出的地理坐标)是特定值时,我需要告诉补丁‘拥有’某个水分含量的量化值。然后,模型将引用QGIS文件,并根据给定的坐标输入特定值。
我不想将整个QGIS地图覆盖到我的Netlogo模型中,这是我到目前为止所看到的。有什么办法可以解决这个问题吗?提前感谢!
发布于 2016-05-27 07:45:34
在一些技巧中,您可以将QGIS转换为服务器并使用Netlogo Web扩展进行查询。或者,您可以使用Netlogo Shell扩展将命令行脚本组合在一起。我会避免这种恶作剧,并使用Netlogo GIS扩展。您需要将TIF文件转换为.ASC或.GRD文件,因为这是栅格数据集仅支持的格式。我会从.GRD开始,因为它的二进制文件会更小。然后使用gis:load-dataset。Netlogo世界的范围不必与整个文件的范围匹配-您可以使用gis:set-world-envelope设置范围。然后,您可以使用gis:apply-raster将这些值应用于限制为您的世界的补丁变量。
如果您喜欢像您在问题中提到的那样,在用户指定坐标时逐点执行此操作,则可以使用gis:raster-sample对xcor、ycor对、补丁或乌龟进行采样
https://stackoverflow.com/questions/37472508
复制相似问题