function.js
5.06 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
var PublicFunctions = function () {
var PubFun = {
/** 获取所有线路 */
getLineAllInfo : function(cb) {
/** get请求获取所有线路 */
$get('/line/all', null, function(array){return cb && cb(array);});
},
/** 获取线路走向百度坐标 */
getSectionRouteInfo : function(lineId,direction,callback) {
$get('/sectionroute/findSection',{'line.id_eq' : lineId , 'directions_eq' : direction},function(resultdata) {
callback && callback(resultdata);
});
},
getSectionSpeedInfoList : function(params,lineName){
$get('/sectionspeed/getSectionSpeedInfoList',params,function(rs) {
$('#vehicle').show();
var resultHtml = template('vehicle_panel_collapse_temp', {list: rs,lineName:lineName,lineId:params.lineId,dirc:params.directions,lineCode:params.lineCode});
$('#vehicle').html(resultHtml);
});
},
getAnalyticSection : function(lineId,direction,argus,lineCode,callback) {
$get('/sectionspeed/analyticSection',{'line.id_eq' : lineId , 'directions_eq' : direction,'argus':argus,'lineCode':lineCode},function(resultdata) {
callback && callback(resultdata);
});
},
// 查询线路某方向下所有站点的中心百度坐标
getStationRoutePoint : function(id_,dir_,callback) {
$get('/stationroute/getStationRouteCenterPoints',{lineId:id_,direction:dir_},function(result) {
callback && callback(result);
});
},
/** 在地图上画出线路走向 @param:<Line.id:线路Id;0:上行;data:上行路段数据> */
linePanlThree : function(lineId,data,direction) {
/** 获取站点路由信息 @param:<Line.id:线路Id;0:上行> @return:<resultdata:站点路由数据> */
PublicFunctions.getStationRoutePoint(lineId,direction,function(resultdata) {
SectionSpeedVmapWorlds.clearMarkAndOverlays();
// 路段数据长度
var dataLen = data.length;
// 如果大于零
if(dataLen>0) {
// 地图折线坐标点集合
var polylineArray = [];
// 编辑路段数据
for(var d= 0; d<dataLen;d++){
// 获取路段折线坐标字符串
var sectionBsectionVectorStr = data[d].sectionBsectionVector;
if(sectionBsectionVectorStr==null) {
continue;
}
// 切割段折线坐标字符串
var tempStr = sectionBsectionVectorStr.substring(11,sectionBsectionVectorStr.length-1);
// 分割折线坐标字符串
var lineArray = tempStr.split(',');
for(var i = 0;i<lineArray.length;i++) {
polylineArray.push(new BMap.Point(lineArray[i].split(' ')[0],lineArray[i].split(' ')[1]));
}
}
/** 在地图上画出线路走向 @param:<polylineArray:地图折线坐标点集合;resultdata:站点路由数据> */
SectionSpeedVmapWorlds.drawingUpline(polylineArray,resultdata);
// 如果站点路由数据不为空
if(resultdata.length>0) {
// 遍历站点路由数据
for(var s = 0 ; s<resultdata.length;s++) {
// 中心点坐标字符串
var bJwpointsStr = resultdata[s].bJwpoints;
var stationName = resultdata[s].stationRouteName;
// 起个中心点坐标字符串
var bJwpointsArray = bJwpointsStr.split(' ');
// 设置中心点
var point_center = new BMap.Point(bJwpointsArray[0],bJwpointsArray[1]);
/** 在地图上画点 @param:<point_center:中心坐标点> */
SectionSpeedVmapWorlds.drawingUpStationPoint(point_center,stationName,s+1);
}
}
}
});
},
analyticSection : function(dataLen) {
// 编辑路段数据
for(var d= 0; d<dataLen.length;d++){
// 地图折线坐标点集合
var polylineArray = [];
// 获取路段折线坐标字符串
var sectionBsectionVectorStr = dataLen[d].linestring;
if(sectionBsectionVectorStr==null) {
continue;
}
// 切割段折线坐标字符串
var tempStr = sectionBsectionVectorStr.substring(sectionBsectionVectorStr.indexOf("(")+1,sectionBsectionVectorStr.length-1);
// 分割折线坐标字符串
var lineArray = tempStr.split(',');
for(var i = 0;i<lineArray.length;i++) {
polylineArray.push(new BMap.Point(lineArray[i].split(' ')[0],lineArray[i].split(' ')[1]));
}
/** 在地图上画出线路走向 @param:<polylineArray:地图折线坐标点集合;resultdata:站点路由数据> */
SectionSpeedVmapWorlds.drawingSecitons(polylineArray);
}
}
}
return PubFun ;
}();