串口+GPS定位软件 C#上位机代码解读(二)

1.调用经纬度信息显示


         //调用javascritpt函数标注地图
                    WebBrowser mapWB = (WebBrowser)baiDuMap.Content;
                    mapWB.InvokeScript("theLocation", new object[] { DegreeConvert(gpsInfo.lon) , DegreeConvert(gpsInfo.lat) });

/*经纬度转换 : 输入nmea的 度分.xx 格式,输出 度.xxx */

double DegreeConvert(double sDegree)

/*经纬度转换 : 输入nmea的 度分.xx 格式,输出 度.xxx */
double DegreeConvert(double sDegree)
{
    double dDegree;

    if (sDegree == 0)return 0;

    int integer = (int)sDegree;
    double decimal = sDegree - (int)sDegree;

    double min = integer % 100;
    int hour =(int) (integer / 100);

    dDegree = (double)hour + (double)(min / 60) + (double)(decimal / 60);

    

    return dDegree;
    
}

例:

DegreeConvert(gpsInfo.lon)

11720.3178 E  ---->117.338630 E

DegreeConvert(gpsInfo.lat)

3906.2523 N ---->39.104205 N


2.接受外来参数,显示

                    //调用javascritpt函数标注地图
                    WebBrowser mapWB = (WebBrowser)baiDuMap.Content;
               //     mapWB.InvokeScript("theLocation", new object[] { DegreeConvert(gpsInfo.lon), DegreeConvert(gpsInfo.lat) });
              //      mapWB.InvokeScript("theLocation", new object[] { 117.33865, 39.10422 });
                    string receiveText2 = System.Text.Encoding.Default.GetString(recData, 0, dataLength);// 将接受到的字节数据转化成字符串;    
                    string[] sArray = receiveText2.Split(',');
              //      mapWB.InvokeScript("theLocation", new object[] { double.Parse(sArray[0]), double.Parse(sArray[1]) });
                    mapWB.InvokeScript("theLocation", new object[] { Convert.ToDouble(sArray[0]), Convert.ToDouble(sArray[1]) });



mapWB.InvokeScript("theLocation", new object[] { DegreeConvert(gpsInfo.lon), DegreeConvert(gpsInfo.lat)

注意以上2个参数为double型


3.C#字符串截取和处理

根据单个分隔字符用split截取

例如

复制代码代码如下:
using System.Text.RegularExpressions;

string st="GT123_1";

string[] sArray=st.split("_");


即可得到sArray[0]="GT123",sArray[1]="1";


string--->double

double.Parse(sArray[0])或Convert.ToDouble(sArray[0])





--

猜你喜欢

转载自blog.csdn.net/yichu5074/article/details/81039831