組態王圖形顯示與動畫功能應用
2 組態王的圖形及動畫功能
組態王工具箱中的基本圖素:直線、扇形、填充圖形(封閉圖形,內部可填充色彩,有:橢圓和圓角矩形)、折線、管道、多邊形、文本、按鈕和點位圖,它們均具有圖形及動畫功能。它們中填充圖形類動畫連接框如圖1所表示,其余圖素的動畫連接框結構相同,只是某些動畫屬性選項略有差異。
圖1 填充圖形類(橢圓和圓角矩形)動畫連接框
從圖1中可知填充類圖形(橢圓和圓角矩形)無屬性文本色和輸出值各選項,而基本圖素之一的文本無屬性變化中的線屬性和填充屬性,也無位置與大小變化中的填充、縮放和旋轉屬性,卻有屬性文本色和輸出值各選項,各對象各有特點。什么是動畫連接?所謂“動畫連接”就是建立畫面的圖素與數據庫變量的對應關系。建立動畫連接后,根據數據庫中變量的變化,圖形對象可以按動畫連接的要求進行改變。數據庫中的變量可以是內存變量,也可以是I/O變量。I/O變量是工業控制過程和科學實驗中的各種物理量。若按物理量的數學形態分類有:數字式開關量和連續式物理量;若按物理量的物理形態分類有:開關的通斷、位移、速度、加速度、質量、大小、顏色、電壓、電流、溫度、壓力、流量、液位、物質濃度、亮度、酸堿度、種類繁多的化學及生物物理量。這樣,工業控制過程和科學實驗五彩繽紛的客觀世界就可呈現在計算機屏幕上,這是人們夢寐以求的,因為“一幅畫可抵得上千言萬語”。
3 組態王的圖形及動畫功能設計范例
例1 “屬性變化”、“位置與大小變化”、組合圖素、合成單元和圖形工具命令語言的簡單應用。
啟動組態王工程管理器,新建一個工程。圖形畫面如圖2(運行時)所示,畫面底版用圓角矩形制作,并應用了過渡色。
圖2 圖形功能設計范例畫面(運行時)
(1)填充與自制棒圖 選取線屬性(表達式取常數0,運行時線的粗細和顏色不隨時間而變)、填充屬性(動畫連接表達式取填充0,事先定義的變量,內存實數,要分段設置畫刷和顏色,不妨設:0—紅,20—黃,40—綠,60—青,80—蘭,100—紫色。運行時調節游標,可得變色棒圖)和填充(表達式取:填充0),用圖庫中的游標(表達式取:填充0)控制。
(2)縮放 選取線屬性(表達式取0)、填充屬性(表達式取0)和縮放(表達式取:縮放0),用游標控制。
(3)旋轉0 選取旋轉(表達式取:旋轉0),用游標控制。
(4)旋轉1 選取旋轉(表達式取:旋轉1),用啟動和停止按鈕(它們用橢圓和文本制成組合圖素)控制。啟動和停止按鈕彈起時的命令語言分別為:
\本站點旋轉啟停0=1;
和
\本站點旋轉啟停0=0;
畫面命令語言顯示時的代碼為:
本站點旋轉1=10;/*剛進入運行時,圖形初始轉角為36度*/
存在時的代碼為:
if(\本站點旋轉啟停0==1)\本站點旋轉1=\本站點旋轉1+1;else \本站點旋轉1=\本站點旋轉1;if(\本站點旋轉1==101)\本站點旋轉1=0;
(5)水平移動和垂直移動 可以將水平移動連接和垂直移動連接結合使用,選取水平移動(表達式取:水平移動0)和垂直移動(表達式取:垂直移動0),分別用兩個游標控制。
(6)自制軟按鈕和軟燈 軟燈用橢圓制作,填充屬性(表達式取:自制軟按鈕0),自制軟按鈕用圓角矩形和文本制成合成單元,應該注意圓角矩形在合成單元前就要動畫連接。“按下時”的命令語言:
\本站點自制軟按鈕0=1;/*軟燈的填充屬性閾值為1。也可用100賦值,這時填充屬性閾值為100(默認值)*/
彈起時的命令語言:
\本站點自制軟按鈕0=0;
例2 模擬值輸入連接 。過程控制系統中設定溫度(期望值)在線實時運行修改。
圖形畫面仍如圖2所示。模擬輸入圖形對象為用圓角矩形和文本制成的合成單元,應該注意圓角矩形在合成單元前就要動畫連接。運行時,模擬值鍵盤輸入對話框如圖3所示。
圖3 模擬值鍵盤輸入對話框(運行時)
例3 滑動桿(滑桿、游標)輸入連接和文本值輸出的簡單應用。首先定義變量:水平滑動桿輸入坐標X設定0,垂直滑動桿輸入坐標Y設定0,內存實數。用合成單元技術建立一個XY坐標系,在原點設置具有水平和垂直兩種滑動桿輸入連接性能的圓,以此圓作為滑動桿,并設置兩個接收文本,以顯示XY坐標值,文本值輸出取模擬值輸出。圖形畫面仍如圖1所示。
例4 特殊動畫連接閃爍和隱含的簡單應用:燈光的閃爍,位圖一棵樹及“退出運行系統”按鈕的隱含。首先定義變量:閃爍0,隱含0,內存離散。圖形畫面仍如圖1所示。
(1)燈光的閃爍 8條光線選擇閃爍連接,閃爍條件取“閃爍0==1;”,閃爍速度500ms,其中左上、右上、左下和右下4條光線在組態王開發系統中設置時只能水平放置,故還要進行旋轉連接,表達式取12.5(對應45度),同時要考慮順時針或反時針方向問題。由于工具箱中按鈕的字體不能任意放大,故用合成單元技術將按鈕與文本建立成一個“閃爍/停止”按鈕,其“按下時”的程序碼為:
/*若原來不閃爍,則按下“閃爍/停止按鈕”就開始閃爍;反之,按下“閃爍/停止按鈕”就停止閃爍,如此等等*/
if(\本站點閃爍0==0)\本站點閃爍0=1;else \本站點閃爍0=0;
(2)位圖一棵樹及“退出運行系統”按鈕的隱含 位圖一棵樹取自WINDOWS圖片/自然界,可通過WORD編輯等方法獲取,“退出運行系統”按鈕后面要敘述。隱含條件取“隱含0==1;”。用合成單元技術建立一個“隱含/復現”按鈕,其“按下時”的命令語言代碼為:
/*若原來不隱含,則按下“隱含/復現按鈕”就開始隱含;反之,按下“隱含/復現按鈕”就停止隱含而復現,如此等等*/
if(\本站點隱含0==0)\本站點隱含0=1;else \本站點HMTX隱含0=0;
例5 組態王圖庫中的元素稱為“圖庫精靈”。之所以稱為“精靈”,是因為它們具有自己的“生命”。圖庫精靈在外觀上類似于組合圖素,但內嵌了豐富的動畫連接和邏輯控制。用戶可以根據自己工程的需要,將一些需要重復使用的復雜圖形做成圖庫精靈,加入到圖庫管理器中。組態王提供兩種方式供用戶自制圖庫。一種是編制程序方式,即用戶利用亞控公司提供的圖庫開發包,自己利用VC開發工具和組態王開發系統中生成的精靈描述文本制作,生成*.dll文件。關于該種方式,詳見亞控公司提供的圖庫開發包。另一種是利用組態王開發系統中建立動畫連接并合成圖素的方式直接創建圖庫精靈。在此將對第二種方式做詳細說明。現舉一個制作圖庫精靈的例子。畫面上一個按鈕,代表一個開關,開關打開時按鈕為綠色,開關關閉后變為紅色,并用這個按鈕控制一個軟燈。所設計出的圖形畫面仍如圖1所示。
在設計時,首先要用合成單元技術制作一個綠色按鈕(開)和一個紅色按鈕(關),用一個變量(取為:圖庫精靈開關0)和它們連接,紅色按鈕的隱含條件表達式為:“圖庫精靈開關0==1;”,“彈起時”的命令語言代碼;
\本站點HMTX圖庫精靈開關0=1;
綠色按鈕的隱含條件表達式為:“HMTX圖庫精靈開關0==0;”,“彈起時”的命令語言代碼;
\本站點HMTX圖庫精靈開關0=0;
最后把它們疊在一起,并制成合成單元,紅色按鈕在上面(圖3-61中顯示為“開”,因為已經用鼠標按下彈起了一次),這就是“按鈕精靈”。由于兩個按鈕大小相同,疊在一起并制成合成單元較復雜,方法為:疊在一起以后,先將底板(非原始底板)移動到別處,激活紅色按鈕,將其“圖素后移”,按下ctrl鍵,激活綠色按鈕,將綠色按鈕“圖素后移”,紅色按鈕又在上面,而后合成單元。松開ctrl鍵,打開圖庫,經圖庫管理器/編輯,創建新圖庫,取名“自制圖庫”,關閉圖庫管理器,激活合成按鈕,經標題條圖庫/創建圖庫精靈/新的圖庫圖名稱,取名“自制按鈕0”,確認后,出現圖庫管理器,選取其中的“自制圖庫”,將“按鈕精靈”放到“自制圖庫”中。如此,制作“自制圖庫” 和“按鈕精靈”全部完畢。這樣工程人員只要把“按鈕精靈”從圖庫拷貝到畫面上,它就具有了“打開為綠色,關閉為紅色”的按鈕功能。
圖庫中的幾乎每個精靈都有類似的已經定義的動畫連接,所以使用圖庫精靈將極大地提高設計界面的效率。例如使用第一種方式即用VC編制程序制作的圖庫精靈具有自動控制圖形外觀和進行變量設置等的向導功能。用第二種方式制作的圖庫精靈放到畫面上以后,雙擊之,出現“內容替換”框,可以根據用戶具體需求改變變量名稱,替換動畫連接屬性。這是第二種方式“圖庫精靈”的使用特點。
圖1中,軟燈用4個矩形塊組成,設置“填充”屬性,再同大矩形塊合成單元。
例6 運行系統中三個畫面的切換與運行畫面的全部退出。設當前畫面“圖形功能HMTX”與隱含畫面“多功能IO卡HMIO”及畫面“可編程控制器PLCHMPLC”相互之間要切換,并具有退出“組態王運行系統”功能。所設計出的圖形畫面仍如圖1所示。
首先用合成單元技術制作4個按鈕:退出本畫面、IO卡畫面、PLC畫面和退出運行系統按鈕,它們的“彈起時”命令語言代碼分別為:
“ClosePicture("圖形功能HMTX");”,“ ShowPicture("多功能IO卡HMIO");”,“ShowPicture("可編程三菱PLCHMPLC");”,“ Exit(0);”。
退出運行系統畫面按鈕還設置了隱含屬性,隱含條件表達式取“隱含0==1;”(見例4)。代碼“ Exit(0);”:若改成“ Exit(1);”,表示計算機總安全關機;若改成“ Exit(2);”,表示退出運行系統,Windows重新啟動。當退出運行系統按鈕被隱含時,鼠標操作失效;但當用別的圖形遮蓋時,即使合成單元,鼠標操作也不失效。在進行畫面安全操作性能設計時要考慮這些因素。
4 結束語
本文所舉的幾個圖形設計范例均是最簡單的,但卻是最基本的,而復雜的圖形畫面和動畫一般是這些基本功能的復合和嵌套。圖形和文字處理功能是當今計算機日益普及的基石。組態王支持各種I/O卡、PLC和智能化儀表及電器,可以預料帶有網卡的家用電器也將不斷涌現,這樣,基于PC和Windows的五彩繽紛的組態畫面將工廠、學校和家庭的大大小小的設備融合在一起,進而同其它Windows應用程序畫面融合在一起。
c++相關文章:c++教程
評論