吳會友
(宏盛建業投資集團有限公司)
隨著電子計算機的不斷普及,公路工程的施工計算、測量計算、平差計算、造價計算、設計出圖、工程計量以及業主、監理、施工單位的管理電算化程度也得到了前所未有的提高,公路行業軟件在各層次的管理部門中也得到了普遍的推廣應用。就應用程序的開發而言,目前使用較多的高級語言有Visual Basic、Visual FoxPro、Fortran、C/C + +、Pascal、Delphi、Java 等,它們各有特點,分別適合不同的領域。在這眾多的開發語言環境中,Visual Basic 提供了Microsoft Windows應用程序最迅速、最簡捷的開發方法,從應用的角度上講,具有簡單易用、方便快捷、功能強大、應用廣泛、適合路橋專業人士使用。
任何產品在起初都得為自己做廣告,路友軟件也不例外。路友軟件運行時首先顯示產品廣告、聯系作者界面,然后進入產品產權的保護設置,依據計算機CPU 信息、硬件信息、軟件運行中產生的隨機信息、軟件加密狗信息以及用戶名判斷當前用戶的使用權限,根據用戶權限類別對產品使用功能進行限制,繼而進入軟件主界面以便進行各項子功能程序的使用,本程序使用Access 數據庫鏈接,在里面讀取用戶以便控制各用戶不同的權限,同時保存各用戶不同的輸出結果。本例中的路友v1.84 版只限制計算結果的輸出功能,非注冊用戶只能對計算結果進行預覽。流程框圖見圖1。

圖1 流程框圖

圖2 權限判斷流程圖
(1)廣告功能
廣告界面是路友程序的入口,它主要功能是使用戶知曉路友品牌、開發者聯系方法等信息,使用定時器控制顯示5 s后自動進入用戶登陸界面,在界面開發時力求美觀,可以設計為淡入淡出的顯示效果,給用戶一種動感的美的享受。
(2)用戶登陸窗口
在廣告界面的運行過程中,不但要取到廣告的效果,同時應該完成另一個任務,就是調用用戶的登陸界面,用于作為用戶的入口,用戶輸入用戶名及密碼,以便管理自己的數據信息。另外,考慮數據庫會隨著軟件使用不斷增大,軟件還設計了數據庫整理工具。
(3)機器和用戶的權限判斷
用戶登陸后,按照當前用戶信息查找數據庫及注冊表、計算機硬件等信息,對計算機及用戶名進行判斷,以便使正式用戶直接進入軟件的計算主界面,非正式用戶在注冊界面中操作,以滿足其使用試用版本或進行軟件的注冊的需要。
實際工作中,對軟件用戶控制的方法很多,比如常見的加密狗方法、限制軟件使用次數、限制軟件的使用時間、限制軟件試用版本的輸出功能以及目前比較流行的軟件注冊等方法。不論是采用何種方法,其目的只是控制非正式用戶的使用權限。本例中采用賦予計算機隨機數經過多重的加密與解密算法得出的結果作為用戶特征,進而在軟件使用過程中識別機器和用戶,并以此判斷用戶是否為正式用戶,達到控制軟件使用功能的目的。權限判斷流程圖見圖2。
(1)提供用戶在申請注冊碼后進行軟件注冊,以取得正式用戶身份的功能;(2)提供非正式用戶以試用者身份進行軟件試用的功能;(3)提示當前用戶名稱及其機器碼。另處還可以增加諸如軟件開發者的聯系方法及退出軟件等方面的功能。
軟件注冊窗口設計效果見圖3。

圖3 軟件注冊窗口設計效果圖
作者開發的路友公路施工計算軟件,其功能定位是:以路線計算單元為基礎,在輸入計算基礎數據后,經過計算機的處理,形成用戶需要的數據,以指導公路工程的施工。路友公路計算軟件v1.84 版本,全面涵蓋公路橋梁的施工測量、放樣、曲線設計、平差、試驗計算等各個領域,擁有100 多項計算功能(軟件可在互聯網上搜索下載)。能一次性計算道路各結構層加樁的中邊樁坐標、標高,平(立)交匝道坐標、橢圓坐標、縱坡計算、豎曲線、涵洞長度、支距與偏角、超高與加寬、平曲線主點樁號、橋梁支架模板、方格網土方計算、路基土方壓實度、水穩基層壓實度、水穩基層無側限抗壓強度、2#級配料篩分試驗、砼配比設計、前方交會法、后方交會法、公路單交點、雙交點基本型、非對稱型曲線、虛交曲線、S 型、C 型、凸型、回頭曲線等曲線要素和主點樁號、半徑反算以及各種精度、類型的閉合導線、附合導線、小三角鎖、大地四邊形、水準路線按測站、按距離相組合的幾十種平差項目計算,并有Word、Excel 以及自動打印輸出功能,還具有軟件最新版本查看、盜版版本識別、數據庫整理等實用工具,它能一次性同時計算出公路各結構層逐樁號的中樁和邊樁坐標和標高,并進行輸出打印可為目前市場上公路施工計算軟件的創新之舉。
主操作界面的設計,要做到界面美觀,功能齊全且操作方便,設計時可以采用菜單欄形式、工具欄形式、樹形列表形式或采用多種形式的組合等。本工程主界面設計采用以上控件的組合模式,界面設計美觀大方、功能簡潔、操作簡單,用戶使用很容易上手。
(1)子功能設計思路
軟件的功能界面是工程的核心,路友v1.84 版具有100多個計算的功能模塊,本文以公路平(立)交匝道的平面坐標計算為例加以介紹:
開發前,首先應明確用戶對該子功能的需求:也就是說,施工工程師(或技術人員)在進行道路平(立)匝道的施工前,需要通過計算平(立)匝道每隔幾m 遠處的中樁和邊樁坐標數據,用于控制項目的測量定位工作,以指導施工。這也就是路友軟件其中的一個子功能模塊。
按照正常的匝道施工計算理論,應該輸入基礎的計算數據,那就是匝道的以下15 個計算要素:
①第1 直線元長度(m)②第2 回旋線元長度(m)
③第3 圓曲線元長度(m)④第4 回旋線元長度(m)
⑤第5 圓曲線元長度(m)⑥第6 回旋線元長度(m)
⑦第7 直線元長度(m)⑧第1 個圓曲線半徑(m)
⑨第2 個圓曲線半徑(m)⑩匝道的起始方位角、起點樁號、起點坐標、匝道的轉向方向、還有就是用戶需要加密的樁號距離(m)以及邊樁的寬度數據(m)。
按照匝道在不同單元段上的不同計算方法,程序運行時以樁號(樁號按指定間距循環累加)在匝道的計算單元位置為判斷條件,并采取相應的計算方法,同時把計算結果寫入用戶數據庫內,用于成果的打印和輸出,達到用戶的需求目的。模塊中數據的輸入采用text 控件、相對較固定的參數使用combo 控件選取,同時設計分組控件使界面簡潔明了,便于用戶使用。用戶計算結束后,[計算]按扭變為[查看結果],用于計算結果的預覽和輸出操作。
(2)子窗口界面設計效果見圖4。

圖4 子窗口界面設計效果圖
(3)子程序流程圖,見圖5。

圖5 子程序流程圖
首先運行路友軟件,計算機顯示產品廣告后屏幕上出現用戶登陸界面,在你還沒有新建自己的用戶名稱和密碼之前,你可以使用系統默認的用戶名稱及密碼進行登陸,程序進入主界面,在這里你可以進行自己用戶名稱和密碼的新建設置以及100 多個計算功能模塊的操作。
在用戶確定的模塊功能計算操作結束后,你可以按自己的需要進行計算結果的預覽、導出、打印等輸出操作(在路友v1.84 版本里是采用注冊方式限制的,非正式用戶只能進行計算結果的預覽)。
本文簡單地介紹了利用visual basic 開發環境進行公路與橋梁應用系統軟件開發的方法及技巧。visual basic 有著自身強大的功能,能開發出諸如公路工程管理系統、公路概預算系統、公路施工圖設計系統、橋梁結構計算系統、工程計量系統等等。
[1]現行市政工程規范大全[M].北京:中國建筑工業出版社,2003.
[2]江正榮.建筑施工簡易計算[M].北京:機械工業出版社,2008.
[3]求是科技.visual basic6.0 程序設計與開發技術大全[M].北京:人民郵電出版社,2004.