QWT編譯、配置、使用

QWT編譯、配置、使用(VS2012+Qt5.4.2,這裏和VS QT版本都無關,親自測過其他版本的VS和QT都沒有問題,本文檔以VS2012+Qt5.4.2爲例編寫)

(主要參考http://blog.sina.com.cn/s/blog_a6fb6cc90101gks5.html)

QWT,全稱是Qt Widgets for Technical Applications,是一個基於LGPL版權協議的開源項目,可生成各種統計圖。它爲具有技術專業背景的程序提供GUI組件和一組實用類,其目標是以基於2D方式的窗體部件來顯示數據,數據源以數值,數組或一組浮點數等方式提供,輸出方式可以是Curves(曲線),Slider(滾動條),Dials(圓盤),Compasses(儀表盤)等等。該工具庫基於Qt開發,所以也繼承了Qt的跨平臺特性。

QWT源碼獲取:

進入QWT的官方網站http://qwt.sourceforge.net/,找到svn下載地址,如下圖所示,選擇需要的版本,這裏選擇qwt-6.1。


如果你的操作系統沒有安裝svn,請先安裝svn,下載地址在這裏:https://tortoisesvn.net/downloads.html

從SVN倉庫獲得QWT源碼工程,如下圖所示:


編譯

a)   編譯QWT庫

打開vs開發人員命令行(如果從普通cmd進去可能找不到nmake),進入到剛剛svncheckout的目錄,我這裏是E:\Software\qwt-6.1,運行:

qmake qwt.pro;

nmake;

nmake install(默認將編譯的庫安裝到C盤下,這一步也可以不做,後面選擇直接將庫拷貝到Qt相應的目錄下)


b)   編譯例子

進入到examples目錄下,執行:

qmake example.pro;

nmake;


環境配置:

方法1:藉助Qt的環境配置,將qwt-6.1\lib 下的qwt.lib 、qwtd.lib 拷貝QT的lib路徑下;將qwt-6.1\lib下的qwt.bin、qwtd.lib下的qwt.dll、qwtd.dll拷貝到QT的bin路徑下;將qwt-6.1\src下的所有.h文件拷貝到QT的include\QWT路徑下。

方法2:在編譯qwt工程時,使用nmakeinstall將庫和頭文件安裝到C盤,並在環境變量裏設置path環境變量。

進行如上兩種方法之一的配置之後就可運行生成的demo程序了,比如運行qwt-6.1\examples\bin 目錄下的tvplot.exe,畫面如圖:


另外將qwt-6.1\designer\plugins\designer的dll和lib文件拷貝到QT的plugins\disgner目錄下,這樣就可在QT設計師裏使用QWT組件了,如下圖所示:



在VS中使用QWT:

1.   新建一個QT界面程序

2.   工程設置

屬性->配置屬性->鏈接器->輸入,附加依賴項:qwtd.lib

屬性->配置屬性->C/C++->預處理器,預處理器定義:QWT_DLL

     3.舉一個使用QWT組件繪製2維矩陣數據等高線的例子

使用QwtPlotSpectrogram類繪製等高線,類圖:


CIsodoseCurves是數據類,存儲了一個3維矩陣數據,矩陣數據從文件獲取;

Contor是主窗口類,主窗口界面如下圖所示,當點擊繪圖時會繪製3維矩陣數據的一個2維平面的矩陣數據的等高線,並在窗口中顯示,如下圖。



QwtPlotSpectrogramText繼承自QwtPlotSpectrogram類,重新實現了drawContourLines函數,使在繪製登高顯示在登高線附近能繪製登高線的值;

plot繼承自QwtPlot,提供繪製登高線的窗口,每次點繪圖按鈕就會創建一個plot對象。


從畫面效果可以看出QWT繪製的圖形效果還是不錯的。[email protected]

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章