GMap.NET二次开发库
GMap.NET的出现,解决了传统的依赖于地图引擎的代价高昂的解决方案,而且使用传统地图引擎,无法迁移,就连我们的地图放大缩小这样常规的方法,都是紧紧绑定在这些令人恶心的地图引擎开发包提供的SDK接口上,目前的Mapxtreme、 ArcEngine、SuperMap等,不仅开发方式迥异,而且收费昂贵。更要命的就是部署复杂,不适合常规的桌面GPS监控系统开发。而基于GMap.NET,基于一套方法,可以支持多个地图,不仅仅是谷歌,百度,ArcGIS地图也可以支持。
GMap.NET的开发,不仅省掉了地图的费用,而且节省了那些贪得无厌的地图引擎开发商的费用(我痛恨一切按点收费的软件,一个安装点公开报价在几万元,我总体软件也赚不了这些啊),狠狠打击了这些地图引擎商,让他们都去死吧。地图商也很贪得无厌,比如灵图、四维等,一套地图动不动都十几万,每年更新还要继续收取一大笔费用。淘宝上的盗版地图虽然便宜,但是不能用,都是2010年以前的,旧、点少、不规范,只能是垃圾。很多客户为问我,谷歌地图准吗,我都无奈的笑了,好像花钱买的地图就一定很准,真贱那。再说了,你要做什么?要导弹精确制导吗?每个地图都不敢说自己每个地方都准确无误,但是相比来说谷歌和百度都是国内最准确的地图。
围绕GMap.NET,我们一样可以开发出满足GPS监控要求的功能(完整源码+GPS纠偏插件 600元,需要购买的可以联系我2379423771@qq.com):
1.测距

2.图层管理

3.电子围栏
电子围栏不仅仅在于把围栏画出来,还在于进出围栏的基于几何算法的报警判断。


路线偏移,通过用户在界面上绘制路线,保存在数据库中,打开地图的时候自动生成路线,当车辆移动的时候,触发路线偏移报警。

4.历史轨迹
采用地图开发商自带的DLL GPS纠偏插件,可以直接转换,不需要数据库,更不用拆半和二分查询等影响性能的东西。
如下图所示,运行轨迹和谷歌地图道路非常吻合,精确度非常高。

5.地图鹰眼

6.比例尺

7.地图标注
GMap.NET的文字标注占用空间太大,不简洁,当地图图元比较多的时候,容易重叠不好看。因此写了一个类似于原生地图的文字标注,直接在图元正下方居中显示文字标注。非常清爽。


8.动画报警
可以在地图生成基于GIF动画格式的Marker,通过我们封装好的动画AnimationMarker库,可以很方便的随心所欲的选择各种动画GIF的Marker.经常用Mapxtrem开发的人知道这个在Mapxtreme上,对于图片的支持,非常弱智,不支持256色以上的PNG图片,跟不用说动画了。

9.省份轮廓
省份类GMapExt.MapArea,自动生成各个省份的轮廓。省份的行政区边界数据是从百度上导出的,数据非常完整,然后经过坐标转换,生成适合于谷歌地图的省的轮廓数据。


10.图片marker旋转
在地图上我们常常需要标注方向,如车辆在动态形式的时候,车辆图标要根据行驶的方向来不断的调整图片的旋转角度。在生成路线轨迹的时候,要根据轨迹的方向,来不断的旋转箭头图标。基于GMap.NET的画图系统,可以开发出基于角度的图片Marker.

GMap.NET二次开发库的更多相关文章
- ObjectARX二次开发创建自己的静态库,如同objectARX库一样
objectARX二次开发的时候,经常会用到一些重复使用的类,如果类已经足够的好,那么我们可以编译成静态库,加快开发和编译的速度,提高工作效率. 环境vs2010+objectARX2012wizar ...
- 解析大型.NET ERP系统 窗体、查询、报表二次开发
详细介绍Enterprise Solution 二次开发的流程步骤,主要包括数据输入窗体(Entry Form),查询(Query/Enquiry),报表(Report)三个重要的二次开发项目. 数据 ...
- Openstack Murano(kilo)二次开发之添加Volume
Openstack Murano(kilo)二次开发之添加Volume 欢迎转载,转载请注明出处:http://www.cnblogs.com/fmnisme/p/openstack_murano_a ...
- Android VLC播放器二次开发1——程序结构分析
最近因为一个新项目需要一个多媒体播放器,所以需要做个视频.音频.图片方面的播放器.也查阅了不少这方面的资料,如果要从头做一个播放器工作量太大了,而且难度也很大.所以最后选择了VLC作为基础,进行二次开 ...
- ECSHOP二次开发指南
ECSHOP二次开发指南 发布时间:2013-05-28 12:47:00 来源: 评论:0 点击: 次 [字号:大 中 小] QQ空间新浪微博腾讯微博人人网豆瓣网百度空间百度搜藏开心网复制更 ...
- magento二次开发的基本步骤分享
Magento后台添加新模块的体会 确定命名空间(Namespace)和模块(Modulename)的命名: 在app/etc/modules/ 路径下,创建 Namespace_Modulename ...
- 研究QGIS二次开发笔记(一)
为了在QT程序中嵌入一个地图,最终选择了QGIS来干这件事.选型阶段真是呵呵.我折腾的是QGIS2.4.0. 首先,到官方网站下载安装QGIS.如果你跟我一样懒的话,可能希望下载一个已经编译好的win ...
- SPSS二次开发
在以前关于SPSS二次开发文章中留下过自己联系方式,差不多一年的时间,零零散散的和我取得联系的人也有几十位,看来对于SPSS二次开发的需求不少. Web SPSS系统是利用SPSS二次开发技术,使用户 ...
- Delphi 二次开发 CorelDRAW
我们首先通过一个简单的程序例子来看一下Delphi对CorelDRAW二次开发有什么样的效果.本程序实现CorelDRAW程序的打开和关闭. 1.1 Delphi与CorelDRAW连接 在程序与Co ...
随机推荐
- 1.1 Quartz 2D 绘图
本文并非最终版本,如有更新或更正会第一时间置顶,联系方式详见文末 如果觉得本文内容过长,请前往本人 “简书” Quartz2D 绘图主要步骤: 1. 获取[图形上下文]对象 —— (拿到草稿纸 ...
- ACM: FZU 2112 Tickets - 欧拉回路 - 并查集
FZU 2112 Tickets Time Limit:3000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u P ...
- crawler4j 学习
crawler4j 学习(一) crawler4j是一个轻量级多线程网络爬虫,开发者可以调用相应的接口在短时间内创建一个多线程网络爬虫. 前期准备 使用maven 为了使用最近版本的crawler4j ...
- Mysql创建新用户方法
1. CREATE USER 语法: CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 例子: CREATE USER 'dog'@'lo ...
- Android weight属性详解
android:layout_weight是一个经常会用到的属性,它只在LinearLayout中生效,下面我们就来看一下: 当我们把组件宽度设置都为”match_parent”时: <Butt ...
- 利用box-shadow绘图
上篇博客提到过,box-shadow属性的本质是对形状的复制,那么如果我设置一个1*1px的i标签,利用box-shadow可以叠加的特性,给每一个1*1px的阴影赋上颜色,那么最后不就是一幅图片了么 ...
- HTML语法大全
卷标 , 属性名称 , 简介 002 <! - - ... - -> 批注 003 <!> 跑马灯 004 <marquee>...</marque ...
- 如何使用sysdba身份通过jdbc连接oracle?
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); Properties conProps = new ...
- 获取移除指定Url参数(原创)
/// <summary> /// 移除指定的Url参数 /// 来自:http://www.cnblogs.com/cielwater /// </summary> /// ...
- 利用activeX控件在网页里自动登录WIN2003远程桌面并实时控制
首先要自己配置并打开受控端的WEB远程桌面服务,这个在“添加/删除windows组件”里有,我只在windows 2003 server里试过,没试过XP.下面我们在客户端安装微软提供的远程桌面客户端 ...