999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

隧道照明設計軟件開發與實現

2018-09-26 11:30:48王鵬宇秦會斌屠凡
軟件導刊 2018年7期

王鵬宇 秦會斌 屠凡

摘要:目前國內外沒有專門針對隧道照明設計的軟件。為實現隧道照明的自動化設計,設計一款專業的隧道照明設計軟件。軟件基于Winform框架進行開發。繪圖是軟件的核心功能,其中二維圖形采用GDI+繪制,三維部分使用C#語言封裝下的OpenGL圖形軟件接口實現。以VisualStudio為開發工具,利用SQLite實現數據庫設計,軟件能使設計人員快速、準確地制作設計方案,并進行仿真模擬。經過測試,軟件整體設計符合規范要求,能有效減少隧道照明設計人員的工作量。

關鍵詞:隧道照明;照明設計;GDI+;OpenGL

DOI:10.11907/rjdk.173191

中圖分類號:TP319

文獻標識碼:A文章編號:1672-7800(2018)007-0135-04

Abstract:Atpresent,thereisstillnosoftwarespeciallydesignedfortunnellighting.Inordertorealizeautomaticdesignoftunnellighting,asoftwarespeciallydesignedfortunnellightingisdesigned.ThesoftwareisdevelopedonthebasisoftheWinformframework.Drawingisthecorefunctionofsoftware,the2DgraphicsaredrawnbyGDI+,andthe3DpartisimplementedbyOpenGLgraphicinterfaceencapsulatedbyC#language.ThesoftwareisdevelopedbyVisualStudio,anditusesSQLiteasthedatabase.Thesoftwarecanofferfastandaccuratedesignschemesforlightingenterprisesanddesigninginstitutes,andcanalsocarryonaseriesofsimulation.Accordingtothetest,theoveralldesignofthesoftwaremeetstherequirementsofthespecificationandeffectivelyreducestheworkloadoftunnellightdesigners.

KeyWords:tunnellighting;lightingdesign;GDI+;OpenGL

0引言

公路隧道是陸路交通體系中重要的組成部分,隧道照明設計作為光學、建筑學、信息學、交通安全等多個學科的交叉課題,是公路隧道設計過程中極其重要的環節。隧道照明設計過程中需考慮亮度、照度、均勻度、功率、可控性及安全性等設計參數[1]。

現階段我國對隧道照明的LED燈具設計與規劃,仍采用傳統散射光的配光設計,一般均為電氣設計工程師代為規劃,沒有專業照明設計人員[2]。專業隧道照明配光軟件是智能隧道技術及產業發展亟待滿足的重要需求。針對隧道照明應用設計開發一款專業軟件,可以方便照明企業與設計院快速、準確地制作設計方案,以便設計方選擇燈具的配光、功率進行燈光布置。

本軟件是基于Microsoft.NETFramework開發環境,使用C#編程語言,基于Winform框架開發的一款標準的Windows桌面應用軟件,其中二維圖形繪制與輸出采用GDI+圖形設備接口,三維部分使用C#語言封裝下的OpenGL圖形軟件接口。軟件功能包括生成隧道的截面圖、截面燈光圖、縱向燈光圖和三維仿真圖,并能進行隧道的分段亮度計算,生成隧道布燈圖。該軟件極大簡化了整個隧道燈光設計過程,且整體設計符合規范要求,能有效減輕隧道配光師和隧道燈光安裝人員的工作強度。

1系統設計

1.1系統總體架構

(1)總體架構。軟件采用C#語言編寫,是基于微軟.netframework框架的Winform桌面應用程序[3]。

(2)數據庫架構。采用輕量級的SQLite數據庫,用于存儲用戶權限信息、燈具信息和文件瀏覽歷史信息等。

(3)繪圖與圖像輸出。軟件主要功能是實現各種仿真和布燈圖的繪制與輸出。繪圖主要是采用C#語言內置的GDI+進行繪制[4],采用C#語言內置圖形對象的輸出方法進行輸出。

(4)三維圖像的生成。軟件的三維圖采用SharpGL控件進行繪制。該控件在底層封裝了OpenGL框架,能進行三維建模[5]。

1.2系統功能模塊設計

根據軟件界面劃分的各模塊的主要功能如下:

(1)登錄界面。該界面提供登錄功能,用戶輸入用戶名和密碼后,登錄系統,系統會根據用戶所屬類別,加載不同的功能頁面。同時還提供瀏覽模式,該模式無需密碼就能進入系統,但是只提供打開和瀏覽功能,不能進行任何修改。

(2)軟件主頁面。該界面提供打開項目與新建項目的功能,點擊相應按鈕即可進入相應功能,并且提供打開項目歷史記錄的功能,可快速打開最近打開過的項目文件。

(3)參數輸入界面。該界面的功能是讓用戶輸入隧道的基本參數、燈具的基本參數和燈具的布置參數還有項目相關信息等,為后續的仿真與設計提供基本的數據[6]。

(4)隧道參數界面。該界面會展示前一界面輸入的各項參數,如需修改可在此界面進行修改。后續也可在此界面展示其它界面中修改的隧道參數。

(5)軟件功能主界面。在打開項目或者新建項目輸入參數確認后會進入此界面界面左側有一列功能按鈕,點擊相應功能按鈕即可進入相應功能,在界面右側顯示相應功能的子界面。

(6)隧道截面圖界面。該界面根據隧道基本參數自動生成隧道的截面圖,并標注各項基本參數,讓設計者對隧道有基本的直觀認識。

(7)隧道截面燈光圖界面。該界面根據燈具的布置參數自動生成隧道的截面燈光仿真圖,用戶可根據此圖參照設計規范和實際需求對燈具布置參數進行修改以滿足實際項目需求。

(8)隧道縱向燈光圖界面。該界面根據燈具的布置參數自動生成隧道的縱向燈光仿真圖,用戶可根據此圖參照設計規范和實際需求對燈具布置參數進行修改以滿足實際項目需求。

(9)分段亮度計算界面。該界面提供根據隧道照明設計規范自動計算的各段亮度值,如果實際項目中需要對其進行調整,可在該界面中完成。

(10)布燈圖界面。該界面根據隧道和燈具的各項參數自動生成隧道的布燈圖并以矢量圖格式輸出,與布燈相關的各項參數能在此界面進行修改。

(11)隧道三維圖界面。該界面支持查看隧道的三維模型。

(12)燈具數目統計界面。該界面支持對隧道布燈圖中所使用的燈具規格和數目的統計。

(13)權限管理界面。該界面支持對當前用戶密碼的修改,新建用戶和重置用戶密碼等功能。該界面與用戶權限相關聯。只有管理員賬戶才能使用全部功能。

2系統實現

為方便設計人員使用,本軟件采用基于C#語言的Winform框架進行開發,是一款標準的Windows桌面應用程序,由于軟件功能模塊較多,只選取最核心的功能介紹系統實現。

2.1隧道、燈具與其它輔助類建立

由于C#是面向對象開發語言,所以在正式功能算法實施之前,先要進行模型也就是類的建立。類就是對具有相同數據元素和功能對象的抽象,實際上就是一種數據類型。類的構成包括字段和函數。當用戶新建項目時,要求用戶輸入隧道和燈具及燈具布置的相關參數,隧道參數包括[7]:車道寬度、左側檢修道寬度、右側檢修道寬度、建筑界限高度、隧道頂高、檢修道高度、隧道長度、設計時速、縱坡、車道數、洞外亮度、通行方式、設計小時交通量等。燈具參數包括各分段燈具的功率、光效以及燈具利用系數、養護系數等。燈具安裝參數有基本燈安裝間距、燈具安裝高度、燈具與隧道中線的距離、安裝傾角、投射角、縱向投射角、布燈方式、出入口安裝余量等。對于所需的參數,都封裝到隧道類和燈具類中,然后再對其中需要處理的數據進行方法的封裝[8]。

除了兩個核心類,軟件同時需要建立一些輔助仿真與繪圖的類,如三維圖繪制所需的向量計算類和攝像機類[9]。還有隧道相關計算需要的隧道工具類,管理項目和權限的項目類和用戶類等。

2.2隧道截面圖與平面配光圖繪制

各種二維圖形的繪制與輸出是本軟件的核心功能,采用圖形設備接口GDI+(GraphicsDeviceInterface)進行二維圖形繪制。它是一組通過C++類實現的應用程序編程接口,主要負責在屏幕和打印設備輸出有關信息。具體編程流程是:先創建一個圖形對象(Graphics),然后通過面向對象的編程方式調用它的各種方法,如DrawLine(Penpen、Pointpt1、Pointpt2),DrawEllipse(Penp、floatx、floaty、floatwidth、floatheight),實現圖形繪制[10]。

對于隧道建筑建模而言,隧道的走線及凈空斷面是模型的關鍵,走線指決定隧道長度及方向隧道縱向的主軸中心線凈空斷面決定隧道的外形結構。由于燈具屬于隧道內建筑,還需要考慮隧道的建筑界限[11]。

根據《公路隧道設計規范》關于隧道截面設計圖的規定,軟件通過GDI+接口進行編程繪制隧道的截面圖。同時要根據輸入的燈具布置參數如投射角、安裝傾角燈進行隧道配光的仿真,包括截面與縱向燈光的配光仿真,其主要意義是驗證配光的均勻性,同時使設計能滿足一些其它配光上需要考慮的因素,如隧道配光要求燈光能照射到隧道側壁兩米高的范圍,這樣能通過側壁反射,提高路面大概10%亮度。

2.3隧道分段亮度計算

隧道照明是隧道各項設計中一個重要環節,通常一個隧道的最低亮度由其車流量和設計時速決定[12]。由于人眼對光學的適應性是一個逐步的過程,所以從交通安全角度上,隧道被分為入口段、過渡段、中間段和出口段,從亮度角度而言先逐級遞減,后逐級增加。《公路隧道照明設計細則》中對各個分段的亮度進行了詳細的建議性規定,軟件可根據用戶輸入的參數對隧道進行自動分段,并根據《公路隧道照明設計細則》計算出各段的亮度值,某些情況下設計師希望改變亮度值,軟件也提供了修改各段亮度的功能,以方便調整后續的布燈操作。

2.4隧道布燈圖繪制與輸出

隧道布燈圖繪制是該軟件最核心的功能,它能直接指導隧道布燈工作[13]。隧道燈分為基本燈與加強燈,各個分段都要布置基本燈,基本燈布燈間距可根據規定算出參考值,設計師也可手動修改其值,一般除了中間段,其它分段都要布置加強燈,可根據計算出的各段亮度值、燈具的布置系數,結合《公路隧道照明設計細則》中的計算公式進行計算:

由式(1)可得出各段的加強燈間距和各段基本燈間距內加強燈的個數。如果設計師需要修改各段基本燈間距內加強燈的個數,也可手動修改。

繪圖時同時要考慮隧道的布燈方式,布燈方式主要有:中線布置、中線側偏布置、兩側對陣布置、兩側交錯布置4種,繪制時可根據實際需求進行選擇,布燈同時需要

考慮一些其它條件,如入口段布燈通常比較密集,可以選擇將入口段的燈具布成兩排,這也是設計師通常會采用的布燈方式。隧道出口和入口一般會留有一定的余量不進行布燈,繪制布燈圖時也要考慮該因素[14]。

隧道布燈圖要進行一些標注,比如要標注各分段名稱及其長度、各分段加強燈的間距、出入口余量長度、行車方向,同時還要區分加強燈與基本燈。繪圖時采用GDI+圖形設備接口進行編程,輸出時采用windows的矢量圖格式emf進行輸出,可以方便后期的編輯與使用。

2.5隧道三維圖繪制

首先運用OpenGL建模功能。OpenGL雖然提供基本的點、線、多邊形的繪制函數與一部分復雜空間體及其組合,然而面對具有復雜三維結構的隧道,無法直接使用函數進行繪制[15]。使用OpenGL以頂點為圖元,以空間多邊形為空間體的各個面,可以避免凹多面體不能被函數直接表示的問題,以基本幾何圖形尤其是矩形為基礎繪制隧道形狀。然后運用OpenGL中的紋理映射、材質的光反射設置、環境光源設置,完成對隧道內地面、檢修道、隧道墻壁的材質、紋理等的渲染,使三維場景可以模擬現實中的隧道外形。

OpenGL提供視點變化、視角變換、模型變換、投影變換等函數。利用攝像機類中封裝好的的變換可以在模擬隧道中任意改變觀察者位置,轉變視線方向。利用封裝方法可以初始化自己的視點,指定觀察角度、方向,也可以靜態地觀察圖像。通過這些方式,可以實現在模擬隧道中自由漫游,方便對模擬隧道進行多角度全方位的觀察[16]。

OpenGL中封裝了計算光照強度和光照方向的算法,其中以平行光和二次衰減光為主,可以利用其確定光源位置、光源屬性等接口完成方法的封裝。通常由于第一個光源與其它光源有一定設置差距,經常被用作整體環境光源,在本文即為自然光源(洞外亮度L20(S))。完成光源設置后,根據光源的屬性,以及隧道外觀的材質屬性可得到隧道內部呈現的亮度,場景中光強的調節通過改變光源屬性中的RGBA分量實現。

3系統測試

軟件安裝后,通過桌面圖標打開軟件,進入登錄界面,輸入默認的管理員賬號與密碼,點擊登錄能正常進入軟件主界面,當輸入了錯誤的用戶名或密碼后,將提示密碼錯誤,不能進入軟件。進入軟件主界面后能選擇是新建項目還是打開已保存的項目,還能快速打開已記錄的歷史項目。當選擇新建項目后,進入參數輸入界面;當輸入符合軟件校驗規則的參數后可進入軟件的功能主界面,當輸入的參數不符合預設規則時,軟件會給出相應提示。軟件功能主界面默認顯示隧道的屬性頁面。主界面左側列出各個子功能界面的按鈕,點擊不同按鈕進入相應功能,隧道截面燈光如圖2所示,隧道三維仿真如圖3所示。

4結語

本文設計并實現了基于C#和Winform框架的隧道照明設計軟件,功能包括生成隧道的截面圖、截面燈光圖、縱向燈光圖和三維仿真圖,并能計算隧道的分段亮度,生成并輸出隧道布燈圖,經過多次測試及工程師試用證明,該軟件能大幅簡化整個隧道的燈光設計過程,且整體設計符合規范要求,能有效減輕隧道配光師和隧道燈光安裝人員的工作量。

參考文獻:

[1]劉翠萍.基于LED的公路隧道照明設計與中間視覺下LED隧道照明研究[D].青島:中國海洋大學,2012.

[2]周曉波.LED燈光照明系統的仿真研究及其軟件開發[D].武漢:武漢理工大學,2004.

[3]繆平,朱曉輝,丁浩,陳蘇蓉.WinForm界面統一管理方法研究[J].軟件導刊,2017,16(09):1-3.

[4]陳本峰,蘇琦.WindowsGDI+的研究與應用[J].計算機應用研究,2003,13(03):56-59.

[5]王曉松,徐妍,田董煒,劉志強,胡夢濤.SharpGL三維建模技術實現[J].軟件導刊,2017,16(04):205-208.

[6]楊超,程翠.公路隧道照明燈具利用系數研究[J].照明工程學報,2017,28(1):97-101.

[7]涂耘,史玲娜,王小軍.新舊規范對比下的隧道照明節能設計研究[J].照明工程學報,2015,26(1):50-54.

[8]DEGNANJ.Lightingmountains:thestateofOregonmakesitstunnelsystemalotbrighter[J].Roads&Bridges;,2005,43(10):42-46.

[9]祝敏.基于OpenGL的LED燈光情景仿真[D].哈爾濱:哈爾濱理工大學,2007.

[10]閆宇晗,常鑫.在C#中用GDI+實現圖形動態顯示[J].計算機技術與發展,2006,8(12):117-118+232.

[11]但小崗.SQLite數據庫在WindowsForms應用開發中的應用研究[J].價值工程,2016,35(21):141-142.

[12]王鵬展.LED道路照明光環境優化技術探索[D].上海:復旦大學,2011.

[13]張善偉.公路隧道照明設計中DIALux的適用性及建模方法分析[J].照明工程學報,2014,25(5):93-97.

[14]張玲,陳元春,孫勇.基于GDI+的通用圖形平臺設計[J].計算機工程,2005,23(12):218-220.

[15]吳偉和,郝愛民,李智.基于直接光照的全局光照模擬[J].計算機工程,2009,35(10):257-258.

[16]李寧.高速公路隧道照明節能技術及控制方法研究[D].昆明:昆明理工大學,2013.

(責任編輯:江艷)

主站蜘蛛池模板: 91九色视频网| 午夜福利在线观看成人| 午夜国产精品视频| 亚洲国产在一区二区三区| 国产精品欧美日本韩免费一区二区三区不卡 | 91青草视频| 国禁国产you女视频网站| 亚洲福利片无码最新在线播放| 亚洲无线国产观看| 精品伊人久久久久7777人| 亚洲欧美精品日韩欧美| 亚洲三级视频在线观看| 在线观看91香蕉国产免费| 国产一区二区网站| 中国国产A一级毛片| 22sihu国产精品视频影视资讯| 一区二区三区四区在线| 国产91蝌蚪窝| 久久婷婷人人澡人人爱91| 视频二区亚洲精品| 综合色天天| 国内精品久久久久久久久久影视| 香蕉综合在线视频91| 亚洲三级成人| 日韩精品成人在线| 欧美国产成人在线| 久久永久免费人妻精品| 日本黄色a视频| 久久精品国产一区二区小说| 国产精品欧美日本韩免费一区二区三区不卡 | 中文字幕2区| 国产极品粉嫩小泬免费看| 免费国产一级 片内射老| av色爱 天堂网| 国产精品.com| 国产呦精品一区二区三区下载 | 欧洲精品视频在线观看| 日本少妇又色又爽又高潮| 亚洲一欧洲中文字幕在线| 在线观看视频99| 亚洲国产欧洲精品路线久久| 凹凸精品免费精品视频| 好紧太爽了视频免费无码| 日韩欧美国产精品| 国产香蕉一区二区在线网站| 成人av手机在线观看| 国产乱子伦精品视频| 日韩欧美国产精品| 真实国产乱子伦视频| 免费观看男人免费桶女人视频| 色综合久久88| 97超爽成人免费视频在线播放| 成人福利在线免费观看| 欧美一区二区三区国产精品| 久久精品人妻中文系列| 在线观看av永久| 亚洲第一精品福利| 国产成人精品日本亚洲77美色| 激情爆乳一区二区| 一本大道无码日韩精品影视| 国产精品成人一区二区| 免费人成网站在线观看欧美| 色婷婷啪啪| 国产中文一区a级毛片视频| 日韩一二三区视频精品| 欧美日韩激情| 亚洲AV无码精品无码久久蜜桃| 亚洲色图欧美激情| 婷婷亚洲最大| 2021国产精品自拍| 91精品情国产情侣高潮对白蜜| 国产亚洲日韩av在线| 亚洲日韩国产精品无码专区| 97青青青国产在线播放| 露脸一二三区国语对白| 国产黄在线免费观看| 欧美一道本| 性视频一区| 欧美不卡视频一区发布| 亚洲精品无码抽插日韩| 亚洲综合第一区| 精品福利视频导航|