DataTable dt = new DataTable(); adp.Fill(dt); (3)代码设计
1)双击历史轨迹查询button控件,写入代码,实现查询历史轨迹的功能,代码如下: string Olestr = \信息\;
SqlCommand cmd = new SqlCommand(Olestr, myConnection); SqlDataAdapter adp = new SqlDataAdapter(cmd); DataTable dt = new DataTable(); adp.Fill(dt);
dataGridView1.DataSource = dt;
2)双击查询当前位置button控件,写入代码,实现查询历史轨迹的功能,代码如下: string Olestr = \点号,X坐标,Y坐标,时间 from GPS信息 where 时间=(select MAX(时间) from GPS信息)\;
SqlCommand cmd = new SqlCommand(Olestr, myConnection); SqlDataAdapter adp = new SqlDataAdapter(cmd); DataTable dt = new DataTable(); adp.Fill(dt);
dataGridView1.DataSource = dt; 截图如下所示: 图1为历史轨迹查询结果 图2为当前位置查询结果
图1
图2
车辆GIS管理浏览器端软件系统 (1) 窗口界面设计,如下图所示:
(2)读取数据库内容,代码如下: Array1 = \;
SqlData1 sd = new SqlData1();
string cmdText = \信息\; dt = sd.ExecuteDatatable(CommandType.Text, cmdText, null); int i = 1;
foreach(DataRow dr in dt.Rows) {
Array1 += dr[\时间\].ToString(); Array1 += \;
Array1 += dr[\坐标\].ToString(); Array1 += \;
Array1 += dr[\坐标\].ToString(); Array1 += \; Array1+=i.ToString(); Array1 += \; i++; }
sd = new SqlData1();
cmdText = \信息 order by 时间 desc\;
DataRow dr1 = sd.ExecuteDatarow(CommandType.Text, cmdText, null); if (dr1 != null) {
Dest += dr1[\时间\].ToString(); Dest += \;
Dest += dr1[\坐标\].ToString(); Dest += \;
Dest += dr1[\坐标\].ToString(); Dest += \;
Dest += i.ToString(); }
(3) web 浏览器上显示电子地图,代码如下:
var latlng = new google.maps.LatLng(32.1058 , 118.9313); var image = new google.maps.MarkerImage('images/fly.gif', new google.maps.Size(64,64), new google.maps.Point(0,0),
new google.maps.Point(0,32)); var myOptions = { zoom: 16, center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP };
map = new google.maps.Map(document.getElementById(\), myOptions); geocoder = new google.maps.Geocoder();
var contentString =GetcontentString(\,NUPT!\,\南京邮电大学!\); var infowindow = new google.maps.InfoWindow ({
content: contentString ,
maxWidth: 200 });
var marker = new google.maps.Marker({ position: latlng, map: map, icon: image,
title:\南京邮电大学\ });
google.maps.event.addListener(marker, 'click', function() { infowindow.open(map,marker); }); (4) 显示历史轨迹。代码如下: function btnAddpointline_onclick() {
var array='<%=Array1 %>'; var arr=array.split('|'); var polyOptions = {
strokeColor: '#00FF00', strokeOpacity: 1.0, strokeWeight: 2 }
poly = new google.maps.Polyline(polyOptions); poly.setMap(map);
var path = poly.getPath(); for (var j = 0; j < arr.length-1;j++) {
var image = new google.maps.MarkerImage('images/point.gif',
new google.maps.Size(10, 11), new google.maps.Point(0,0), new google.maps.Point(0,2)); var beachs=arr[j];
var beach = beachs.split('*');