查看原文
其他

ArcGIS模型构建器:行内变量的替换(附练习数据下载)

陈哲宇 GIS前沿 2022-03-16


在模型构建器中,可通过以 “%” 将替换变量括起来的方式,用一个变量的内容替换另一变量。这种变量替换方式称为行内变量替换。


行内变量可分为两类:


模型变量 - 模型中的任何变量:%variable name%。

注意这是任何变量,包括数值,字符串,还有数据工作空间(输入输出路径)...在内的一切变量


  • 替换工作空间


这是一个正常的投影转换模型,Default.gdb是本次模型处理数据的工作空间


工作空间路径



文件输出路径



行内变量替换工作空间


通过工作空间变量名称用百分号括起,此工作空间位置将被替换为 Project 工具参数中的行内变量。运行时,将使用实际变量值F:\arcgis工作空间\Default.gdb 替为%Default.gdb% 


需要注意的是用“%”将“变量名称”括起,这意味着我们可以将工作空间在模型内重名为任意名称,在进行行内变量的替换的时候只需要用“%”将重命名后的名称括起


如我将Default.gdb重命名为 “工作空间”

 


则对应的行内变量替换为

  • 替换字符串(数值与其类似)


这是一个简单的批量投影工具,迭代器迭代将“长春.gdb”中的要素类,它将为要素类的路径和名称各创建一个输出变量。可以使用名称变量中的值构造投影的要素类的路径。


工具执行时,%名称% 将被替换为要素类的名称。(这里w_%名称%是因为工作空间和输出空间一至,因为“长春,gdb”中存在要进行投影变换的要素类,所以为了避免名称冲突,所以设置一个w前缀)



运行结果如下


 


系统变量 - 模型构建器中包含两个系统变量:表示变量列表编号的 %i% 和表示模型迭代次数的 %n%。(%i%就是上节使用列表变量批量裁剪的那个编号)


  • 行内变量的使用规则


变量名称使用百分号 (%) 括起;变量名称中允许存在空格;替换不区分大小写。Initial Value 和 initial value 是等同的。


%n% 提供当前模型的迭代次数,可在迭代模型中使用。

还是这个批量投影模型


 

将名称改为“w_%名称%_%n%”

 

运行结果

 



进入本公众号后台

发送数字

7116

即可获取下载链接


- END -



ArcGIS列表变量的应用(附练习数据下载)
ArcGIS模型构建器前提条件的应用(附省界县点练习数据)
GIS制图人员应该具备制图意识
5分钟自动保存、快速制图...这些提高工作效率的ArcGIS插件你安装了吗?
ArcGIS制图之Maplex自动点抽稀


戳原文,更有料!

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存