版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
東北石油大學(xué)本科生課程設(shè)計(jì)PAGEII東北石油大學(xué)課程設(shè)計(jì)課課程管理軟件實(shí)習(xí)題目校園路線查詢系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)院系計(jì)算機(jī)與信息技術(shù)學(xué)院專業(yè)班級(jí)信息管理與信息系統(tǒng)08-1班2011年7目錄TOC\o"1-2"\h\z\u第1章概述 11.1WebGis的特點(diǎn) 13.2WebGis的發(fā)展 13.3WebGis的應(yīng)用 3第2章開發(fā)環(huán)境簡(jiǎn)介 42.1軟件開發(fā)環(huán)境 42.2系統(tǒng)使用的技術(shù) 4第3章系統(tǒng)設(shè)計(jì) 63.1數(shù)據(jù)庫(kù)結(jié)構(gòu) 63.2功能設(shè)計(jì) 63.3系統(tǒng)UML圖 7第4章系統(tǒng)實(shí)現(xiàn) 84.1系統(tǒng)主要功能 84.2程序代碼 9第5章系統(tǒng)測(cè)試 165.1測(cè)試內(nèi)容 165.2測(cè)試步驟 165.3測(cè)試目標(biāo) 165.4測(cè)試方針 17結(jié)論 18參考文獻(xiàn) 19東北石油大學(xué)本科生課程設(shè)計(jì)PAGE3第1章概述1.1WebGis的特點(diǎn)WebGIS可以簡(jiǎn)單定義為在Web上的GIS。當(dāng)前Internet/Intranet正在以驚人的速度迅速膨脹發(fā)展,在這樣的形勢(shì)下,如何將GIS引入Internet/Intranet世界,使GIS充分利用和發(fā)揮互聯(lián)網(wǎng)的優(yōu)勢(shì),就成為GIS發(fā)展研究的一個(gè)重要課題。與傳統(tǒng)的基于桌面或局域網(wǎng)的GIS相比,WebGIS具有以下的優(yōu)點(diǎn):更廣泛的訪問范圍:客戶可以同時(shí)訪問多個(gè)位于不同地方的服務(wù)器上的最新數(shù)據(jù),而這一Internet/Intranet所特有的優(yōu)勢(shì)大大方便了GIS的數(shù)據(jù)管理,使分布式的多數(shù)據(jù)源的數(shù)據(jù)管理和合成更易于實(shí)現(xiàn)[1]。平臺(tái)獨(dú)立性:無論服務(wù)器、客戶機(jī)是何種機(jī)器,無論WebGIS服務(wù)器端使用何種GIS軟件,由于使用了通用的Web瀏覽器,用戶就可以透明地訪問WebGIS數(shù)據(jù),在本機(jī)或某個(gè)服務(wù)器上進(jìn)行分布式部件的動(dòng)態(tài)組合和空間數(shù)據(jù)的協(xié)同處理與分析,實(shí)現(xiàn)遠(yuǎn)程異構(gòu)數(shù)據(jù)的共享??梢源笠?guī)模降低系統(tǒng)成本:普通GIS在每個(gè)客戶端都要配備昂貴的專業(yè)GIS軟件,而用戶使用的經(jīng)常只是一些最基本的功能,這實(shí)際上造成了極大的浪費(fèi)。WebGIS在客戶端通常只需使用Web瀏覽器(有時(shí)還要加一些插件),其軟件成本與全套專業(yè)GIS相比明顯要節(jié)省得多。另外,由于客戶端的簡(jiǎn)單性而節(jié)省的維護(hù)費(fèi)用也不容忽視。更簡(jiǎn)單的操作:要廣泛推廣GIS,使GIS系統(tǒng)為廣大的普通用戶所接受,而不僅僅局限于少數(shù)受過專業(yè)培訓(xùn)的專業(yè)用戶,就要降低對(duì)系統(tǒng)操作的要求。通用的Web瀏覽器無疑是降低操作復(fù)雜度的最好選擇。平衡高效的計(jì)算負(fù)載:傳統(tǒng)的GIS大都使用文件服務(wù)器結(jié)構(gòu)的處理方式,其處理能力完全依賴于客戶端,效率較低。而當(dāng)今一些高級(jí)的WebGIS能充分利用網(wǎng)絡(luò)資源,將基礎(chǔ)性、全局性的處理交由服務(wù)器執(zhí)行,而對(duì)數(shù)據(jù)量較小的簡(jiǎn)單操作則由客戶端直接完成。這種計(jì)算模式能靈活高效地尋求計(jì)算負(fù)荷和網(wǎng)絡(luò)流量負(fù)載在服務(wù)器端和客戶端的合理分配,是一種較理想的優(yōu)化模式。3.2WebGis的發(fā)展隨著計(jì)算機(jī)技術(shù)的發(fā)展及其在GIS中不斷的深入應(yīng)用,未來WebGIS的發(fā)展趨勢(shì)和發(fā)展方向?qū)?huì)如下:(1)基于.NET平臺(tái)的WebGIS系統(tǒng)模式。Microsoft公司基于軟件就是服務(wù)!理念在2001年提出的Microsoft.Net戰(zhàn)略計(jì)劃.NET框架是生成、部署和運(yùn)行Web服務(wù)及應(yīng)用程序的平臺(tái),其戰(zhàn)略核心是WebService。由于WebService是在代碼級(jí)上工作的,能夠被其它軟件調(diào)用,并與其它軟件交換數(shù)據(jù),最終形成一個(gè)能與用戶交互的應(yīng)用系統(tǒng)。因此基于WebService的GIS系統(tǒng)有望在更高層次上解決基于組件式GIS不能很好地解決的在大范圍內(nèi)GIS數(shù)據(jù)集成和共享這一GIS難題?;?Net平臺(tái)建立的WebGIS系統(tǒng)將不再關(guān)注單個(gè)的網(wǎng)站和與因特網(wǎng)連接的單個(gè)設(shè)備,而是讓所有的計(jì)算機(jī)群、相關(guān)設(shè)備和服務(wù)商協(xié)同工作提供更加廣泛和豐富的解決方案。通過Internet標(biāo)準(zhǔn)的服務(wù)描述協(xié)議WSDL、標(biāo)準(zhǔn)的服務(wù)調(diào)用協(xié)議SOAP和標(biāo)準(zhǔn)的數(shù)據(jù)描述語言XML建立的基于WebService的GIS系統(tǒng)可以解決WebGIS的分布式、互操作等目前的技術(shù)難點(diǎn)和運(yùn)行瓶頸,做到真正的信息共享,使目前以單個(gè)網(wǎng)站為中心信息孤島現(xiàn)象將不再存在。(2)動(dòng)態(tài)仿真、虛擬現(xiàn)實(shí)與WebGIS的結(jié)合。基于三庫(kù)(圖形、影像、DEM)一體化的實(shí)時(shí)3D可視化技術(shù)發(fā)展非常迅速,在PC機(jī)上已實(shí)現(xiàn)GIS環(huán)境下的三維建筑物室內(nèi)外漫游、信息查詢、空間分析、剖面分析等功能。隨著數(shù)字地球、數(shù)字中國(guó)、數(shù)字城市等相關(guān)工作的開展,目前基于二維的WebGIS顯然已不能滿足日益需求的3DGIS在Internet/Intranet上應(yīng)用。結(jié)合虛擬現(xiàn)實(shí)的可視化優(yōu)點(diǎn)和GIS的空間分析功能,運(yùn)用WWW上構(gòu)建虛擬現(xiàn)實(shí)環(huán)境的國(guó)際標(biāo)準(zhǔn)VRML(VirtualRealityModelingLanguage)及OpenGL編程等技術(shù)在Internet環(huán)境下實(shí)現(xiàn)虛擬3DGIS已成為國(guó)內(nèi)外研究的熱點(diǎn)。虛擬現(xiàn)實(shí)地理信息系統(tǒng)(VRGIS)主要是通過VRML轉(zhuǎn)換文件格式,把GIS信息轉(zhuǎn)到VR(虛擬現(xiàn)實(shí))中表示。它是一個(gè)在傳統(tǒng)的GIS數(shù)據(jù)基礎(chǔ)上,利用VR的制圖功能,采用VRML標(biāo)準(zhǔn)的GIS系統(tǒng)。把虛擬現(xiàn)實(shí)地理信息系統(tǒng)(VRGIS)應(yīng)用到互聯(lián)網(wǎng)上和WebGIS技術(shù)相結(jié)合實(shí)現(xiàn)WebVRGIS是地理信息系統(tǒng)發(fā)展的必然階段。(3)移動(dòng)通信技術(shù)與GIS的有機(jī)結(jié)合。隨著計(jì)算機(jī)通訊網(wǎng)絡(luò)(包括有線和無線網(wǎng))的發(fā)展,無線應(yīng)用協(xié)議WAP(WirelessApplicationProtocol)的完善與推廣,移動(dòng)通信技術(shù)將使WebGIS的應(yīng)用將得到進(jìn)一步延伸。未來的GIS用戶可以隨時(shí)方便地雙向互動(dòng)地獲取Internet通過無線網(wǎng)絡(luò)提供的地理信息服務(wù),使將來的地學(xué)信息是隨時(shí)隨地為任何人任何事情進(jìn)行4A服務(wù)(geoinformationforanyoneandanythingatanywhereandanytime)。(4)開放式地理信息系統(tǒng)。為了實(shí)現(xiàn)客戶端透明地訪問分布式數(shù)據(jù)以及無縫操作這些數(shù)據(jù),網(wǎng)絡(luò)地理信息系統(tǒng)就必須進(jìn)一步走向開放。隨著OpenGIS發(fā)展及以WebGIS和OpenGIS的相互結(jié)合,會(huì)使OpenGIS聯(lián)盟(OGC)得到更廣泛的支持,從而促進(jìn)開放式的GIS的發(fā)展,使GIS真正走向社會(huì)化、大眾化。(5)基于網(wǎng)格計(jì)算的新一代WebGIS。網(wǎng)格可以稱之為第三代因特網(wǎng)應(yīng)用,它是把整個(gè)因特網(wǎng)整合成一臺(tái)巨大的超級(jí)計(jì)算機(jī),實(shí)現(xiàn)各種資源的全面共享。網(wǎng)格計(jì)算是一種利用互聯(lián)網(wǎng)或?qū)S镁W(wǎng)絡(luò)把地理上分布的各種計(jì)算機(jī)、計(jì)算機(jī)集群、存儲(chǔ)系統(tǒng)和可視化系統(tǒng)等?;诰W(wǎng)格計(jì)算的GIS平臺(tái),能夠分布式、協(xié)作和智能化處理信息。網(wǎng)格計(jì)算已成為人們研究的熱點(diǎn),隨著應(yīng)用的深入,網(wǎng)絡(luò)計(jì)算必將會(huì)運(yùn)用到GIS中并和計(jì)算資源、空間地理數(shù)據(jù)和通信等集成,構(gòu)成一個(gè)較完整的空間信息服務(wù)系統(tǒng)[2]。3.3WebGis的應(yīng)用隨著近年來計(jì)算機(jī)技術(shù)的發(fā)展,WebGis技術(shù)逐步產(chǎn)生有以下應(yīng)用:(1)地理信息的空間分布式獲取。WebGIS可以在全球范圍內(nèi)通過各種手段獲取各種地理信息。將已存在的圖形數(shù)據(jù)語言通過數(shù)字化轉(zhuǎn)化為WebGIS的基礎(chǔ)數(shù)據(jù),使數(shù)據(jù)的共享和傳輸更加方便。(2)地理信息的空間查詢、檢索和聯(lián)機(jī)處理。利用瀏覽器的交互能力,WebGIS可以實(shí)現(xiàn)圖形及屬性數(shù)據(jù)的查詢檢索,并通過與瀏覽器的交互使不同地區(qū)的客戶端來操作這些數(shù)據(jù)。(3)空間模型的分析服務(wù)。在高性能的服務(wù)器端提供各種應(yīng)用模型的分析與方法,通過接收用戶提供的模型參數(shù),進(jìn)行快速的計(jì)算與分析,即時(shí)將計(jì)算結(jié)果以圖形或文字等方式返回至瀏覽器端。(4)互聯(lián)網(wǎng)上資源的共享。互聯(lián)網(wǎng)上大量的信息資源多數(shù)都具有空間分布的特征,利用WebGIS對(duì)這些信息進(jìn)行組織管理,為用戶提供基于空間分布的多種信息服務(wù),提高資源的利用率和共享程度[3]。PAGE19第2章開發(fā)環(huán)境簡(jiǎn)介2.1軟件開發(fā)環(huán)境軟件開發(fā)環(huán)境(SoftwareDevelopmentEnvironment,SDE)是指在基本硬件和宿至軟件的基礎(chǔ)上,為支持系統(tǒng)軟件和應(yīng)用軟件的工程化開發(fā)和維護(hù)而使用的一組軟件,簡(jiǎn)稱SDE。它由軟件工具和環(huán)境集成機(jī)制構(gòu)成,前者用以支持軟件開發(fā)的相關(guān)過程、活動(dòng)和任務(wù),后者為工具集成和軟件的開發(fā)、維護(hù)及管理提供統(tǒng)一的支持[4]。按照WebGis地理信息系統(tǒng)課程設(shè)計(jì)任務(wù)書要求,本校園路線查詢系統(tǒng)以WindowsXP系統(tǒng)為操作平臺(tái),選用SVGDeveloper作為繪圖工具,以AdobeDreamweaver為網(wǎng)頁頁面制作工具,用C#語言進(jìn)行編程,利用javascript腳本語言對(duì)網(wǎng)頁頁面進(jìn)行細(xì)節(jié)修改。本圖書館管理系統(tǒng)便是在上述開發(fā)環(huán)境下實(shí)現(xiàn)系統(tǒng)的各項(xiàng)功能,體現(xiàn)出了SVGDeveloper制圖工具、Dreamweaver開發(fā)工具和javascript腳本語言的完美結(jié)合。2.2系統(tǒng)使用的技術(shù)以系統(tǒng)的軟件開發(fā)環(huán)境為基礎(chǔ),主要應(yīng)用一下技術(shù):(1)SVGDeveloper技術(shù)。SVGDeveloper是一款功能強(qiáng)大的SVG編輯軟件,利用功能強(qiáng)大的繪制功能,你可以繪制諸如圓形、矩形、星形等基本形狀,也可以繪制文本、圖像和自由曲線等復(fù)雜圖形。同時(shí),SVGDeveloper還提供了其他一些高級(jí)功能使得你更加容易的創(chuàng)建和管理SVG程序。強(qiáng)大的代碼編輯器,集成了語法著色和智能語法提示功能,使得你可以編寫復(fù)雜的腳本程序,從而和創(chuàng)建更加復(fù)雜的SVG應(yīng)用。它可繪制各種高質(zhì)量的SVG矢量圖形,提供包括矩形、橢圓、圓、直線、折線、多邊形等在內(nèi)的基本形狀構(gòu)造。(2)Dreamweaver開發(fā)工具的使用技術(shù)。AdobeDreamweaver是一個(gè)全面的專業(yè)工具集,可用于設(shè)計(jì)并部署極具吸引力的網(wǎng)站和web應(yīng)用程序,并提供強(qiáng)大的編碼環(huán)境以及功能強(qiáng)大且基于標(biāo)準(zhǔn)的WYSIWYG設(shè)計(jì)表面。Dreamweaver是個(gè)原本由Macromedia公司所開發(fā)的著名網(wǎng)站開發(fā)工具。它使用所見即所得的接口,亦有HTML編輯的功能。它現(xiàn)在有Mac和Windows系統(tǒng)的版本。隨Macromedia被Adobe收購(gòu)后,Adobe也開始計(jì)劃開發(fā)Linux版本的Dreamweaver。它自MX版本開始,使用了Opera的排版引擎"Presto"作為網(wǎng)頁預(yù)覽。本軟件具有制作效率高、網(wǎng)站管理能力強(qiáng)、控制能力強(qiáng)等優(yōu)點(diǎn)。(3)javascript腳本語言應(yīng)用技術(shù)。JavaScript是一種基于對(duì)象和事件驅(qū)動(dòng)并具有相對(duì)安全性的客戶端腳本語言。同時(shí)也是一種廣泛用于客戶端Web開發(fā)的腳本語言,常用來給HTML網(wǎng)頁添加動(dòng)態(tài)功能,比如響應(yīng)用戶的各種操作。它最初由網(wǎng)景公司的BrendanEich設(shè)計(jì),是一種動(dòng)態(tài)、弱類型、基于原型的語言,內(nèi)置支持類。JavaScript是Sun公司的注冊(cè)商標(biāo)。Ecma國(guó)際以JavaScript為基礎(chǔ)制定了ECMAScript標(biāo)準(zhǔn)。JavaScript也可以用于其他場(chǎng)合,如服務(wù)器端編程。完整的JavaScript實(shí)現(xiàn)包含三個(gè)部分:ECMAScript,文檔對(duì)象模型,字節(jié)順序記號(hào)。javascript是一種由Netscape的LiveScript發(fā)展而來的原型化繼承的面向?qū)ο蟮膭?dòng)態(tài)類型的區(qū)分大小寫的客戶端腳本語言,主要目的是為了解決服務(wù)器端語言,比如Perl,遺留的速度問題,為客戶提供更流暢的瀏覽效果。當(dāng)時(shí)服務(wù)端需要對(duì)數(shù)據(jù)進(jìn)行驗(yàn)證,由于網(wǎng)絡(luò)速度相當(dāng)緩慢,只有28.8kbps,驗(yàn)證步驟浪費(fèi)的時(shí)間太多。于是Netscape的瀏覽器Navigator加入了Javascript,提供了數(shù)據(jù)驗(yàn)證的基本功能。
第3章系統(tǒng)設(shè)計(jì)3.1數(shù)據(jù)庫(kù)結(jié)構(gòu)通過對(duì)系統(tǒng)功能模塊和系統(tǒng)構(gòu)架的分析研究可知,系統(tǒng)要實(shí)現(xiàn)查詢路線功能所需要的數(shù)據(jù)應(yīng)包括地圖中的地點(diǎn)站名、地點(diǎn)編號(hào)ID、地點(diǎn)經(jīng)緯度、鄰街站等數(shù)據(jù)元素。因此系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)如下:表3-1系統(tǒng)數(shù)據(jù)庫(kù)序號(hào)字段名數(shù)據(jù)類型數(shù)據(jù)長(zhǎng)度NULLPrimarykey描述1IDint4NY地點(diǎn)編號(hào)2站名string20NN地點(diǎn)站名3經(jīng)度decimal8NN縱向位置4緯度decimal8NN橫向位置5鄰街站string20NN相鄰站名3.2功能設(shè)計(jì)根據(jù)系統(tǒng)的功能分析得到系統(tǒng)的功能模塊圖如下:校園路線查詢系統(tǒng)校園路線查詢系統(tǒng)路線查詢模塊細(xì)節(jié)顯示模塊圖層控制模塊地圖縮放模塊路線查詢模塊細(xì)節(jié)顯示模塊圖層控制模塊地圖縮放模塊圖3-2系統(tǒng)功能模塊圖以上是本校園路線查詢系統(tǒng)的基本功能。3.3系統(tǒng)UML圖根據(jù)系統(tǒng)的功能設(shè)計(jì),系統(tǒng)UML用例圖如下:路線查詢路線查詢地圖縮放地圖縮放圖層控制圖層控制詳細(xì)顯示詳細(xì)顯示圖3-3管理員用例圖第4章系統(tǒng)實(shí)現(xiàn)4.1系統(tǒng)主要功能經(jīng)過全方位的分析和設(shè)計(jì),本系統(tǒng)主要擁有校園路線查詢、地圖縮放功能,圖層控制功能以及詳細(xì)信息顯示功能。校園路線查詢功能:打開系統(tǒng)頁面,可以看見頁面上現(xiàn)實(shí)的所有站點(diǎn),在頁面的輸入框中輸入要查詢的起點(diǎn)和終點(diǎn),便可查詢到地圖中的任何兩個(gè)站點(diǎn)之間的路線,點(diǎn)擊查詢按鈕,輸入的兩個(gè)站點(diǎn)間的路線會(huì)清晰地顯示在頁面的文本框中。地圖縮放功能:點(diǎn)擊地圖的大小縮放功能控制按鈕,然后點(diǎn)擊圖片??煞糯蟮貓D的尺寸,也可所有地圖的大小,點(diǎn)擊縮放按鈕后,也可在圖中框選需要縮放的范圍進(jìn)行放大或縮小。點(diǎn)擊還原按鈕,可將地圖大小還原為系統(tǒng)默認(rèn)初始大小。圖層控制功能:本系統(tǒng)地圖共分為四個(gè)圖層,分別為站點(diǎn)名稱圖層,用文本框表示;站點(diǎn)標(biāo)記圖層,用小圓圈表示;行車路線圖層,由網(wǎng)狀線條組成;建筑物圖層,由類似圖表示。系統(tǒng)運(yùn)行后,分別點(diǎn)擊各個(gè)圖層的復(fù)選框,便可顯示或隱藏任意圖層。使地圖顯示更加明朗。詳細(xì)信息顯示功能:點(diǎn)擊地圖系統(tǒng)上的任意一個(gè)地點(diǎn),便可顯示出此地點(diǎn)的相關(guān)詳細(xì)信息。如圖所示:圖4-1校園路線查詢系統(tǒng)4.2程序代碼系統(tǒng)頁面代碼如下:<?xmlversion="1.0"standalone="no"?><!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.1plusMathML2.0plusSVG1.1//EN""/2002/04/xhtml-math-svg/xhtml-math-svg.dtd"><htmlxmlns="/1999/xhtml"xml:lang="en"><head><title>東油校車路線圖</title><scripttype="text/javascript">varxmlDoc=newActiveXObject("Microsoft.XMLDOM");xmlDoc.async="false";xmlDoc.load("stations.xml");nodes=xmlDoc.documentElement.childNodes; <!--搜索按鈕響應(yīng)函數(shù)-->functionsearch(){for(i=0;i<=nodes.length;i++) { try { if((nodes.item(i).nodeType)==1) { textfield.innerText=textfield.innerText+nodes.item(i).childNodes[0].text+">"+"\r\n"; <!--document.write("<br/>");--> } }catch(e){} }} <!--求距離函數(shù)-->functiondistance(x1,x2,y1,y2){vardx=x2-x1;vardy=y2-y1;returnMath.sqrt(dx*dx+dy*dy); }<!--通過數(shù)組建立鄰接矩陣-->functioncreate_graph(){ if(form1.from.value.length==0){ alert("請(qǐng)輸入起點(diǎn)!"); form1.from.focus(); returnfalse; } elseif(form1.to.value.length==0){ alert("請(qǐng)輸入終點(diǎn)!"); form1.to.focus(); returnfalse; } varaa=newArray();//定義一維數(shù)組 for(m=0;m<nodes.length-1;m++) { aa[m]=newArray();//將每一個(gè)子元素又定義為數(shù)組 for(n=0;n<nodes.length-1;n++) { aa[m][n]=m+n;//此時(shí)aa[k][n]可以看作是一個(gè)二級(jí)數(shù)組 } } <!--初始化數(shù)組--> for(vari=1;i<=nodes.length-1;i++) for(varj=1;j<=nodes.length-1;j++) aa[i-1][j-1]=10000 //接下來這個(gè)for的i控制二維數(shù)組的行 for(vari=1;i<=nodes.length-1;i++){ varx=nodes.item(i).childNodes[4].text; vart=nodes.item(i).childNodes[2].text; vark=nodes.item(i).childNodes[3].text; varg=null; varf=null; //if(i==1) //alert(g); //該if語句用來判斷每個(gè)地鐵節(jié)點(diǎn)中有幾個(gè)鄰接站 if(nodes.item(i).childNodes.length==7) { varg=nodes.item(i).childNodes[6].text; varf=nodes.item(i).childNodes[5].text; //alert(111) //alert(g) //alert(f) //alert(x) } elseif(nodes.item(i).childNodes.length==6) { varf=nodes.item(i).childNodes[5].text; } if(g){ for(varj=1;j<=nodes.length-1;j++) { vary=nodes.item(j).childNodes[0].text; varq=nodes.item(j).childNodes[2].text; varp=nodes.item(j).childNodes[3].text; if(y==g) {//if(i==2) //alert("g:"+nodes.item(j).text); aa[i-1][j-1]=distance(parseInt(t), parseInt(q), parseInt(k), parseInt(p) ); aa[j-1][i-1]=aa[i-1][j-1]; } } } if(f) { for(varj=1;j<=nodes.length-1;j++) { vary=nodes.item(j).childNodes[0].text; varq=nodes.item(j).childNodes[2].text; varp=nodes.item(j).childNodes[3].text; if(y==f) {if(i==2) // alert("f:"+nodes.item(j).text); aa[i-1][j-1]=distance(parseInt(t), parseInt(q), parseInt(k), parseInt(p) ); aa[j-1][i-1]=aa[i-1][j-1]; } }//如果鄰接站有2個(gè),需要并列兩個(gè)for,這個(gè)第1個(gè)for}if(x) { for(varj=1;j<=nodes.length-1;++j) { vary=nodes.item(j).childNodes[0].text; varq=nodes.item(j).childNodes[2].text; varp=nodes.item(j).childNodes[3].text; if(y==x) {//if(i==2)// alert(nodes.item(j).text); aa[i-1][j-1]=distance(parseInt(t), parseInt(q), parseInt(k), parseInt(p) ); aa[j-1][i-1]=aa[i-1][j-1]; } }//如果鄰接站只有1個(gè),需要1個(gè)for,這是唯一的for }}//for1 // varv=parseInt(nodes.item(10).childNodes[1].text); // varend=parseInt(nodes.item(20).childNodes[1].text);//functiontext1()//{//varx=document.getElementsByName("start")[0];//returnx//}//functiontext2()//{//vary=document.getElementsByName("end")[0];//returny//} //document.form.t1.value //alert(document.form1.start.value) for(varu=1;u<nodes.length;u++) { if(nodes.item(u).childNodes[0].text==document.form1.start.value) { varv=parseInt(nodes.item(u).childNodes[1].text) //alert(v) } elseif(nodes.item(u).childNodes[0].text==document.form1.end.value) { varend=parseInt(nodes.item(u).childNodes[1].text) //alert(end) } } if(v==null||end==null){ alert("請(qǐng)輸入正確的起點(diǎn)和終點(diǎn)!"); returnfalse; form1.from.focus(); } varn=nodes.length-1; vardist=newArray(nodes.length-1);varprev=newArray(nodes.length-1);//if(v<0||v>n-1)return; vars=newArray(n+1);//初始化for(vari=1;i<=n;i++){dist[i]=aa[v][i];s[i]=false;if(dist[i]==10000){prev[i]=0;}else{prev[i]=v;}}dist[v]=0;s[v]=true;for(vari=1;i<n;i++){vartemp=10000;varu=v;for(varj=1;j<=n;j++){if((!s[j])&&(dist[j]<temp)){u=j;temp=dist[j];}}s[u]=true;//找到了第一個(gè)并入S的節(jié)點(diǎn)for(varj=1;j<=n;j++){if((!s[j])&&(aa[u][j]<10000)){varnewdist=dist[u]+aa[u][j];if(newdist<dist[j]){dist[j]=newdist;prev[j]=u;}}}} varpath=newArray() path[0]=end varm=1; vari=end while(prev[i]!=v) { path[m++]=prev[i]; i=prev[i]; } path[m]=v; varanswer=newArray(m) varpathpoint=""; for(i=0;i<m+1;i++) { answer[i]=path[m-i]; } for(i=0;i<m;i++) pathpoint=pathpoint+nodes.item(answer[i]+1).childNodes[0].text+"->" pathpoint=pathpoint+nodes.item(answer[m]+1).childNodes[0].text textfield.innerText=pathpoint }</script><styletype="text/css"><!--#Layer1{ position:absolute; width:800px; height:605px; z-index:1; left:248px; top:182px;}--></style></head><body><h1><imgsrc="標(biāo)題.png"alt=""width="1038"height="189"/></h1><h1>請(qǐng)輸入查詢路線</h1><formname="form1"><spanclass="from">從:<inputtype="text"id="start"name="from"/><br/>到:<inputtype="text"id="end"name="to"/></span></form> <inputtype="button"id="search"value="查詢"style="font-family":宋體;value="15"onclick="create_graph()"><divalign="left"><p>路線:<br><textareaid="textfield"cols="30"rows="8"></textarea></p></div><divid="Layer1"><p> </p><p><iframealign="left"id="frame"src="XSLOutput.svg"width="800"height="550"frameborder="1"></iframe></p></div><p><imgsrc="圖書館.jpg"alt=""width="237"height="180"/></p></body></html>
第5章系統(tǒng)測(cè)試5.1測(cè)試內(nèi)容系統(tǒng)測(cè)試的目的是驗(yàn)證最終軟件系統(tǒng)滿足用戶的需求。主要內(nèi)容包括:(1)功能測(cè)試。即測(cè)試軟件系統(tǒng)的功能是否正確,其依據(jù)是需求文檔。由于正確性是軟件最重要的質(zhì)量因素,所以功能測(cè)試必不可少。(2)健壯性測(cè)試。即測(cè)試軟件系統(tǒng)在異常情況下能否正常運(yùn)行的能力。健壯性有兩層含義:一是容錯(cuò)能力,二是恢復(fù)能力。(3)性能測(cè)試。即測(cè)試軟件系統(tǒng)處
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 三年級(jí)體育上冊(cè) 蹲距式跳遠(yuǎn)的單跳雙落動(dòng)作(1)教案
- 六年級(jí)信息技術(shù)下冊(cè) 第2課 世界之最教案2 浙江攝影版
- 2024-2025學(xué)年新教材高中政治 第三單元 全面依法治國(guó) 8.1 法治國(guó)家(2)教案 部編版必修3
- 機(jī)械仿生設(shè)計(jì)課程設(shè)計(jì)
- 2015年內(nèi)蒙古呼和浩特市中考真題語文試題(解析版)
- 醫(yī)療科研項(xiàng)目管理制度優(yōu)化
- 機(jī)械cad cam技術(shù)課程設(shè)計(jì)
- 機(jī)床的課程設(shè)計(jì)
- 機(jī)床方刀架的課程設(shè)計(jì)
- 機(jī)床家具課程設(shè)計(jì)
- 幼兒園清算審計(jì)報(bào)告
- 常見土源性寄生蟲演示文稿
- itop運(yùn)維綜合管理平臺(tái)使用手冊(cè)要點(diǎn)
- 河北張家口市商業(yè)銀行2023年微貸客戶經(jīng)理招聘(60人)考試參考題庫(kù)含答案詳解
- 了解學(xué)前兒童科學(xué)領(lǐng)域核心經(jīng)驗(yàn)
- 養(yǎng)老機(jī)構(gòu)人力資源管理-養(yǎng)老院人力資源規(guī)劃
- 健康課大班《良好的坐姿》教案7
- 幼兒園師德師風(fēng)考核表實(shí)用文檔
- 2023年職業(yè)技能-外匯業(yè)務(wù)考試歷年真題甄選版帶答案-1
- 社會(huì)體育指導(dǎo)員培訓(xùn)
- 概率論與數(shù)理統(tǒng)計(jì)(天津大學(xué))知到章節(jié)答案智慧樹2023年
評(píng)論
0/150
提交評(píng)論