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

正文內(nèi)容

基于gis的市政設(shè)施管理計(jì)算機(jī)畢業(yè)論文(編輯修改稿)

2025-07-20 16:05 本頁面
 

【文章內(nèi)容簡介】 顯示查找結(jié)果和地圖標(biāo)記信息;下方是鷹眼地圖顯示窗口。右側(cè)為查詢和數(shù)據(jù)修改功能欄,可以進(jìn)行查找和數(shù)據(jù)修改操作。中間空白處即為主地圖顯示窗口,顯示所選擇地圖的相關(guān)圖層。最右側(cè)的一列小按鈕是地圖操作按鈕,可以進(jìn)行點(diǎn)選擇,矩形選擇,多邊形選擇操作和距離,面積量算。 功能模塊設(shè)計(jì) 電子地圖控制子系統(tǒng)功能模塊設(shè)計(jì)電子地圖控制子系統(tǒng)主要包括地圖放大,地圖縮小,地圖漫游三個(gè)功能模塊。(1)地圖放大功能模塊。此功能實(shí)現(xiàn)了地圖的放大顯示,方便用戶的查詢和查看。點(diǎn)擊一次放大2倍,放大倍數(shù)同界面地圖顯示主窗口右上方的地圖倍數(shù)選擇快捷鍵相對(duì)應(yīng),地圖載入時(shí)初始狀態(tài)為原始比例。在進(jìn)行快捷鍵實(shí)現(xiàn)放大和縮小功能前需設(shè)定屏幕中心點(diǎn),以便在放大后保證地圖的顯示中心不變,具體語句如下: pt。 //設(shè)定中心點(diǎn)pt = 。放大為 200%(放大其他倍數(shù)方法同放大為 2 倍, )時(shí)具體實(shí)現(xiàn)如下::if((_map)MAX_SCALE)return。 //達(dá)到最大倍數(shù)時(shí)不能繼續(xù)放大 rect。rect= ()。double dScale=(_map)。double dScale=(_map,rect)。double dWidth= 。double dHeight= 。if((null==rect) || (dWidth) || (dHeight) || (dScaleMAX_SCALE)){ pt= (,)。 //放大的中心點(diǎn)是鼠標(biāo)點(diǎn)擊地圖的位置 r= 。 ()。 //放大倍數(shù)設(shè)置為2倍 (( .X ),( .Y ))。 =r。}else{ =rect。}ReLableLayers()。 //重新進(jìn)行注記ReShowLayers()。 //依據(jù)比例尺控制各圖層的顯示狀態(tài) = 。快捷選擇方式控制地圖顯示倍數(shù)的語句如下: rect。 rect = 。()。 //設(shè)定放大的倍數(shù) = rect。(,)。放大功能語句執(zhí)行后需重新標(biāo)記顯示的地圖的圖層,通過方法ReLabelLayers()。然后再通過 ReShowLayers()在地圖顯示主窗口中顯示。(2)地圖縮小功能模塊。此功能實(shí)現(xiàn)了地圖的縮小顯示,方便用戶的查詢和查看。點(diǎn)擊一次縮小 1/2 倍,縮小倍數(shù)同界面地圖顯示主窗口右上方的地圖倍數(shù)選擇快捷鍵相對(duì)應(yīng),地圖載入時(shí)初始狀態(tài)為原始比例,不能執(zhí)行縮小功能。在進(jìn)行快捷鍵實(shí)現(xiàn)放大和縮小功能前需設(shè)定屏幕中心點(diǎn),以便在放大后保證地圖的顯示中心不變。執(zhí)行縮小功能的語句和上面執(zhí)行放大功能的語句相同,只需修改判斷語句:if((_map)MAX_SCALE)為 if((_map)MIN_SCALE)和倍數(shù)參數(shù)設(shè)置語句 ()為 ()即可。(3)地圖漫游功能模塊。此功能實(shí)現(xiàn)了地圖的拖動(dòng)顯示,方便用戶的查詢和查看。具體實(shí)現(xiàn)語句可以直接調(diào)用 MO 的方法:case : ()。 =; 電子地圖顯示子系統(tǒng)功能模塊設(shè)計(jì)電子地圖顯示子系統(tǒng)主要包括電子地圖鷹眼顯示,地圖標(biāo)記和清除標(biāo)記三個(gè)功能模塊。(1)地圖鷹眼顯示功能模塊。此功能主要為用戶提供主窗口地圖在某倍數(shù)下窗口范圍在地圖上的地理位置,可以方便的看到窗口范圍顯示的地圖部分在全圖中的方位。主窗口地圖顯示的倍數(shù)越大,鷹眼窗口中顯示窗口地圖范圍的矩形框就越小,反之則越大,鷹眼地圖適中以全圖顯示,地圖倍數(shù)不會(huì)發(fā)生變化,也不允許用戶更改。鷹眼地圖圖層的加入通過LoadLayersForEagleEye(){ = ([i].szFileName)。 (layer)。來實(shí)現(xiàn)(上面是功能實(shí)現(xiàn)的主要語句,一些判斷語句省略)。(2)地圖標(biāo)記功能模塊。此功能主要是為了方便用戶更快的找到所需查找的信息,在點(diǎn)擊結(jié)果列表中的部件或事件時(shí),左側(cè)的操作面板中的屬性框會(huì)顯示其屬性,而主窗口地圖則會(huì)移動(dòng)以部件或事件地理位置為中心點(diǎn)顯示,并且在動(dòng)態(tài)層上用一個(gè)紅色圓圈標(biāo)記出地理位置,直到用戶清除標(biāo)記或重啟系統(tǒng)為止。(3)清除標(biāo)記功能模塊。這個(gè)功能與地圖標(biāo)記功能相對(duì),當(dāng)用戶使用此功能時(shí),標(biāo)記在動(dòng)態(tài)層上的所有標(biāo)記都被清除。 電子地圖輸出子系統(tǒng)功能模塊設(shè)計(jì)電子地圖輸出子系統(tǒng)主要是方便用戶以文件形式保存地圖信息,通過 MO 中的 Print 方法設(shè)置參數(shù)即可實(shí)現(xiàn):([].szName,true) 查詢子系統(tǒng)功能模塊設(shè)計(jì)查詢子系統(tǒng)的查詢方式主要為兩種:通過大小類別查詢和通過地理位置查詢。此項(xiàng)功能和市政數(shù)據(jù)庫相聯(lián)系,首先介紹一下數(shù)據(jù)庫和系統(tǒng)的連接。通過以下語句保證數(shù)據(jù)庫和軟件相鏈接,SqlConnection Conn = new SqlConnection(Integrated Security=SSPI。Persist Security Info=False。User ID=sa。Initial Catalog=bisheEND。Data Source=wubin。 Workstation ID=WORKGROUP)。(1)通過大小類方式查詢模塊。這種查詢方式是為了方便查找同種類別的設(shè)施部件或事件,listBox1 即為結(jié)果列表。=[Objlist]。=[Objlist].Columns[Name].ToString()。=[Objlist].Columns[Code].ToString()。如果顯示的是事件則 dso 修改為 dse。(2)通過地理位置方式查詢模塊。這種查詢方式是為了方便用戶查詢某個(gè)地理位置上或其附近的設(shè)施部件或事件的情況,查詢實(shí)現(xiàn)利用數(shù)據(jù)庫的 select語句。具體實(shí)現(xiàn)的關(guān)鍵語句如下:xaxis=()。yaxis=()。=SELECT Code, Name , DeptNameID, GBCode, Pos, ObjState, ObjUseState,BeginTime, EndTime, MapScale, Memo,xaxis,yaxis FROM CityObj where sqrt((xaxis(+()+))*(xaxis(+()+))+(yaxis(+()+))*(yaxis(+()+)))=+()。其中 textBox3 和 textBox4 是設(shè)施部件或事件的坐標(biāo)屬性值,textBox5 的值是用戶輸入的查找距離值。根據(jù)輸入的查找距離值由 select 語句在結(jié)果列表中輸出查找結(jié)果。通過以上兩種查找方式查找的結(jié)果通過結(jié)果列表顯示出來,單擊其中一個(gè)結(jié)果,其屬性就會(huì)在左側(cè)的操作面板的屬性框中顯示出來,并且在地圖上顯示出此查找結(jié)果的地理位置以紅色圓圈標(biāo)記提示用戶。實(shí)現(xiàn)主要語句如下:listBox1_SelectedValueChanged(object sender, e){=[Objlist].Rows[].ItemArray[0].ToString().Substring(0,6)。=[Objlist].Rows[].ItemArray[1].ToString()。}花括號(hào)中的語句是比較有代表性的兩個(gè)語句,其他類似的語句省略。 數(shù)據(jù)修改子系統(tǒng)功能模塊設(shè)計(jì)數(shù)據(jù)修改子系統(tǒng)的主要有三個(gè)功能模塊,這三個(gè)功能實(shí)現(xiàn)用戶對(duì)數(shù)據(jù)的維護(hù)更新,保證數(shù)據(jù)的時(shí)效性,這三個(gè)功能也是要求最穩(wěn)定的功能,不能使不符合規(guī)定格式的數(shù)據(jù)輸入,也不能對(duì)數(shù)據(jù)操作錯(cuò)誤不做出提示。因此在本子系統(tǒng)中多次使用了消息對(duì)話框,對(duì)用戶的操作做出提示或警告。(1)數(shù)據(jù)添加功能模塊。首先選擇需要添加的大小類別,然后系統(tǒng)自動(dòng)根據(jù)用戶選擇的類別判斷是市政事件還是市政部件,并根據(jù)類別判斷顯示出不同的屬性填寫選擇,區(qū)別如下圖 ,圖 所示。圖 市政事件屬性圖 市政設(shè)施部件屬性根據(jù)系統(tǒng)判斷的部件或者事件,添加功能將數(shù)據(jù)分別添加進(jìn)部件數(shù)據(jù)庫CityObj 或事件數(shù)據(jù)庫 CityEvent,具體實(shí)現(xiàn)語句如下(部分):=SELECT * FROM CityObj where Code=39。+++++39。DataRow NewDrow=[Objlist].NewRow()。NewDrow[0]=+++ 。NewDrow[1]=。[Objlist].(NewDrow)。并且在程序中有個(gè)判斷語句可以判斷是否重復(fù)輸入,如果重復(fù)輸入某部件則彈出提示:(已存在此部件! )。(2)數(shù)據(jù)修改功能模塊。數(shù)據(jù)修改功能配合查找功能模塊使用,當(dāng)需要修改某項(xiàng)數(shù)據(jù)時(shí),先查找到該數(shù)據(jù)然后在文本框中輸入新數(shù)據(jù)點(diǎn)擊修改按鈕即可修改此項(xiàng)數(shù)據(jù)。以下是數(shù)據(jù)庫操作的典型代碼示例:DataRow Updrow1=[Objlist].Rows[]。()。Updrow1[1]=。()。同樣,為了防止數(shù)據(jù)修改錯(cuò)誤,系統(tǒng)嚴(yán)格規(guī)定了數(shù)據(jù)的格式,在數(shù)據(jù)庫出現(xiàn)異常時(shí)將會(huì)以消息框的形式給出警告。catch(Exception ee) {(修改部件出錯(cuò)了!+())。}在程序中多次使用 trycatch 給程序出錯(cuò)提示帶來很大的方便。(3)數(shù)據(jù)刪除功能模塊。數(shù)據(jù)刪除比較簡單,只需定位到所需刪除的項(xiàng)執(zhí)行刪除語句即可。為了保證刪除數(shù)據(jù)后可以恢復(fù),可以在表中加一個(gè)輔助列,值類型為 INT,值為 0,1,2,值的大小和需要保護(hù)的數(shù)據(jù)項(xiàng)數(shù)目 n 有關(guān),可以在系統(tǒng)中設(shè)定,當(dāng)執(zhí)行刪除功能時(shí),表中所有不為零的項(xiàng)的輔助列全部加 1,當(dāng)輔助列的數(shù)值大于 n 時(shí),執(zhí)行刪除語句,否則不刪除這些項(xiàng),僅僅為需要?jiǎng)h除的輔助列數(shù)值加 1。執(zhí)行查找時(shí),只顯示輔助列為 0 的數(shù)據(jù)項(xiàng)。刪除功能的主要語句示例為:DataRow Updrow1=[Objlist].Rows[]。()。 幫助子系統(tǒng)功能模塊設(shè)計(jì)幫助子系統(tǒng)主要為用戶提供使用本系統(tǒng)過程中遇到問題的幫助,有兩個(gè)幫助選擇:單機(jī)文檔幫助和聯(lián)機(jī)幫助。單機(jī)文檔幫助僅彈出一個(gè)對(duì)話框,包括一些使用須知,常見問題的解釋等等;聯(lián)機(jī)幫助為一個(gè)網(wǎng)頁鏈接,定向到一個(gè)網(wǎng)頁,此網(wǎng)頁包括一些問題的解決方案并提供留言功能。 其他功能模塊設(shè)計(jì)—系統(tǒng)維護(hù)功能模塊這個(gè)部分主要是系統(tǒng)維護(hù)模塊,在系統(tǒng)維護(hù)功能中,提供大類別和小類別的部件和事件維護(hù),共 4 個(gè)小模塊。4 個(gè)小模塊的功能相似,分別具有新建,修改,刪除 3 個(gè)功能。新建,修改和刪除功能的數(shù)據(jù)庫操作具體語句為:新建:string insertCmd =insert into ObjLevel1(ObjClass1Code,ObjClass1Name) values(39。+ +39。,39。+ +39。)。SqlCommand myCommand=new SqlCommand (insertCmd,Conn)。修改:string updateCmd=UPDATE EventLevel1 SET Event1Code=@Cd,Event1Name=@Nm where Event1Code=@dw。SqlCommand myCommand=new SqlCommand (updateCmd,Conn)。刪除:string deleteCmd=DELETE from EventLevel1 where Event1Code=@Cd。SqlCommand myCommand=new SqlCommand (deleteCmd,Conn)。為了保證數(shù)據(jù)的安全性,同樣可以采取同 中刪除功能類似的方法來實(shí)現(xiàn)刪除恢復(fù)。另外在這七個(gè)子系統(tǒng)之外,為了方便用戶使用,設(shè)置了很多人性化的功能,譬如在地圖坐標(biāo)方面使用鼠標(biāo)動(dòng)態(tài)指示,提示地圖上物體信息,在部件代碼輸入上提示地區(qū)代碼等。5 系統(tǒng)程序調(diào)試與試運(yùn)行情況系統(tǒng)經(jīng)過調(diào)試發(fā)現(xiàn)主要有兩大問題:首先是和數(shù)據(jù)庫相關(guān)的操作,由于數(shù)據(jù)庫中表的數(shù)量比較多,因此在進(jìn)行數(shù)據(jù)更新的時(shí)候必須指定具體的表名和具體的某一項(xiàng),否則容易出錯(cuò)而且會(huì)破壞表中的數(shù)據(jù)。另外因?yàn)橄吕斜碇械南吕x項(xiàng)和數(shù)據(jù)庫的數(shù)據(jù)相關(guān)聯(lián),因此每次數(shù)據(jù)更新完畢必須刷新數(shù)據(jù)庫并刷新相關(guān)的各下拉框和樹形結(jié)構(gòu)等,避免出現(xiàn)數(shù)據(jù)庫中數(shù)據(jù)不存在而下拉框中的數(shù)據(jù)項(xiàng)仍然存在的情況。其次是地圖顯示方面的問題,GIS 作為專業(yè)性比較強(qiáng)的系統(tǒng),各個(gè)開發(fā)工具各不相同,而且 GIS 地圖數(shù)據(jù)的非共享性使本系統(tǒng)在地圖顯示模塊上出現(xiàn)較大問題不能得到及時(shí)的解決。參考《地理信息系統(tǒng)二次開發(fā)實(shí)例教程—C和 MapObjects 實(shí)現(xiàn)》書中實(shí)例后,發(fā)現(xiàn)其實(shí)例存在同樣的問題。因此,本系統(tǒng)中的地圖顯示部分由 JPEG 格式的圖像文件模擬出來,來代替不能實(shí)現(xiàn)的 shp 格式地圖文件。系統(tǒng)修改后的主界面如下:圖 系統(tǒng)(模擬地圖)主界面程序試運(yùn)行正常,實(shí)現(xiàn)了各個(gè)功能:地圖控制選項(xiàng)中可以通過選擇模擬的地圖來選擇不同的地圖,如下圖 所示。圖 地圖控制選項(xiàng)菜單的第二項(xiàng)為數(shù)據(jù)更新操作,通過此選項(xiàng)可以實(shí)現(xiàn)對(duì)市政設(shè)施部件和事件的新建,修改,刪除操作。如下圖 所示。圖 數(shù)據(jù)庫選項(xiàng)數(shù)據(jù)更新后會(huì)彈出相關(guān)的提示消息框,提示數(shù)據(jù)更新成功或者失敗,若失敗將錯(cuò)誤信息反饋。選擇新建按鈕,屬性文本框清空,然后輸入要新建信息,然后點(diǎn)擊保存按鈕,如果存在相同部件則提示,否則新建成功。新建某一部件,流水代碼誤輸入,與已存在某部件重復(fù),則提示如圖 所示。圖 新建數(shù)據(jù)屬性信息重復(fù)新建某一部件,名稱為 ceshi,不存在重復(fù)信息,添加成功則提示如圖 所示。圖 新建數(shù)據(jù)成功在結(jié)果列表中,名為 ceshi 的部件成功添加進(jìn)數(shù)據(jù)庫自動(dòng)刷新顯示如圖 所示。圖 添加成功后的結(jié)果列表同樣進(jìn)行修改操作時(shí),如果屬性設(shè)置不正確,將提示修改失敗,這樣保證了在誤輸入的情況下數(shù)據(jù)庫內(nèi)數(shù)據(jù)的正確性。測試與測試新建功能類似,此處省略,如圖 所示。圖
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1