本文通過 Windows 開發(fā)平臺和 Qt creator5.4 版本+Min GW4.9 調(diào)試器及 Libre CAD開發(fā)工具來編寫 CAD/CAM 一體化上位機(jī)軟件。由于當(dāng)前 PC 機(jī)主流操作系統(tǒng)是Windows,且 PC 軟硬件系統(tǒng)性能不斷提高,價格持續(xù)下降,因此本 CAD/CAM 系統(tǒng)是基于 Windows 平臺開發(fā)運行的。Qt 是由挪威 Troll Tech 公司于 1991 年開發(fā)的跨平臺 C++圖形用戶界面應(yīng)用程序開發(fā)框架[41]。Qt Creator 是一個用于 Qt 開發(fā)的輕量級跨平臺集成開發(fā)環(huán)境,它支持跨平臺開發(fā)設(shè)計的集成開發(fā)環(huán)境(IDE),且使新接觸 Qt語言的開發(fā)人員能夠快速入門,主要功能特點可以概括為以下幾個方面: (1)面向?qū)ο?/span>
QT 支持模塊化設(shè)計,它的組件、元素能夠被多次重復(fù)使用。一個組件不需要知道其具體的內(nèi)容和功能,就可以利用信號(signal)和槽(slot)來與外界進(jìn)行通信和交流。而且所有 QT 的組件都可以通過繼承來獲得使用。
(2)組件間的相互通信
QT 提供的信號(signal)與槽(slot)不僅是一種非常安全可靠的通信方式,而且還支持回調(diào),并且在兩個對象對彼此并不了解的情況下,這兩個對象仍然可以進(jìn)行合作和交流,這一點使得 QT 合適于真正的組件式編程。
(3)用戶自定義組件 其它的開發(fā)工具包在應(yīng)用時都存在一個普遍的問題,使用者在使用時經(jīng)常會發(fā)現(xiàn)沒有自己需要的組件,對于一些自定義的組件,使用者并不知道組件的具體內(nèi)容,對組件不能了解的很清楚。而在 QT 中,使用者能夠很方便的創(chuàng)建自己想要的組件,而且生成自定義組件的過程也非常簡單,并且可以對組件的信息進(jìn)行修改,而且 QT 還包含了大量用來創(chuàng)建專業(yè)界面所需要的組件,比如按鈕、滾動條等。 (4)方便性 QT 是一個具有跨平臺特性的圖形用戶界面(GUI)工具包,為了使開發(fā)人員在編程時更加方便,QT 包含了大量的類,這些類能夠幫助開發(fā)人員在進(jìn)行文件處理、時間處理等問題時避免大量的麻煩[42~43]。 (5)豐富的 API 函數(shù) 為了滿足廣大用戶的需求,QT 的 API 提供了 250 多個 C++類,該類大部分用于專門的圖形用戶界面(GUI)開發(fā),QT 還提供了基于模板的初始化、常用表達(dá)式解析、日期/時間類等功能。通過對這些類的利用,可以建立和生成不同的功能,實現(xiàn)QT 的通用化[44~45]。 (6)優(yōu)越的繪畫功能 QT 的繪畫工具 QPainter 類可以很容易在各個系統(tǒng)平臺上實現(xiàn)對文本的旋轉(zhuǎn)、像素的映射及圖形潤色等功能。另外 QT 提供的 QGLWidget 類支持 2D/3D 圖形的繪制。而且 QGLWidget 類的使用方法和普通的 QT 組件一樣非常方便。這比純粹的用Open GL 做的 3D 圖形更好。QT 的這一特點非常適合進(jìn)行數(shù)控系統(tǒng)梯形圖的繪制以及系統(tǒng)圖形顯示界面的繪制。良好的 CAD/CAM 一體化上位機(jī)軟件操作界面一般應(yīng)具有以下的幾個方面的特點: (1)功能足夠強(qiáng)大,能夠基本滿足 CAD/CAM 模塊的功能; (2)方便性,操作的界面應(yīng)簡單美觀,且能夠?qū)崟r反饋用戶交互的操作; (3)安全可靠性,能夠?qū)﹀e誤的信息進(jìn)行自適應(yīng)診斷,不死機(jī); (4)動態(tài)性和可擴(kuò)充性。