ArcGIS Model Builder 变量参数 SHP文件传参数

在GP的使用过程中,受限制与GP模型的输入输出参数类型,只能是简单的数据类型才能做为参数。本文通过在服务器端进行SHP文件叠加处理来说明如何进行变量参数的传递

1、GP模型创建,GP功能为两个SHP文件进行交集取反,模型如下


上图中 InputNMG、jobid/、inputPro 作为变量,在Model Builder中可以使用创建变量工具进行创建,类型为字符串,如下所示,值为 SHP文件路径


变量已经创建完成,如何使用ToolBox使用这些变量值呢,如下图所示,可以使用%变量值%这样使用变量


最后输出的结果为临时工作空间目录,使用%ScratchWorkspace%代表临时工作空间路径

那么这个脚本已经创建完成,之后成功执行一次之后直接可以发布为ArcGIS Server GP服务模型,然后通过FLEx JS、Silverlight API进行调用

附JS调用代码

gp = new Geoprocessor("http://localhost:6080/arcgis/rest/services/SymmetricalDifference/GPServer/SymmetricalDifference");
var params = { "InputNMG": "路径\\XJ.shp", "inputPro": "路径\\ProPy.shp","jobid":"110" };

gp.submitJob(params, gpJobComplete, gpJobStatus, gpJobFailed)
function gpJobComplete(jobinfo) {
//使用结果地图服务进行显示
var mapserviceurl = "http://localhost:6080/arcgis/rest/services/SymmetricalDifference/MapServer/jobs";
var mapurl = mapserviceurl + "/" + jobinfo.jobId; alert(mapurl); var hotspotLayer = new esri.layers.ArcGISDynamicMapServiceLayer(mapurl, { "id": "HotspotLayer", "opacity": 0.7 }); console.log(hotspotLayer); map.addLayer(hotspotLayer);}function gpJobStatus(jobinfo) { alert("gpJobStatus :" + jobinfo.jobStatus);}function gpJobFailed(jobinfo) { alert("gpJobFailed :" + jobinfo);}








  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值