http://www.gissky.net- GIS空间站

我要投稿 投稿指南 RSS订阅 网站资讯通告:
搜索: 您现在的位置: GIS空间站 >> 技术专栏 >> 地理信息 >> 正文

arcgis api for js入门开发系列十四最近设施点路径分析 - GIS之家

作者:博客园    文章来源:博客园    点击数:    更新时间:2017-8-1
摘要:上一篇实现了demo的地图最短路径分析,本篇新增最近设施点路径分析,截图如下:1.关键技术实现知识点:(1)最近设施点的网络分析服务:http://localhost:6080/arcgis/rest/services/dlClosestFacility/NAServer/Closest%20Facility(2)最近设施点分析的参数名称为:RouteClosestFacilityParameters,同样它也继承自BaseRouteParameters。其主要的参数(属性)有:属性名称Incidents表示事件点Facilities表示设施点Barriers表示障碍点,还有线障碍:PolylineBarriers,面障碍:PolygonBarriersDefaultCutoff表示默认终断值,即不会搜索超出该值的设施点(从事件点到设施点,反之同理)ReturnDirections表示是否
上一篇实现了demo的地图最短路径分析,本篇新增最近设施点路径分析,截图如下:

 

1.关键技术实现知识点:

(1)最近设施点的网络分析服务:http://localhost:6080/arcgis/rest/services/dlClosestFacility/NAServer/Closest%20Facility

(2)最近设施点分析的参数名称为:RouteClosestFacilityParameters,同样它也继承自BaseRouteParameters。其主要的参数(属性)有:

 属性名称             Incidents 表示事件点 Facilities 表示设施点 Barriers 表示障碍点,还有线障碍:PolylineBarriers,面障碍:PolygonBarriers DefaultCutoff 表示默认终断值,即不会搜索超出该值的设施点(从事件点到设施点,反之同理) ReturnDirections 表示是否返回方向指南 DirectionsLanguage 表示返回方向指南使用的描述语言(默认与网络分析图层一致,NAServer中只有英语,其他语言需要自己安装) DirectionsLengthUnits 表示计算方向时使用的长度单位。默认与路径网络图层的设置一致。可用的值包括esriFeet,esriKilometers, esriMeters,esriMile,esriNauticalMiles和esriYards ReturnRoutes 表示是否返回设施点与事件点的路径 ReturnFacilities 表示是否返回设施点 ReturnIncidents 表示是否返回事件点 TravelDirection 表示路径的方向(从设施点到事件点还是事件点到设施点) UseHierarchy 表示是否启用等级属性 FacilityReturnType 表示设施返回类型,默认为FacilityReturnType.ServerFacilityReturnAll DefaultTargetFacilityCount 表示默认搜索的设施点个数

 

(3)初始化RouteTask:

//初始化事故点以及应急资源图层
ems.route.params = new esri.tasks.ClosestFacilityParameters();      
ems.route.params.defaultCutoff= 7.0;
ems.route.params.defaultTargetFacilityCount = 6.0;
ems.route.params.returnFacilities=true;
ems.route.params.returnIncidents=true;
ems.route.params.returnRoutes=true;
ems.route.params.returnDirections=true;
ems.route.closestFacilityTask = new esri.tasks.ClosestFacilityTask(MapConfig.routeUrl);

 

2.整体实现的流程如下:

(1)点击地图某点,以该点为中心,以一定半径来画圆形(esri.geometry.Circle);

(2)以圆形的范围的geometry,作为query的geometry条件,查询餐饮点图层,获取范围内的餐饮点总数作为route.params.facilities参数值,中心点为route.params.incidents 参数值;

(3)初始化RouteTask的参数条件之后,可以执行附近设施点分析函数,获取最终的结果

ems.route.closestFacilityTask.solve(ems.route.params, function(solveResult){
if(solveResult.routes.length>0){
}
},ems.route.routeError);    

Tags:GIS,地理信息  
责任编辑:gissky
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 中国地图