劉在基 郭 靜 凌 韜
(91551部隊(duì) 九江 332005)
?
GDI+在裝備保障輔助決策中的應(yīng)用*
劉在基郭靜凌韜
(91551部隊(duì)九江332005)
摘要GDI+是圖形設(shè)備接口的高級(jí)實(shí)現(xiàn),非常適合輔助決策時(shí)數(shù)據(jù)圖形化輸出的需要。在選擇最佳保障位置的過(guò)程中,利用GDI+獲取數(shù)據(jù)并輸出結(jié)果,達(dá)到提高裝備保障輔助決策效率效果的目的。
關(guān)鍵詞GDI+; 裝備保障; 輔助決策
Application of GDI+ in Assistant Decision-making in Equipment Indemnification
LIU ZaijiGUO JingLING Tao
(No. 91551 Troops of PLA, Jiujiang332005)
AbstractGDI+ is the advanced implementation of Graphics Device Interface(GDI), and is highly suitable for graphic output in assistant decision-making. In order to improve the efficiency and effect of decision-making in equipment indemnification, GDI+ is used to collect data and output results in the course of deploying a optimum indemnificatory position.
Key WordsGDI+, equipment indemnification, assistant decision-making
Class NumberE92
1引言
.NET Framework為用戶操作圖形提供了GDI+應(yīng)用程序編程接口,GDI+是圖形設(shè)備接口GDI的高級(jí)實(shí)現(xiàn),對(duì)GDI進(jìn)行了優(yōu)化,并添加了許多新特性,如漸變畫刷、獨(dú)立的路徑對(duì)象、矩陣對(duì)象、區(qū)域和多格式圖片支持。GDI+性能良好且易于使用,可直接在Windows窗體和控件上呈現(xiàn)圖形圖像,不用考慮句柄和設(shè)備環(huán)境等概念,用戶在將數(shù)據(jù)信息輸出至屏幕和打印機(jī)時(shí)無(wú)須顧慮具體顯示設(shè)備的細(xì)節(jié),只需要?jiǎng)?chuàng)建一個(gè)Graphics對(duì)象,直接調(diào)用該對(duì)象的方法繪圖即可,非常適合數(shù)據(jù)圖形化輸出的需要[1~3]。
2應(yīng)用實(shí)例
下面以保障點(diǎn)部署位置的選擇決策為例,說(shuō)明GDI+在輔助決策中的應(yīng)用。
根據(jù)保障對(duì)象的地理坐標(biāo)信息來(lái)規(guī)劃保障點(diǎn)部署位置,是一個(gè)求距離函數(shù)最小值的問(wèn)題。一般來(lái)講,可以分為單點(diǎn)部署位置規(guī)劃和多點(diǎn)部署位置規(guī)劃兩種情況。
單點(diǎn)部署位置規(guī)劃是指根據(jù)保障對(duì)象的信息決定出一個(gè)最優(yōu)保障點(diǎn),或者從k個(gè)待選保障點(diǎn)中選出一個(gè)最優(yōu)保障點(diǎn),使其對(duì)各保障對(duì)象的加權(quán)距離之和為最小。
多點(diǎn)部署位置規(guī)劃是指根據(jù)基本保障對(duì)象及各類支援保障對(duì)象的信息計(jì)算出若干個(gè)最優(yōu)保障點(diǎn),或者從k個(gè)待選保障點(diǎn)中選出若干個(gè)最優(yōu)保障點(diǎn),使其對(duì)各自的基本保障對(duì)象及支援保障對(duì)象的加權(quán)距離之和最小。
2.1單點(diǎn)部署位置規(guī)劃
設(shè)保障對(duì)象i的坐標(biāo)為(xi,yi),保障點(diǎn)的坐標(biāo)為(x0,y0),該問(wèn)題即是求函數(shù)(n為保障對(duì)象的個(gè)數(shù)):
(1)
達(dá)到最小時(shí)x0和y0的值。也可轉(zhuǎn)化為求:
(2)
最小時(shí)x0和y0的值。
可解得:
(3)
(4)
利用式(3)和式(4)計(jì)算最優(yōu)保障點(diǎn)坐標(biāo)(x0,y0),其中,fi為保障對(duì)象i的權(quán)重。確定權(quán)重的方法主要有專家估測(cè)法、加權(quán)統(tǒng)計(jì)法、頻數(shù)統(tǒng)計(jì)法等。式(5)是按照保障對(duì)象的重要度、任務(wù)量的統(tǒng)計(jì)平均值相乘得到的權(quán)重值:
fi=重要度×任務(wù)量
(5)
如果是從k個(gè)待選保障點(diǎn)中選出一個(gè)最優(yōu)保障點(diǎn),則只需按式(2)和式(3)分別計(jì)算出各保障點(diǎn)到其保障對(duì)象的加權(quán)距離之和Si,最小者即最優(yōu)保障點(diǎn)。
2.2多點(diǎn)部署位置規(guī)劃
多點(diǎn)部署位置規(guī)劃涉及了不同的支援保障對(duì)象,由于權(quán)重的確定方式不同,距離函數(shù)D的計(jì)算略為復(fù)雜一些:
(6)
fji表示j類保障對(duì)象i的權(quán)重。以同樣的方法可求得:
(7)
(8)
多保障點(diǎn)部署與單保障點(diǎn)部署還有一點(diǎn)區(qū)別就是:各保障點(diǎn)的基本保障對(duì)象和支援保障對(duì)象是不盡相同的。假設(shè)有兩個(gè)保障點(diǎn)M1、M2對(duì)三個(gè)保障對(duì)象N1、N2、N3進(jìn)行保障,對(duì)于M1來(lái)講,N1、N2為基本保障對(duì)象,N3為支援保障對(duì)象,而對(duì)于M2,N2、N3為基本保障對(duì)象,N1為支援保障對(duì)象。針對(duì)這一問(wèn)題,需要重復(fù)使用式(6)~式(8)進(jìn)行計(jì)算。
3利用GDI+輔助決策
以單保障點(diǎn)部署位置優(yōu)選為例,具體實(shí)現(xiàn)步驟如下:
首先,保存用戶輸入的保障對(duì)象信息到數(shù)據(jù)庫(kù),并在DataGridView中顯示出來(lái)[5]。
其次,利用式(3)計(jì)算最優(yōu)保障點(diǎn)的坐標(biāo)。注意地理坐標(biāo)和屏幕坐標(biāo)的相互轉(zhuǎn)換??梢詤⒖枷铝泄?以度.度格式為例):
(9)
(10)
最后,利用GDI+繪制出坐標(biāo)系和保障對(duì)象、最優(yōu)保障點(diǎn)的位置[4]。由于GDI+坐標(biāo)系統(tǒng)的y軸朝下,要時(shí)刻注意數(shù)據(jù)的轉(zhuǎn)換[6]。
為提高直觀性和實(shí)用性,可以將地形圖導(dǎo)入坐標(biāo)系,在保障對(duì)象的位置點(diǎn)擊鼠標(biāo),響應(yīng)單擊鼠標(biāo)的事件,利用MouseEventArgs類的Location屬性獲取保障對(duì)象的坐標(biāo)后進(jìn)行計(jì)算,這樣可以省去屏幕坐標(biāo)和地理坐標(biāo)的互換[7~9]。
導(dǎo)入背景圖的方法如下:
1) 在設(shè)計(jì)頁(yè)添加ofd控件;
2) 在代碼頁(yè)加入下列函數(shù)響應(yīng)“導(dǎo)入地圖”事件:
private void btnImport_Click(object sender, EventArgs e)
{
ofd.InitialDirectory = Application.StartupPath + "";
ofd.ShowDialog();//設(shè)置起始路徑,打開查找對(duì)話框
Bitmap myBitmap = new Bitmap(ofd.FileName);//獲得背景圖
Graphics e = this.PnlImage.CreateGraphics();//在圖像顯示控件PnlImage上創(chuàng)建繪圖類Graphics的對(duì)象e
e.DrawImage(myBitmap, 0, 0);// DrawImage的參數(shù)必須為Image對(duì)象
}
程序運(yùn)行界面如圖1所示。
圖1 單保障點(diǎn)部署位置優(yōu)選運(yùn)行界面
4結(jié)語(yǔ)
裝備保障輔助決策往往涉及較多數(shù)據(jù),數(shù)據(jù)間關(guān)系錯(cuò)綜復(fù)雜,數(shù)據(jù)呈現(xiàn)不夠形象、容易混淆,不利于決策人員迅速有效地獲取信息。因此,有必要利用計(jì)算機(jī)手段來(lái)提高數(shù)據(jù)的計(jì)算、管理和使用效率,GDI+在輸出圖形圖像方面簡(jiǎn)單易用的特點(diǎn),可以較好滿足輔助決策中對(duì)決策結(jié)果快速、直觀呈現(xiàn)的需要[10]。
參 考 文 獻(xiàn)
[1] 李利正,楊世杰.基于GDI+的特殊統(tǒng)計(jì)圖的設(shè)計(jì)[J].科技信息,2007,35:572-574.
[2] 車森,劉海硯,劉輝,等.GDI+在電子地圖可視化中的應(yīng)用[J].測(cè)繪科學(xué),2008,33(1):226-228.
[3] 李乃文,傅游,沈?qū)W利,等.C#程序設(shè)計(jì)實(shí)踐教程[M].北京:清華大學(xué)出版社,2007:295-297.
[4] 何西華,顧小豐.坐標(biāo)變換技術(shù)在Windows GDI設(shè)計(jì)中的應(yīng)用[J].軟件導(dǎo)刊,2008,17(6):48-49.
[5] 吳曉艷.用ADO.NET實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的操作[J].科技信息,2008,13:33-34.
[6] 凌韜,黃志軍,張立平.艦船裝備保障輔助決策系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].艦船電子工程,2008,28(6):154-155,176.
[7] Simon R, Burt H. Professional C#, Second Edition[M]. Birmingham: Wrox Press Inc.,2002:399-419.
[8] 張慶華,陳晨,李月潔,等.ASP.NET 2.0完全自學(xué)手冊(cè)[M].北京:機(jī)械工業(yè)出版社,2007:218-221.
[9] 潘杰,黃志軍.基于.NET平臺(tái)和C#語(yǔ)言的MapObjects二次開發(fā)[J].計(jì)算機(jī)與數(shù)字工程,2005,33(12):107-109.
[10] 王虎,張駿.管理信息系統(tǒng)[M].第2版.武漢:武漢理工大學(xué)出版社,2007:1-2.
中圖分類號(hào)E92
DOI:10.3969/j.issn.1672-9730.2016.01.031
作者簡(jiǎn)介:劉在基,男,工程師,研究方向:指揮自動(dòng)化。郭靜,女,工程師,研究方向:指揮自動(dòng)化。凌韜,男,碩士,研究方向:指揮自動(dòng)化。
*收稿日期:2015年7月4日,修回日期:2015年8月19日