[发明专利]一种构建嵌入式多功能GIS系统的方法无效
申请号: | 200910014069.9 | 申请日: | 2009-02-05 |
公开(公告)号: | CN101587481A | 公开(公告)日: | 2009-11-25 |
发明(设计)人: | 刘传刚;耿士华;崔凯;罗晓艳;边守华;孙中;李童 | 申请(专利权)人: | 山东超越数控电子有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;G06F9/44;G01C21/34 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 250014山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 构建 嵌入式 多功能 gis 系统 方法 | ||
1.一种构建嵌入式多功能GIS系统的方法,其特征在于,嵌入式GIS系统包括以下功能模块:地图操作模块、通信模块、定位导航模块和数码照片采集标绘模块,其中地图操作模块负责完成地图浏览、图层编辑、地图查询的功能;无线通信模块以CDMA通信的方式完成与外界数据通信的工作;定位导航模块根据路径分析得出的最佳路径及定位信息对用户进行行进的导航;照片采集标绘模块完成数码照片的自动采集以及照片在电子地图上的标绘;具体构建步骤如下:
地图操作模块,软件启动后,系统将根据接收到的当前经纬度坐标查找到用户当前所在的地图,并在视图中以当前位置为中心打开地图,地图操作模块用于实现地图的打开与关闭、缩放平移、比例尺设置、指北针设置、图层编辑、地图查询功能的操作;
在打开地图操作中,需要通过工作空间类CSeWorkSpace为核心控制数据,首先在工程头文件中定义工作空间成员变量m_WorkSpace,为方便随时对工作空间进行访问,声明类的全局变量theApp,这样就在程序的任何地方通过theApp.m_WorkSpace调用工作空间类的成员函数;
打开地图流程,与用户的交互都是通过CSeMapWnd地图窗口管理类来实现的;m_MapWnd.OnDraw函数是显示地图函数,必须在CView::OnDraw中重载才能将打开的电子地图绘制到视图中;函数表示如下:
void CCarNaviView::OnDraw(CDC*pDC)
{CCarNav iDoc*pDoc=GetDocument();
ASSERT_VALID(pDoc);
//{{显示地图
CRect rcClient;
GetClientRect(&rcClient);
if(m_bFileOpened)
m_MapWnd.OnDraw(pDC,rcClient,rcClient);
else
pDC->FillSolidRect(&rcClient,RGB(255,255,255));
//}}显示地图}
点按动作tap-and-hold gesture是Windows CE里面取代鼠标右键点击的动作,这里实现的功能是用触摸笔在触摸屏上长按三秒弹出菜单;eVC下具体实现步骤如下:
在StdAfx.cpp中包含头文件″aygshell.h″;
在eVC菜单Project/Settings的Link选项下,object/library modules:编辑框中添加aygshell.lib;
在OnLButtonDown()和OnLButtonUp()中添加相应代码,
这里给出在OnLButtonDown()下的关键代码:
Void CMyWnd::OnLButtonDown(UINT nFlags,CPoint point)
{
SHRGINFO shrgi={0};
shrgi.cbSize=sizeof(SHRGINFO);
shrgi.hwndCl ient=m_hWnd;
shrgi.ptDown.x=point.x;
shrgi.ptDown.y=point.y;
shrgi.dwFlags=SHRG_RETURNCMD;
if(GN_CONTEXTMENU==SHRecognizeGesture(&shrgi))
ContextMenu(point);
else
Default();
}
导航定位模块中的路径分析功能对指定的电子地图图层进行最短和最佳路径分析,在具体的工程项目中,从CSePathAnalyst派生出一个自定义路径分析类,重载GetDistance方法,根据具体的需要设定最优分析的属性字段和权重规则,以完成最优路径的分析,程序在进行导航时需要用户双击目的地,分析出起始点到目的地的最短路径然后,得出的最优路径再结合GPS北斗定位信息,对系统终端用户进行最优路径进行导航;
无线通信模块以CDMA方式进行对外通信,实现接打电话及收发短信功能,并在两个系统之间发送GPS定位信息以在电子地图上显示彼此的位置,以下为CDMA通信中常用的AT指令:
AT$SMSMO<Message Num>=
<Paging Num>,[<Callback Num>],<TI>,
[<Msg_encoding>,[<Reply Option>,][<Priority>,<Storage>,]]<Data>
AT$NEWMT:<Message>,<Time>,
[<Callback Num>],<TI>,<Msg_encoding>,<Data>
AT$SMSMOACK<Message Num>
AT$DELMO=<Message Num>
AT$DELMT=<Message Num>
在数码照片采集标绘模块中,系统控制外接数码相机实现数码照片的自动适时采集和传输,将当前定位信息赋予所采集的照片在电子地图上进行标绘;点击电子地图上的某地里位置,则会相应显示该处地理位置的真实照片。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东超越数控电子有限公司,未经山东超越数控电子有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910014069.9/1.html,转载请声明来源钻瓜专利网。