ArcGISServer Flex API调用GP模型实现最短路径分析

来源:互联网 发布:360极速浏览器mac版本 编辑:程序博客网 时间:2024/05/14 08:20

实现路径分析的核心代码如下:

            privatefunction computeShortRoute():void

            {

               var featureSet:FeatureSet =new FeatureSet(pts);

               var params:Object =

                  {

                      “输入位置“: stops

                  };

               gp.execute(params,new AsyncResponder(onResult, onFault));

               function onResult(

                  gpResult:ExecuteResult,

                  token:Object= null):void

               {

                  var pv:ParameterValue = gpResult.results[2];

                  var fs:FeatureSet = pv.valueas FeatureSet;

                  graphicsLayer.clear();

                  graphicsLayer.graphicProvider
= fs.features;

               }

               function onFault(info:Object, token:Object =null):void

               {

                  Alert.show(info.toString());

               }          

            }

程序截图:

 

注:

   在之前的章节《ArcGISServer
Flex API
调用GP服务实现服务区分析》一文中说到,在执行分析中传递的参数要注意实际的类型;只有参数类型匹配,分析功能才能正确执行。

    对于输出参数同样存在这个问题,即便分析功能成功执行了,但是由于返回的参数选择不正确同样会得不到相应的结果。如下面,显示分析结果的代码

    var pv:ParameterValue =
gpResult.results[
2];

    上面的代码中,results数组传递的是2,为什么不是1或其他的序号 ?

 

如下图所示GP服务的参数信息:

从上图可以看出GP工具在执行整个分析的过程中共输出了三个参数,而我们需要的是最后返回的分析结果路径,也就是“路径__2_”这个输出参数。所以前面的那行代码传递的数值为“2”。

 

0 0
原创粉丝点击