GPS项目中涉及到的技术有地图纠偏,js与winform c#的交互等方面:



 1   google地图纠偏,能够私下call我...QQ(964877814)....,事实上主要由于考虑到政治以及军事安全的问题。所以国内的地图存在偏差。并且不同地方的偏差不同,可是对应的计算偏差的算法不可能公开的缘故。所以仅仅能依靠一些纠偏数据来纠正。

纠偏数据能够自己获得,由于地图所谓的偏差值仅仅是:(例增加使用google map 代码加GPS经纬度),明显,GPS经纬度不可能出现错误,人家是卫星各种东东定位。商业产品...所以出错就是在于google map与 GPS经纬度的交互后,也就是说实际在google把准确的值换成偏差后的值啦...甚至是说...那些地质測绘的厂商本来给他们的就是经过有关部门..的数据.... 所以实际上GPS+卫星地图的这样的定位是没有经过偏差处理的...而假如你想获得纠偏数据..



步骤:

   比方你在珠海...

      1  然后你首先通过GPS定位装置获得一个坐标点(经纬度)point_1;

      2  在“卫星“模式下,能够在point_1处标记一个marker_1,事实上此时不存在偏差的显示;

      3  在”地图“模式下,能够再point_1经纬度处标记一个marker_2,嘿嘿。此时呢,就是准确的经纬度+加上偏差的不准确地图;

      4  の...然后将模式转变成”卫星模式“下。の...由此获得marker_2如今实际的经纬度值点point_2;の...如今我们手上就有两个经纬度啦。

      5  做差吧。point_2.x-point.x=dx;point_2.y-point.y=dy;...事实上这就是计算方法...循环几次之后,能够通过什么拟合东东的数学公式(球体上两点等等),来计算其周围的偏差...可是不同的城市甚至镇 乡都要取几次值...

2  winform c#与通过方式post与server交互:

引入using System.Net;

using System.Collections.Specialized;

代码例如以下:

  1. private void GetInfo()
  2. {
  3. WebClient w = new WebClient();
  4. NameValueCollection VarPost = new NameValueCollection();
  5. VarPost.Add("lng", textBox1.Text.Trim());
  6. //将textBox1中的数据变为用a标识的參数。并用POST传值方式传给网页 ­
  7. VarPost.Add("lat", textBox2.Text.Trim());
  8. VarPost.Add("__VIEWSTATE", "/wEPDwULLTIwNzQwMDQ3MTVkZKHa1lpe/9+nyHf2xzOHEEt1eGFB");
  9. VarPost.Add("__EVENTVALIDATION", "/wEWBAL65/7NAgKL1Y7VCgKKhszBCQKM54rGBglQFPnfb0garkdt736MDNGGoKlX");
  10. VarPost.Add("Button1","经纬度定位");
  11.    //将參数列表VarPost中的全部数据用POST传值的方式传给http://申请好的域名或用IIs配置好的地址/Default.aspx,
  12.    //并将从网页上返回的数据以字节流存放到byRemoteInfo中)(注:IIS配置的时候常常没配置好会提示错误,嘿) ­
  13. string url = <a href="http://www">http://www.</a>网址;
  14. try
  15. {
  16. byte[] byRemoteInfo = w.UploadValues(new Uri(url), "post", VarPost);
  17. string sRemoteInfo = System.Text.Encoding.UTF8.GetString(byRemoteInfo);
  18. //StreamReader sr = new StreamReader(@"C:\temp.txt", Encoding.Default);
  19. //string html = sr.ReadToEnd();
  20. foreach (Match m in Regex.Matches(sRemoteInfo, @"(?<=markpoint\().*(?=,')"))
  21. {
  22. string[] splitstring = m.Value.ToString().Split(',');
  23. label1.Text=splitstring[0]+"   "+splitstring[1];
  24. // webBrowser_map.Document.InvokeScript("markpoint", new Object[] {});
  25. }
  26. using (StreamWriter sw = new StreamWriter("TestFile.txt"))
  27. {
  28. // Add some text to the file.
  29. sw.Write(sRemoteInfo);
  30. }
  31. }
  32. catch (WebException ex)
  33. {
  34. label1.Text = ex.ToString();
  35. }
  36. }

或许大家会对这一段代码产生疑问:

  1. VarPost.Add("lng", textBox1.Text.Trim());
  2. //将textBox1中的数据变为用a标识的參数,并用POST传值方式传给网页 ­
  3. VarPost.Add("lat", textBox2.Text.Trim());
  4. VarPost.Add("__VIEWSTATE", "/wEPDwULLTIwNzQwMDQ3MTVkZKHa1lpe/9+nyHf2xzOHEEt1eGFB");
  5. VarPost.Add("__EVENTVALIDATION", "/wEWBAL65/7NAgKL1Y7VCgKKhszBCQKM54rGBglQFPnfb0garkdt736MDNGGoKlX");
  6. VarPost.Add("Button1","经纬度定位");

这个是http的requst的body部分(具体了解HTTP协议),可以通过Fiddler(Fiddler是一个web调试代理。它可以记录全部client和server间的http请求。同意你监视,设置断点。甚至改动输入输出数据,fiddler包括了一个强大的基于事件脚本的子系统,而且可以使用.net框架语言扩展。),他可以抓取http包:

事实上总结起来,winform c#与server交互,而winform这方事实上就是一个“http包”发送方...而server仅仅要知道这是身份就可以。の...也就是说本来浏览器要办的事。你winform来做...“http模拟”....事实上最主要知道:通过Fiddle所得的Body部分来确定发送的数据集合+URL....(待续....)

3 winform中webbrowser设置url:

  1. System.IO.FileInfo file = new System.IO.FileInfo("../../GoogleMap.htm");
  2. // WebBrowser控件显示的网页路径
  3. webBrowser_map.Url = new Uri(file.FullName);
  4. // 将当前类设置为可由脚本訪问
  5. webBrowser_map.ObjectForScripting = this;

4 c#引用c++编写的Dll时。当c++中的函数声明为:..int add(int& a,int& b);时

应该在.cs文件里作例如以下处理:

  1. class RectifyTest
  2. {
  3. [DllImport("..\\..\\Lib\\RectifyDll.dll")]
  4. public static extern int Rectify(ref float lng, ref float lan);
  5. }

5  VC2005 中char 转换 LPCWSTR 问题

网上非常多code都是用VC6.0写成的。用VC2005转换后,再编译时常常会遇到字符串转换的问题,搞得你非常郁闷呀。

如MessageBox函数定义一个 char ch[10]; 给ch 写进字符然后调用 MessageBox((LPCWSTR)ch); 编译是没问题,可是显示出来的是乱码,LPCWSTR 类型是多少位的啊?在VC6.0中 能够这样使用 MessageBox(ch); 无须强制转换。

但在2005中就不行,必需要强制转换后才干通过编译。但转换后显示的又是乱码,非常让人郁闷呀。

在windows平台中对LPCTSTR 有例如以下定义

  1. typedef LPCTSTR LPTSTR ;
  2. #ifndef _UNICODE
  3. typedef TCHAR char;
  4. #else
  5. typedef TCHAR wchar_t;
  6. #endif

解决方式例如以下:

在项目属性-->配置属性-->常规-->字符集, 将其换为:使用多字节字符集,编译就通过了。

GPS项目小结的更多相关文章

  1. 记一次SSM项目小结(一)

    记一次SSM项目小结(一) ssm框架 环境配置 服务器配置 解决方法  拦截器重定向到localhost nginx和tomcat中session失效 mybatis的xml文件不生效 数据库用户创 ...

  2. [2017BUAA软工助教]个人项目小结

    2017BUAA个人项目小结 一.作业链接 http://www.cnblogs.com/jiel/p/7545780.html 二.评分细则 0.注意事项 按时间完成并提交--正常评分 晚交一周以内 ...

  3. [2017BUAA软工助教]结对项目小结

    2017BUAA结对项目小结 一.作业链接 http://www.cnblogs.com/jiel/p/7604111.html 二.评分细则 1.注意事项 按时间完成并提交--正常评分 晚交一周以内 ...

  4. 在oneAPM参加第一个项目小结

    从12月15日开始加入进入oneAPM的第二个项目,也是我真正近距离接触项目的一次吧,到今天差不多接近尾声了,很高心能和大家一起共同改造这个项目,虽然说我做的贡献并不大,但是身临项目真的会收获很多体会 ...

  5. .NET项目开发—浅谈面向接口编程、可测试性、单元测试、迭代重构(项目小结)

    阅读目录: 1.开篇介绍 2.迭代测试.重构(强制性面向接口编程,要求代码具有可测试性) 2.1.面向接口编程的两个设计误区 2.1.1.接口的依赖倒置 2.1.2.接口对实体的抽象 2.2.迭代单元 ...

  6. 一个WPF小项目小结

    一:缘起 老板有做PC桌面客户端的需求,做的是能耗的计算和评估,要算能耗,就有很多环节,最后对这些环节数据进行一些简单计算.我想要是做的话就用比较熟的wpf,就去聊了下,对方给了1张比较复杂的Exce ...

  7. .NET项目开发—浅谈面向对象的纵横向关系、多态入口,单元测试(项目小结)

    阅读目录: 1.开篇介绍 2.使用委托消除函数串联调用 2.1.使用委托工厂转换两个独立层面的对象 3.多态入口(面向对象继承体系是可被扩展的) 4.多态的受保护方法的单元测试(Protected成员 ...

  8. Docker第三方项目小结

    软件项目的成功常常根据其催生的生态系统来衡量.围绕或基于核心技术构建的项目增添了功能和易用性,它们常常日臻完善.Docker就是一个典例,有众多第三方项目扩展.补充或改进Docker. •Docker ...

  9. HotelIInventory项目小结

    最近参与了HotelIInventory这个项目的一个模块的开发.经验不足,对Sql脚本的编写能力还需要提高,这个模块的Sql语句大多是组长替我写的,如果靠我自己来写,我绝对是没有能力完成工作的,在此 ...

随机推荐

  1. 【转】C与CPP后缀的文件在编译时的区别

                                                            本文出处连接, by Ray FAN(ielnaf@qq.com)            ...

  2. [转载] 无所不能的“蚂蚁”--Ant

    说他无所不能,好像有点夸张,但是用过Ant之后,感觉真的是只有想不到没有作不到.Ant,原作者选择他作为软件名字的意思是指"令一个简洁的工具"(Another Neat Tool) ...

  3. acd The Game about KILL(和约瑟夫归则一样,归律)

    Problem Description Teacher HU and his 40 students were trapped by the brigands. To show their power ...

  4. gradle 2.1构建android出现错误的解决方案

    转自:http://www.tuicool.com/articles/YJNJbuA 使用不同版本Gradle构建Andorid 出现Gradle version xxxx is required 坑 ...

  5. [翻译] Blocks and Variables

    Blocks and Variables https://developer.apple.com/library/ios/documentation/cocoa/conceptual/Blocks/A ...

  6. sweet home 3d 免费的家居设计软件

    Sweet home 3d是一个室内设计软件,可以帮助你快速的画出你家的平面图,家具的摆放位置,并且支持3D方式查看. 下载地址: http://sourceforge.net/projects/sw ...

  7. apache kafka监控系列-KafkaOffsetMonitor(转)

    原文链接:apache kafka监控系列-KafkaOffsetMonitor 概览 最 近kafka server消息服务上线了,基于jmx指标参数也写到zabbix中了,但总觉得缺少点什么东西, ...

  8. HTML:基本的标签

    概述: <html></html>标准的语言格式,回环标签,有头和躯体部分,头里面一般显示标题title,躯体部分显示内容:背景色.文字.图片.超链接.表格.表单等. 可以直接 ...

  9. java中的char占几个字节

    1:“字节”是byte,“位”是bit : 2: 1 byte = 8 bit : char 在Java中是2个字节.java采用unicode,2个字节(16位)来表示一个字符. 例子代码如下: p ...

  10. 服务器主机上RAID Card的Write Caching Policy

    在Cisco Server的DRAC中, 创建virtual drive时, 会看到下面的选项.   那么Write back, write through, write back bad BBU之间 ...