心電圖梯形圖軟件設計

前言:尋找寫作靈感?中文期刊網用心挑選的心電圖梯形圖軟件設計,希望能為您的閱讀和創作帶來靈感,歡迎大家閱讀并分享。

摘要:本文介紹了以梯形圖常用符號作為基本圖形元素的心電圖梯形圖繪制軟件的設計與實現方法,說明了圖形元素的設計思想,列出了圖形元素類的層次關系與結構。該軟件應用面向對象的程序設計方法,以MicrosoftVisualStudio作為開發平臺,以C++語言為主要編程語言,集心電圖顯示、梯形圖的繪制與編輯、心電圖與梯形圖一體化輸出、梯形圖繪制過程回放等功能于一體。為心律失常的梯形圖圖解法的學習研究、資料創作等工作提供便捷的軟件工具。

關鍵詞:心電圖;梯形圖;圖形元素

心電圖的梯形圖(LadderDiagram)是一代心電學大師ThomasLewis在1925年創用的,所以也稱Lewis線。梯形圖以線條圖的方式表示心律失常的特征,它是分析心臟電活動關系的簡單且精確的方法,可以闡明激動起源的部位,傳導途徑和時間,阻滯和干擾等[1]。它是復雜心律失常分析、理解的有力工具,在心電圖學習、分析以及研究方面有著重要的作用。早期的梯形圖繪制,是由繪圖者在心電圖圖紙上直接完成的,后來逐步進化為采用計算機中的圖像編輯軟件來完成。但目前,仍缺乏直接用于繪制梯形圖的專門工具,來取代繁瑣、復雜的繪制過程。因此研發了一套專門的梯形圖繪制軟件,將梯形圖常用符號設計為軟件的基本圖形元素,并將其與數字化的心電圖相結合,輔以連接點結合、自動標尺等輔助功能,為繪制梯形圖提供一個便捷的方法,既可以用作心電圖梯形圖圖解法分析的工具,也可以成為繪制梯形圖資料的工具。

1軟件需求概述

梯形圖繪制軟件的主要功能包括:心電圖數據的讀取和選取、基于圖形元素的梯形圖繪制、梯形圖結果保存及導出圖片等,同時為了提高軟件操作的方便性,實現自動標尺、圖元自動連接等功能。該軟件應用面向對象的程序設計方法,以MicrosoftVisualStudio作為開發平臺,以C++語言為主要編程語言,結合MFC程序庫進行開發。

2關鍵技術實現

2.1圖形元素

梯形圖用到多種圖形符號,包括直線、虛線、折線、箭頭、圓形等,為了使繪制梯形圖更加簡單,軟件中將所需要的符號設計為圖形元素,放置在繪圖工具欄中,通過鼠標拖拽直接將符號添加到視圖中。這些圖形元素在視圖中可以被選擇、移動、縮放、剪切、復制、粘貼、刪除,并且具有線條顏色、線條寬度等屬性,以便于用戶編輯使用。根據面向對象程序設計的原則,利用面向對象程序設計語言所具備的封裝、繼承和多態等特性,按照各個圖形元素的形狀特性,將圖形元素抽象成基類和若干派生類。其中,基類具有標識、線條顏色、線條寬度等成員變量,以及繪制、移動等虛函數,派生圖形元素重載這些虛函數,實現其特定方式的繪制顯示、移動位置等功能。從基類派生出直線、三角形、空心圓、表欄線四個子類。直線類較基類增加了起點、終點等成員變量,線形的圖形元素如正常傳導、中斷、差異性傳導等,除了形狀不同外,其他屬性都與直線類相同,則從直線類派生出來。三角形類中定義邊數、頂點數組等成員變量,矩形、五邊形、六邊形、星形與三角形都是多邊形,只是邊數不同,所以從三角形中派生出來。在三角形類的顯示函數中將頂點數組中的頂點連起來,實現三角形的繪制,其他的多邊形類不需要重載顯示函數,只需改變邊數變量即能完成自身的繪制。不應期(1)、不應期(2)、文本類都由矩形類派生出來。另外,在視圖類中維護圖形元素基類指針數組,將繪制梯形圖時添加的圖形元素指針存儲在數組中,利用基類指針實現數組中圖形元素的顯示、移動等功能,而不必區分圖形元素的具體類型。

2.2圖形元素的連接

繪制梯形圖時,需要將相鄰線形元素的端點連接在一起,用鼠標操作很難精確處理。為了降低對鼠標操作精度的要求,將線形元素的端點以及圓形元素的圓心設置成連接點。以連接點為中心設定一個矩形范圍,使用者在此矩形范圍內按下鼠標左鍵,就將鼠標會自動定位到連接點上,從而選取到對應的端點,如圖2(a)所示。其中“+”為鼠標指針。連接兩個圖形元素的時候,只需要將一個連接點拖拽到另一個連接點的矩形范圍內,如圖2(b)所示。軟件就將兩個連接點連接到一起,實現精確的定位和連接,使圖形元素擺放的更準確、整齊。

2.3操作腳本記錄

定義一個用來記錄操作步驟的類,其主要成員變量有:操作類型(添加、刪除、修改等)、索引(此圖形元素在視圖類中基類指針數組的索引)以及圖形元素指針等,并在視圖類中維護此操作類對象的指針數組,及當前操作在此數組中的索引。在進行圖形元素的添加、修改、刪掉等操作時,同時維護此數組及索引,實現操作腳本的記錄功能,并且通過索引的增減操作,實現撤銷、恢復功能。腳本工具記錄了梯形圖繪制的過程,可查看繪制的每一步驟,也可連續播放腳本記錄,動態展示梯形圖繪制過程,或用做標準繪圖步驟的演示示范。

3結束語

該軟件(如圖3所示)將梯形圖常用符號設計為軟件的基本圖形元素,并加入連接點結合、腳本記錄等輔助功能,避免了繁瑣、復雜的像素式的繪制過程,便于心電圖梯形圖繪制,使其成為心電圖工作者進行心電圖梯形圖圖解法分析、繪制梯形圖資料的有力工具。

參考文獻:

[1]吳祥.心律失常梯形圖解法[M].杭州:浙江大學出版社,2006:11-12,65-68.

[2]張波.梯形圖在心電圖診斷心律失常教學中的應用[J].江漢大學學報(自然科學版),2011;39(2):91-92.

[3]王笑,劉智強,張克華.VC++實現CAD繪圖程序開發的底層關鍵技術研究[J].新技術新工藝,2011;(5):52-54.

[4]楊軍,周家紀.在VC++中實現圖元對象的選取[J].物探化探計算技術,2003;25(2):183-187.

[5]袁楓.Windows圖形編程[M].北京:機械工業出版社,2002.

[6]JeffProsise.MFCWindows程序設計[M].北京:清華大學出版社,2001.

作者:韓旭 單位:康泰醫學系統(秦皇島)股份有限公司研發中心

亚洲精品一二三区-久久