所用到的软件:ArcMap 10.8.1 ArcGIS Enterprise 10.8.1(但不局限于10.8.1使用,对于10.3——10.8都是适用的)
以Extract by Mask为例
需求:将Extract by Mask这类需要输入栅格数据的gp工具,通过Model Builder进行组合设置,发布到Server中,供前端调用
两种做法:
方法一:通过上传的方式
优点:可使用的数据更加灵活,无需提前将数据存储在特定位置,适用于更多类型数据,不限于栅格数据,jpg,csv文件等,都可以考虑此方式
缺点:如果要上传的文件很大,数据量多,时间成本需要考虑。磁盘空间也是需要考虑的因素,但不用过分担心,超过一段时间不使用,server是会自动删除上传的这些文件的,不能通过ArcMap运行
方法二:通过读取路径的方式
优点:节省上传文件的时间,可根据需要只填写文件名称,或完整路径,节省磁盘空间,可以通过ArcMap运行
缺点:需要提前将文件放入指定路径中,设置模型时设置稍复杂,相对来说没有第一种方式灵活,不同类型的文件设置不同,并不适用于所有类型的文件
————————————————————————正文开始————————————————————————
下面的例子也可以直接运行,发布,无需加入model builder中,本文想要说明的是,这样的方式需要设置的相对来说比较少,运行完一遍以后发布即可,不做过多赘述
发布服务时需要开启uploads功能,可以在发布服务时开启,也可以发布服务后开启,分别位于
rest端运行
1、先上传文件
得到一个itemid,记住这个值
REST中参数的填写
运行即可
方法二:
ModelBuilder中的设置
其中RasterDataSet写法:%Folder%%Name% 本文中用的是绝对路径,如果是共享路径,那么参数应该为
Folder:'\\\\192.168.100.83\\demPro\\'
Name:'demPro.tif'
RasterDataSet:%Folder%+%Name%
从截图中可以看出,rest端只要填入数据的名称,server就可以去指定路径找到文件了,同样在ArcMap端运行也是一样,只指定名称就可以了。