系統(tǒng)需要在不同計算機之間進行參數傳輸,因此網絡通信是必不可少的條件。本系統(tǒng)采用的是客戶/服務器結構的應用程序,這種結構非常適用于分布式處理的計算機網絡環(huán)境。由于系統(tǒng)是面向PC機平臺的應用,因此采用基于TCP/IP協(xié)議的Winsock接口實現(xiàn)網絡間的數據傳輸。
2、虛擬儀表面板對象
2.1面向對象的設計方法
在虛擬儀表的可視化設計過程中,采用了面向對象方法。一個虛擬儀表系統(tǒng)由許多儀表組成,每個虛擬儀表均由面板控制,因此按照面向對象的設計思想將面板分解為具有繼承關系的面板對象(Panel Object),每個面板對象都有各自的獨立屬性和行為。
對于虛擬儀表系統(tǒng),可以將其儀表面板對象劃分為基本的圖形元素和專用面板對象兩類,如圖2所示?;镜膱D形元素即圖元包括直線、矩形、橢圓、多邊形和文本等;專用面板對象包括按鈕、開關、旋鈕、動態(tài)調節(jié)器等面板控制控件和指示燈、數字儀表、指針儀表、圖像顯示器、示波器等面板顯示控件以及其它特殊顯示控件。2.2面板對象數據結構
在虛擬儀表系統(tǒng)中,面板對象是以圖形的方式顯示的,系統(tǒng)允許用戶通過人機交互的方式對儀表對象的屬性參數進行修改。對象的描述包括了定義面板對象各組成部分形狀的幾何坐標數據,對象的屬性如線型、顏色等,還有非幾何的文字或數值,如對象名稱和可見信息等,它對于后處理程序或交互作用的使用是非常有用的。
各種面板對象都具有共同的屬性,因此基于各種面板對象的數據類型和結構,可抽象出通用的基類數據結構。綜上所述,可以如下定義面板對象的基類數據結構:
class base{
m_csObjectName;? 面板對象名稱
m_bVisible;? 可視信息,0——不可見;1—— 可見
m_crPosition;? 面板對象的位置信息及其包圍框大小信息
m_logbrush;? 繪制該面板對象時采用的畫刷,決定填充屬性
m_logpen; ? 繪制該面板對象時采用的畫筆,決定線屬性
};
具體的面板對象的數據結構均繼承基類的數據結構,并在基類的基礎上,根據不同的面板對象的屬性和參數,添加相應的數據類型就可以確定特定的面板對象數據結構。