REST API下的ArcServer 9.3.0与9.3.1使用Javascript实现路径分析的不同方式
2009-08-11 09:01
615 查看
上次说了,9.3.0中没有直接的对routeTask进行支持,但是跟ESRI的工程师联系了下,对方有解决方案,就是使用GeoProcessing Service来做,用了发现这个GPserver还是很强大的,可以做的事情还有缓冲区之类的,挺好。
使用9.3.0做路径分析的时候,数据要使用建模工具做一下,具体的模型做法及服务设置可参考这里
http://webhelp.esri.com/arcgisserver/9.3/java/index.htm#geoprocessing/guide_-1963186772.htm
发布完数据后,在javascript中使用GPserver,可参考Geoprocessor Task的官方示例,关键代码如下:
_gpShortService = new esri.tasks.Geoprocessor(_GPShortRouteURL);
_routeParams = new esri.tasks.FeatureSet();
添加起点终点,在地图的onClick事件中处理
var stop = map.graphics.add(new esri.Graphic(evt.mapPoint, stopSymbol));
_routeParams.features.push(stop);
设置参数具体内容
var params = { "Feature_set":_routeParams };
在这里,“Feature_set”是根据不同的处理模型中定义的输入参数名称,可能不同
执行路径分析:
_gpShortService.execute(params,showRoute,errorHandler);
参数第一个不用说了,第二个是结果集处理,第三个是错误处理
如下:
showRoute(routeResults, messages)
路径结果按这样取出:routeResults[0].value.features[0];
然后对其setSymbol就可以显示在地图上了。
使用9.3.0做路径分析的时候,数据要使用建模工具做一下,具体的模型做法及服务设置可参考这里
http://webhelp.esri.com/arcgisserver/9.3/java/index.htm#geoprocessing/guide_-1963186772.htm
发布完数据后,在javascript中使用GPserver,可参考Geoprocessor Task的官方示例,关键代码如下:
_gpShortService = new esri.tasks.Geoprocessor(_GPShortRouteURL);
_routeParams = new esri.tasks.FeatureSet();
添加起点终点,在地图的onClick事件中处理
var stop = map.graphics.add(new esri.Graphic(evt.mapPoint, stopSymbol));
_routeParams.features.push(stop);
设置参数具体内容
var params = { "Feature_set":_routeParams };
在这里,“Feature_set”是根据不同的处理模型中定义的输入参数名称,可能不同
执行路径分析:
_gpShortService.execute(params,showRoute,errorHandler);
参数第一个不用说了,第二个是结果集处理,第三个是错误处理
如下:
showRoute(routeResults, messages)
路径结果按这样取出:routeResults[0].value.features[0];
然后对其setSymbol就可以显示在地图上了。
相关文章推荐
- JavaScript中实现继承的几种方式的使用和分析
- JavaScript中实现继承的几种方式的使用和分析
- RTTI、虚函数和虚基类的实现方式、开销分析及使用指导
- 使用COM方式实现不同语言之间的调用
- struts2笔记Action实现的三种使用方式和路径通配符
- 使用Kotlin实现Android简单Demo,对比JAVA实现分析具体语法不同之处(二)
- 使用UI Automation实现自动化测试--5 (Winfrom和WPF中弹出和关闭对话框的不同处理方式)
- RTTI、虚函数和虚基类的实现方式、开销分析及使用指导
- javascript使用call方式实现对象继承
- RTTI、虚函数和虚基类的实现方式、开销分析及使用指导
- 以Network Dataset(网络数据集)方式实现的最短路径分析
- 以Network Dataset(网络数据集)方式实现的最短路径分析
- RTTI、虚函数和虚基类的实现方式、开销分析及使用指导
- 如何用java实现不同编码方式字符串的转换(包含异常处理、重复不终止输入、缓冲区bufferedreader的使用)
- 使用Kotlin实现Android简单Demo,对比JAVA实现分析具体语法不同之处(一)
- 【龙印】步进电机使用七段式抛物线型S曲线加减速和路径规划的理论分析和实现
- RTTI、虚函数和虚基类的实现方式、开销分析及使用指导(虚函数的开销很小,就2次操作而已)
- RTTI、虚函数和虚基类的实现方式、开销分析及使用指导
- RTTI、虚函数和虚基类的实现方式、开销分析及使用指导
- 使用JavaScript实现数组去重的几种方式