freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于vc的電子導(dǎo)航系統(tǒng)_畢業(yè)論文-免費(fèi)閱讀

  

【正文】 GPSParam[m_nNumber].m_dPositionX=PositionValue*60+atof(str)。 (%c%c,buf[0],buf[1])。在實(shí)際應(yīng)用中往往要根據(jù)需要對(duì)其做進(jìn)一步的運(yùn)算處理,比如從 GPS 接收機(jī)中獲得的時(shí)間信息為格林尼治時(shí)間,因此需要在獲取時(shí)間上加 8 小時(shí)才為我國(guó)標(biāo)準(zhǔn)時(shí)間。 case 3: m_sPositionY+=Data[i]。,39。如果情況特殊,需要從其他幀獲取數(shù)據(jù),處理方法與之也是完全類似的。 } 提取定位數(shù)據(jù) GPS 接收機(jī)只要處于工作狀態(tài)就會(huì)源源不斷地把接收并計(jì)算出的 GPS 導(dǎo)航定位信息通過(guò)串口傳送到計(jì)算機(jī)中。 SetCommState( m_hCom, amp。//接收時(shí)間常數(shù) SetCommTimeouts (m_hCom , amp。//1:表示有一個(gè)字符引發(fā)一個(gè)事件 從串口讀取數(shù)據(jù)有多種方法,在此直接使用 Win32 API 函數(shù)對(duì)其進(jìn)行編程處理。 if(()) (FALSE)。目前, GPS 已經(jīng)能夠達(dá)到地殼形變觀測(cè)的精度要求, IGS 的常年觀測(cè)臺(tái)站已經(jīng)能構(gòu)成毫米級(jí)的全球坐標(biāo)框架。一般在接收機(jī)鐘確定的歷元時(shí)刻量測(cè),保持對(duì)衛(wèi)星信號(hào)的跟蹤,就可記錄下相位的變化值,但開(kāi)始觀測(cè)時(shí)的接收機(jī)和衛(wèi)星振蕩器的相位初值是不知道的,起始?xì)v元的相位整數(shù)也是不知道的,即整周模糊度,只能在數(shù)據(jù)處理中作為參數(shù)解算。有鑒于衛(wèi)星導(dǎo)航技術(shù)在民用和軍事領(lǐng)域的重要意義,使其得到了許多國(guó)家的關(guān)注。而內(nèi)循環(huán)則遍歷 sOpen 中節(jié)點(diǎn)的鄰接關(guān)系,本算法實(shí)現(xiàn)過(guò)程中這一循環(huán)與節(jié)點(diǎn)數(shù)或線數(shù)并沒(méi)有數(shù)學(xué)關(guān)系,它的循環(huán)次數(shù)通常為 2~ 5 之間。 =vWork。 =vWork。 vWork=。 =1。 sOpen=new SearchLink()。 } if(==pEndID) { flag++。 =vWork。 for(indexP=1。 =RoadNode[indexP1]。 vWork=。 內(nèi)蒙古科技大學(xué)畢業(yè)設(shè)計(jì) 說(shuō)明書(shū)(畢業(yè) 論文 ) 23 int indexP1=0,indexP2=0。 RoadNode[indexP].pPoint=(IPoint)。系統(tǒng)的主要功能函數(shù)為: private VERTEX BuildTopo(IFeatureLayer pFeatLayerP,IFeatureLayer pFeatLayerL,IPoint pStartV,IPoint pEndV,ref int PointCount,ref int EdgeCount),主要用來(lái)建立拓?fù)潢P(guān)系 private void shortpath(),查詢最短路徑的主函數(shù) private void InsertOrder(SearchLink vIN,ref SearchLink vTO)按權(quán)重的升序插入 private void Insert(SearchLink vIN,ref SearchLink vTO)插入 private void Delete(ref SearchLink vOUT,ref SearchLink vFROM)從鏈表中刪除 建立拓?fù)潢P(guān)系 : 內(nèi)蒙古科技大學(xué)畢業(yè)設(shè)計(jì) 說(shuō)明書(shū)(畢業(yè) 論文 ) 22 VERTEX[]RoadNode=new VERTEX[NodeCount]。//每個(gè) Link 對(duì)象的 v2 都應(yīng)該指向與它所附屬的點(diǎn)相鄰的那個(gè)點(diǎn)節(jié)點(diǎn) public double weight。 public VERTEX Next。 4) 找到點(diǎn) i 的前一點(diǎn)。求出這些子節(jié)點(diǎn)距起始點(diǎn)的距離值,放子節(jié)點(diǎn)到OPEN 表中。主要特點(diǎn)是以起始點(diǎn)為中心向外層層擴(kuò)展,直到擴(kuò)展到終點(diǎn)為止。打開(kāi)類向?qū)?,選擇視圖類 CVCDZDHView,為菜單項(xiàng) ID_DISTANCE_TOOL 添加COMMAND 消息映射函數(shù) OnPolydistancetool(),添加代碼如下。 ((CMainFrame*)AfxGetMainWnd())(0,str)。 for(i=1。 void OnPolyToolUsedMap(short ToolNum, long Flags, LPDISPATCH Points, BOOL bShift, BOOL bCtrl, BOOL FAR*EnableDefauh) 然后在 中加入函數(shù)的實(shí)現(xiàn)代碼。 int CVCDZDHView::OnCreate(LPCREATESTRUCT lpCreateStruct) { if(CView:: OnCreate(1pCreateStruct) = = 1) return 1; …… (MYTOOL_DISTANCE,miToolTypePoly,miCrossCursor)。 eDelete()。 = DISP_E_PARAMNOTFOUND。 void CVCDZDHView::OnZoomIn() { (miZoomInToo1)。 ()。 } 4) 采用同樣的方法創(chuàng)建 WM_SIZE 消息映射函數(shù)。方法如下: include“ ” Class CVCDZDHView::publicCView { protected: CMapX m_ctrlMapX。 內(nèi)蒙古科技大學(xué)畢業(yè)設(shè)計(jì) 說(shuō)明書(shū)(畢業(yè) 論文 ) 7 第二章 電子導(dǎo)航 基本功能 在 VC++中的實(shí)現(xiàn) 利用 MapX 實(shí)現(xiàn) GIS 基本功能 在進(jìn)行 MapX 開(kāi)發(fā)之前, 首先要 在計(jì)算機(jī)中正確的安裝了 MapX 控件 和 VC++應(yīng)用程序 。 集成二次開(kāi)發(fā)目前主要有兩種方式: 1) OLE/DDE 采用 OLE Automation 技術(shù)或利用 DDE 技術(shù),用軟件開(kāi)發(fā)工具開(kāi)發(fā)前臺(tái)可執(zhí)行應(yīng)用程序,以 OLE 自動(dòng)化方式或 DDE 方式啟動(dòng) GIS 工具軟件在后臺(tái)執(zhí)行,利用回調(diào)技術(shù)動(dòng)態(tài)獲取其返回信息,實(shí)現(xiàn)應(yīng)用程序中的地理信息處理功能。 InputLen 屬性:設(shè)置并返回 Input 屬性從接收緩沖區(qū)讀取的字符數(shù)。 SThreshold 屬性:在 MSComm 控件設(shè)置 CommEvent 屬性為 EvSend 并產(chǎn)生OnComm事件之前,設(shè)置并返回傳輸緩沖區(qū)中允許的最小字符數(shù)。 2. 可以在每個(gè)重要的程序功能之后檢查 CommEvent 屬性的值來(lái)檢測(cè)事件和通信錯(cuò)誤。 MSComm 作為一個(gè)串行通訊控件為程序員串口通訊編程節(jié)省了很多時(shí)間。 MapX 定義了一個(gè)類體系,以有效的組織圖形元素,圖層,屬性數(shù)據(jù)等對(duì)象。 MapX 是 MapInfo 公司向用戶提供的具有強(qiáng)大地圖分析功能的 ActiveX 控件產(chǎn)品。 GIS Development。 本文 介紹了電子導(dǎo)航系統(tǒng)設(shè)計(jì)的背景 及 設(shè)計(jì) 中需要用到的 MapX 控件、 VC++、MSComm 控件, 分析了 GIS 開(kāi)發(fā)三種實(shí)現(xiàn)方式 ,提出系統(tǒng)設(shè)計(jì)方案:集成二次開(kāi)發(fā) 。 隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展 ,GIS 得到了廣泛的重視和應(yīng)用, GPS 技術(shù)也已深入到各行各業(yè), GPS 與 GIS 的集成具有廣泛的應(yīng)用需求,它可以實(shí)現(xiàn) GPS 導(dǎo)航信息在地圖上的可視化、一體化和集成化,能夠在地圖上實(shí)時(shí)動(dòng)態(tài)地跟蹤目標(biāo)和顯示地理方位。而且, MapX 提供了各種工具、屬性和方法,實(shí)現(xiàn)這些功能是非常容易的 [1]。 Windows 下編程需要了解 Windows 的消息機(jī)制以及回調(diào) (callback)函數(shù)的原理; MFC 是 Win32API 的包裝類,需要理解文檔視圖類的結(jié)構(gòu),窗口類的結(jié)構(gòu),消息流向等等; COM 是代碼共享的二進(jìn)制標(biāo)準(zhǔn),需要掌握其基本原理等等。MSComm控件提供了兩種處理通信的方法: 1. 事件驅(qū)動(dòng)通信,是一種功能很強(qiáng)的 處理串口活動(dòng)的方法。 CTSHolding 屬性:確定是否可通過(guò)查詢 Clear To Send (CTS)線的狀態(tài)發(fā)送數(shù)據(jù)。 Data Set Ready 信號(hào)由調(diào)制解調(diào)器發(fā)送到相連計(jì)算機(jī),指示作好操作準(zhǔn)備。用戶可以利用這些宏語(yǔ)言,以原 GIS 工具軟件為開(kāi)發(fā)平臺(tái),開(kāi)發(fā)出自己的針對(duì)不同應(yīng)用對(duì)象的應(yīng)用程序。這種方法唯一的缺內(nèi)蒙古科技大學(xué)畢業(yè)設(shè)計(jì) 說(shuō)明書(shū)(畢業(yè) 論文 ) 6 點(diǎn)是前期投入比較大,需要同時(shí)購(gòu)買(mǎi) GIS 工具軟件和可視化編程軟件,但“工欲善其事,必先利其器”,這種投資值得。用戶只需要打開(kāi) Geoset 文件,就可以按預(yù)先定制的方式顯示各層地圖。選擇“建立類向?qū)А被蚴褂每旖萱I CTRL+W,可以打開(kāi)類向?qū)?。修改函?shù)使得當(dāng)窗口獲得焦點(diǎn)時(shí),地圖控件獲得焦點(diǎn)。下面的例子是用標(biāo)準(zhǔn)放大工具實(shí)現(xiàn)放大功能。 內(nèi)蒙古科技大學(xué)畢業(yè)設(shè)計(jì) 說(shuō)明書(shū)(畢業(yè) 論文 ) 11 表 部分 MapX 工具的指示常量 圖層控制工具 為了使用戶方便查詢各個(gè)圖層, 通常要在電子導(dǎo)航系統(tǒng)中設(shè)計(jì)圖層控制工具。 } catch (COleDispatchException *e) 內(nèi)蒙古科技大學(xué)畢業(yè)設(shè)計(jì) 說(shuō)明書(shū)(畢業(yè) 論文 ) 12 { eReportError()。 創(chuàng)建用戶自定義工具 為了滿足用戶需要,使用戶方便查詢兩地之間的距離,我們利用自定義工具在電子導(dǎo)航系統(tǒng)中設(shè)計(jì)了折線距離計(jì)算功能。 BEGIN_EVENTSINK_M AP(CVCDZDHView, CView) ON_EVENT(CVCDZDHView, IDC_M AP, 11, OnPolyTooIUsedMap, VTS_I2 VTS_I4 VTS_DISPATCH VTS_BOOL VTS_BOOL VTS_PBOOL) //11 代表PolyToolused,OnPolyToolUsedMap 是事件響應(yīng)函數(shù)的名稱。 try { (Points,FALSE)。 dDistanceTot+=d。 } } } 為了在狀態(tài)欄中顯示折線距離,還必須在 文件中添加 CMainFrame類的頭文件。這就需要先對(duì)原始道路圖進(jìn)行預(yù)處理,構(gòu)建其相應(yīng)的網(wǎng)絡(luò)拓?fù)潢P(guān)系,然后才能進(jìn)行最短路徑分析等各種操作。 1. 訪問(wèn)路 網(wǎng)中距離起始點(diǎn)最近且沒(méi)有被檢查過(guò)的點(diǎn),把這個(gè)點(diǎn)放入 OPEN 組中等待檢查。 2) 檢驗(yàn)從所有已標(biāo)記的點(diǎn) k 到其直接連接的未標(biāo)記的點(diǎn) j 的距離 , 并設(shè)置: dj=min[ dj, dk+lkj],式中, lkj 是從點(diǎn) k 到 j 的直接連接距離。 public int Searched。//最短路徑中與前一個(gè)點(diǎn)之間的線的 ID public SearchLink SLink。 public SearchLink Prev。 continue。 } 首先建立 VERTEX 數(shù)組,用來(lái)存放點(diǎn)節(jié)點(diǎn),在遍歷點(diǎn)層元素的過(guò)程中,根據(jù)點(diǎn)的ID 號(hào)找到數(shù)組索引號(hào),生成點(diǎn)節(jié)點(diǎn)的實(shí)例(即 VERTEX 實(shí)例)。 pPointCol=(IPointCollection)。 //依次獲得線元素的 STNODEID、 EDNODEID、 FID 三個(gè)字段的值 vLink1=new Link()。 RoadNode[indexP2].Neighbor=vLink1。 =RoadNode[indexP]。 vWork=。 vWork=。 =null。//Insert 函數(shù)按升序?qū)⒐?jié)點(diǎn) sTemp 插入鏈表 sOpen 中 while(!=nullamp。 while(vLink!=null)//遍歷節(jié)點(diǎn)的各個(gè)鄰接點(diǎn) { if(==0)//Searched 字段表名該鄰接點(diǎn)的搜索狀 態(tài),如果是 0,則表示該鄰接點(diǎn)從未被搜索過(guò) { =+。 } 內(nèi)蒙古科技大學(xué)畢業(yè)設(shè)計(jì) 說(shuō)明書(shū)(畢業(yè) 論文 ) 28 else if(==1)//Searched 如果為 1,則表示該鄰接點(diǎn)已經(jīng)搜索過(guò),但還沒(méi)有找到最短路徑 { if(+)//如果權(quán)值不是最小,則需要重新計(jì)算權(quán)值 { Delete(ref ,ref sOpen)。這一過(guò)程為單循環(huán),時(shí)間復(fù)雜度為 O( n)。 SearchLink 是純指針類,實(shí)例化的時(shí)候只占用很少的內(nèi)存開(kāi)銷,因此這種以空間換時(shí)間的方法能夠有效的提高算法執(zhí)行的效率。對(duì) 0A 碼測(cè)得的偽距稱為 UA 碼偽距,精度約為 20 米左右,對(duì) P 碼測(cè)得的偽距稱為 P 碼偽距,精度約為 2 米左右。 在 GPS 觀測(cè)量中包含了衛(wèi)星和接收機(jī)的鐘差、大氣傳播延遲、多路徑效應(yīng)等誤差,在定位計(jì)算時(shí)還要受到衛(wèi)星廣播星歷誤差 的影響,在進(jìn)行相對(duì)定位時(shí)大部分公共誤差被抵消或削弱,因此定位精度將大大提高,雙頻接收機(jī)可以根據(jù)兩個(gè)頻率的觀測(cè)量抵消大氣中電離層誤差的主要部分,在精度要求高,接收機(jī)間距離較遠(yuǎn)時(shí)(大氣有明顯差別),應(yīng)選用雙頻接收機(jī)。設(shè)定通信協(xié)議 ,即 HandShaking 屬性 。 (9600,n,8,1)。 //對(duì)異步 I/O 進(jìn)行設(shè)置 = MAXDWORD。 = 8。EV_RXCHAR == EV_RXCHAR) if(0) ReadFile(m_hCom,m_readbuf,amp。這些幀頭標(biāo)識(shí)了后續(xù)幀內(nèi)數(shù)據(jù)的組成結(jié)構(gòu),各幀均以回車符和換行符作為幀尾標(biāo)識(shí)一幀的結(jié)束。$39。A39。 break。//提取出小時(shí)并轉(zhuǎn)化為 24 小時(shí)制北京時(shí)間 3 字節(jié)為分鐘, 5 字節(jié)為秒,提取方法同上 ??
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1