吳會(huì)友
(宏盛建業(yè)投資集團(tuán)有限公司)
隨著電子計(jì)算機(jī)的不斷普及,公路工程的施工計(jì)算、測(cè)量計(jì)算、平差計(jì)算、造價(jià)計(jì)算、設(shè)計(jì)出圖、工程計(jì)量以及業(yè)主、監(jiān)理、施工單位的管理電算化程度也得到了前所未有的提高,公路行業(yè)軟件在各層次的管理部門(mén)中也得到了普遍的推廣應(yīng)用。就應(yīng)用程序的開(kāi)發(fā)而言,目前使用較多的高級(jí)語(yǔ)言有Visual Basic、Visual FoxPro、Fortran、C/C + +、Pascal、Delphi、Java 等,它們各有特點(diǎn),分別適合不同的領(lǐng)域。在這眾多的開(kāi)發(fā)語(yǔ)言環(huán)境中,Visual Basic 提供了Microsoft Windows應(yīng)用程序最迅速、最簡(jiǎn)捷的開(kāi)發(fā)方法,從應(yīng)用的角度上講,具有簡(jiǎn)單易用、方便快捷、功能強(qiáng)大、應(yīng)用廣泛、適合路橋?qū)I(yè)人士使用。
任何產(chǎn)品在起初都得為自己做廣告,路友軟件也不例外。路友軟件運(yùn)行時(shí)首先顯示產(chǎn)品廣告、聯(lián)系作者界面,然后進(jìn)入產(chǎn)品產(chǎn)權(quán)的保護(hù)設(shè)置,依據(jù)計(jì)算機(jī)CPU 信息、硬件信息、軟件運(yùn)行中產(chǎn)生的隨機(jī)信息、軟件加密狗信息以及用戶名判斷當(dāng)前用戶的使用權(quán)限,根據(jù)用戶權(quán)限類(lèi)別對(duì)產(chǎn)品使用功能進(jìn)行限制,繼而進(jìn)入軟件主界面以便進(jìn)行各項(xiàng)子功能程序的使用,本程序使用Access 數(shù)據(jù)庫(kù)鏈接,在里面讀取用戶以便控制各用戶不同的權(quán)限,同時(shí)保存各用戶不同的輸出結(jié)果。本例中的路友v1.84 版只限制計(jì)算結(jié)果的輸出功能,非注冊(cè)用戶只能對(duì)計(jì)算結(jié)果進(jìn)行預(yù)覽。流程框圖見(jiàn)圖1。
圖1 流程框圖
圖2 權(quán)限判斷流程圖
(1)廣告功能
廣告界面是路友程序的入口,它主要功能是使用戶知曉路友品牌、開(kāi)發(fā)者聯(lián)系方法等信息,使用定時(shí)器控制顯示5 s后自動(dòng)進(jìn)入用戶登陸界面,在界面開(kāi)發(fā)時(shí)力求美觀,可以設(shè)計(jì)為淡入淡出的顯示效果,給用戶一種動(dòng)感的美的享受。
(2)用戶登陸窗口
在廣告界面的運(yùn)行過(guò)程中,不但要取到廣告的效果,同時(shí)應(yīng)該完成另一個(gè)任務(wù),就是調(diào)用用戶的登陸界面,用于作為用戶的入口,用戶輸入用戶名及密碼,以便管理自己的數(shù)據(jù)信息。另外,考慮數(shù)據(jù)庫(kù)會(huì)隨著軟件使用不斷增大,軟件還設(shè)計(jì)了數(shù)據(jù)庫(kù)整理工具。
(3)機(jī)器和用戶的權(quán)限判斷
用戶登陸后,按照當(dāng)前用戶信息查找數(shù)據(jù)庫(kù)及注冊(cè)表、計(jì)算機(jī)硬件等信息,對(duì)計(jì)算機(jī)及用戶名進(jìn)行判斷,以便使正式用戶直接進(jìn)入軟件的計(jì)算主界面,非正式用戶在注冊(cè)界面中操作,以滿足其使用試用版本或進(jìn)行軟件的注冊(cè)的需要。
實(shí)際工作中,對(duì)軟件用戶控制的方法很多,比如常見(jiàn)的加密狗方法、限制軟件使用次數(shù)、限制軟件的使用時(shí)間、限制軟件試用版本的輸出功能以及目前比較流行的軟件注冊(cè)等方法。不論是采用何種方法,其目的只是控制非正式用戶的使用權(quán)限。本例中采用賦予計(jì)算機(jī)隨機(jī)數(shù)經(jīng)過(guò)多重的加密與解密算法得出的結(jié)果作為用戶特征,進(jìn)而在軟件使用過(guò)程中識(shí)別機(jī)器和用戶,并以此判斷用戶是否為正式用戶,達(dá)到控制軟件使用功能的目的。權(quán)限判斷流程圖見(jiàn)圖2。
(1)提供用戶在申請(qǐng)注冊(cè)碼后進(jìn)行軟件注冊(cè),以取得正式用戶身份的功能;(2)提供非正式用戶以試用者身份進(jìn)行軟件試用的功能;(3)提示當(dāng)前用戶名稱及其機(jī)器碼。另處還可以增加諸如軟件開(kāi)發(fā)者的聯(lián)系方法及退出軟件等方面的功能。
軟件注冊(cè)窗口設(shè)計(jì)效果見(jiàn)圖3。
圖3 軟件注冊(cè)窗口設(shè)計(jì)效果圖
作者開(kāi)發(fā)的路友公路施工計(jì)算軟件,其功能定位是:以路線計(jì)算單元為基礎(chǔ),在輸入計(jì)算基礎(chǔ)數(shù)據(jù)后,經(jīng)過(guò)計(jì)算機(jī)的處理,形成用戶需要的數(shù)據(jù),以指導(dǎo)公路工程的施工。路友公路計(jì)算軟件v1.84 版本,全面涵蓋公路橋梁的施工測(cè)量、放樣、曲線設(shè)計(jì)、平差、試驗(yàn)計(jì)算等各個(gè)領(lǐng)域,擁有100 多項(xiàng)計(jì)算功能(軟件可在互聯(lián)網(wǎng)上搜索下載)。能一次性計(jì)算道路各結(jié)構(gòu)層加樁的中邊樁坐標(biāo)、標(biāo)高,平(立)交匝道坐標(biāo)、橢圓坐標(biāo)、縱坡計(jì)算、豎曲線、涵洞長(zhǎng)度、支距與偏角、超高與加寬、平曲線主點(diǎn)樁號(hào)、橋梁支架模板、方格網(wǎng)土方計(jì)算、路基土方壓實(shí)度、水穩(wěn)基層壓實(shí)度、水穩(wěn)基層無(wú)側(cè)限抗壓強(qiáng)度、2#級(jí)配料篩分試驗(yàn)、砼配比設(shè)計(jì)、前方交會(huì)法、后方交會(huì)法、公路單交點(diǎn)、雙交點(diǎn)基本型、非對(duì)稱型曲線、虛交曲線、S 型、C 型、凸型、回頭曲線等曲線要素和主點(diǎn)樁號(hào)、半徑反算以及各種精度、類(lèi)型的閉合導(dǎo)線、附合導(dǎo)線、小三角鎖、大地四邊形、水準(zhǔn)路線按測(cè)站、按距離相組合的幾十種平差項(xiàng)目計(jì)算,并有Word、Excel 以及自動(dòng)打印輸出功能,還具有軟件最新版本查看、盜版版本識(shí)別、數(shù)據(jù)庫(kù)整理等實(shí)用工具,它能一次性同時(shí)計(jì)算出公路各結(jié)構(gòu)層逐樁號(hào)的中樁和邊樁坐標(biāo)和標(biāo)高,并進(jìn)行輸出打印可為目前市場(chǎng)上公路施工計(jì)算軟件的創(chuàng)新之舉。
主操作界面的設(shè)計(jì),要做到界面美觀,功能齊全且操作方便,設(shè)計(jì)時(shí)可以采用菜單欄形式、工具欄形式、樹(shù)形列表形式或采用多種形式的組合等。本工程主界面設(shè)計(jì)采用以上控件的組合模式,界面設(shè)計(jì)美觀大方、功能簡(jiǎn)潔、操作簡(jiǎn)單,用戶使用很容易上手。
(1)子功能設(shè)計(jì)思路
軟件的功能界面是工程的核心,路友v1.84 版具有100多個(gè)計(jì)算的功能模塊,本文以公路平(立)交匝道的平面坐標(biāo)計(jì)算為例加以介紹:
開(kāi)發(fā)前,首先應(yīng)明確用戶對(duì)該子功能的需求:也就是說(shuō),施工工程師(或技術(shù)人員)在進(jìn)行道路平(立)匝道的施工前,需要通過(guò)計(jì)算平(立)匝道每隔幾m 遠(yuǎn)處的中樁和邊樁坐標(biāo)數(shù)據(jù),用于控制項(xiàng)目的測(cè)量定位工作,以指導(dǎo)施工。這也就是路友軟件其中的一個(gè)子功能模塊。
按照正常的匝道施工計(jì)算理論,應(yīng)該輸入基礎(chǔ)的計(jì)算數(shù)據(jù),那就是匝道的以下15 個(gè)計(jì)算要素:
①第1 直線元長(zhǎng)度(m)②第2 回旋線元長(zhǎng)度(m)
③第3 圓曲線元長(zhǎng)度(m)④第4 回旋線元長(zhǎng)度(m)
⑤第5 圓曲線元長(zhǎng)度(m)⑥第6 回旋線元長(zhǎng)度(m)
⑦第7 直線元長(zhǎng)度(m)⑧第1 個(gè)圓曲線半徑(m)
⑨第2 個(gè)圓曲線半徑(m)⑩匝道的起始方位角、起點(diǎn)樁號(hào)、起點(diǎn)坐標(biāo)、匝道的轉(zhuǎn)向方向、還有就是用戶需要加密的樁號(hào)距離(m)以及邊樁的寬度數(shù)據(jù)(m)。
按照匝道在不同單元段上的不同計(jì)算方法,程序運(yùn)行時(shí)以樁號(hào)(樁號(hào)按指定間距循環(huán)累加)在匝道的計(jì)算單元位置為判斷條件,并采取相應(yīng)的計(jì)算方法,同時(shí)把計(jì)算結(jié)果寫(xiě)入用戶數(shù)據(jù)庫(kù)內(nèi),用于成果的打印和輸出,達(dá)到用戶的需求目的。模塊中數(shù)據(jù)的輸入采用text 控件、相對(duì)較固定的參數(shù)使用combo 控件選取,同時(shí)設(shè)計(jì)分組控件使界面簡(jiǎn)潔明了,便于用戶使用。用戶計(jì)算結(jié)束后,[計(jì)算]按扭變?yōu)椋鄄榭唇Y(jié)果],用于計(jì)算結(jié)果的預(yù)覽和輸出操作。
(2)子窗口界面設(shè)計(jì)效果見(jiàn)圖4。
圖4 子窗口界面設(shè)計(jì)效果圖
(3)子程序流程圖,見(jiàn)圖5。
圖5 子程序流程圖
首先運(yùn)行路友軟件,計(jì)算機(jī)顯示產(chǎn)品廣告后屏幕上出現(xiàn)用戶登陸界面,在你還沒(méi)有新建自己的用戶名稱和密碼之前,你可以使用系統(tǒng)默認(rèn)的用戶名稱及密碼進(jìn)行登陸,程序進(jìn)入主界面,在這里你可以進(jìn)行自己用戶名稱和密碼的新建設(shè)置以及100 多個(gè)計(jì)算功能模塊的操作。
在用戶確定的模塊功能計(jì)算操作結(jié)束后,你可以按自己的需要進(jìn)行計(jì)算結(jié)果的預(yù)覽、導(dǎo)出、打印等輸出操作(在路友v1.84 版本里是采用注冊(cè)方式限制的,非正式用戶只能進(jìn)行計(jì)算結(jié)果的預(yù)覽)。
本文簡(jiǎn)單地介紹了利用visual basic 開(kāi)發(fā)環(huán)境進(jìn)行公路與橋梁應(yīng)用系統(tǒng)軟件開(kāi)發(fā)的方法及技巧。visual basic 有著自身強(qiáng)大的功能,能開(kāi)發(fā)出諸如公路工程管理系統(tǒng)、公路概預(yù)算系統(tǒng)、公路施工圖設(shè)計(jì)系統(tǒng)、橋梁結(jié)構(gòu)計(jì)算系統(tǒng)、工程計(jì)量系統(tǒng)等等。
[1]現(xiàn)行市政工程規(guī)范大全[M].北京:中國(guó)建筑工業(yè)出版社,2003.
[2]江正榮.建筑施工簡(jiǎn)易計(jì)算[M].北京:機(jī)械工業(yè)出版社,2008.
[3]求是科技.visual basic6.0 程序設(shè)計(jì)與開(kāi)發(fā)技術(shù)大全[M].北京:人民郵電出版社,2004.