交通换乘分析
交通换乘分析的主要任务即输出从起点到终点的最符合人们出行需求(如少步行、少换乘)和偏好(如不乘坐地铁)的换乘方法。随着城市建设的快速步伐,公交基础设施的建设也得到了长足发展,为人们生活带来了极大便利。面对日趋复杂和多样化的公共交通网络,准确、个性化的交通换乘方案显得尤为重要,对人们的日常出行起到重要的指引作用。
交通换乘分析的使用方法如下:
- 定义起始站点和终点站点名查询函数;
- 进行交通换乘查询,首先需在客户端设置用于向服务端发送的交通换乘参数,其次定义交通换乘服务,用于向服务端发送请求并从服务端获得交通换乘结果数据,最后将返回的结果在客户端进行展示。
下面以长春交通数据模拟的公交线路数据为例,起点为省汽修,终点为中央大厦,范例提供了最少时间的换乘策略,用户可根据自己的需要选择最为合适的出行路线。
1.交通换乘方案查询
交通方案查询:该方法返回所有的乘车方案,根据方案中的介绍信息可以获取具体的乘车路线。实现过程首先需要设置交通换乘参数,需要设置的参数包括 solutionCount、transferTactic、walkingRatio、points,定义交通换乘服务函数,向服务端发送请求,待服务端成功处理并返回交通换乘结果数据。
// 定义公交换乘方案查询
paths.points = [26, 180];
// 配置公交换乘方案查询参数
var params = new SuperMap.TransferSolutionParameters({
//最大换乘导引数量
solutionCount: 6,
//公交换乘策略类型
transferTactic: LESS_TIME,
//步行与公交的消耗权重比
walkingRatio: 10,
//起始点坐标
points: paths.points
});
var serviceUrl = "http://support.supermap.com.cn:8090/iserver/services/traffictransferanalyst-sample/restjsr/traffictransferanalyst/Traffic-Changchun";
// 向服务器发送请求,并获取返回的结果
L.supermap.trafficTransferAnalystService(serviceUrl)
.analysisTransferSolution(params, function (serviceResult) {
// 获取服务端返回的结果
var result = serviceResult.result;
});
2.乘车路线查询
根据换乘方案查询结果( transferSolutions )得到的乘车方案,获取某一条乘车路线的详细信息。
// 在地图上点击某一方案并获取具体的路线,构造transLines参数
// 获取乘车路线的详细信息
// 设置查询参数
var params = new SuperMap.TransferPathParameters({
// 起始点坐标
points: paths["points"],
// 当前换乘路线,包含路线ID、起止点等
transferLines: transLines
});
// 向服务端发送请求并获取数据
L.supermap.trafficTransferAnalystService(serviceUrl)
.analysisTransferPath(params, function (serviceResult) {
// 获取返回的路线的详细信息
var transGuide = serviceResult.result;
});
}