專利名稱:量測圖形文件解析系統(tǒng)及方法
技術領域:
本發(fā)明涉及一種圖形文件處理系統(tǒng)及方法,特別是關于一種STEP量測圖形文件解析系統(tǒng)及方法。
背景技術:
STEP文件是圖形處理CAD系統(tǒng)中經常使用的文件,如果CAD系統(tǒng)不能導入STEP文件重繪產品模型很不方便,則也不能CAD系統(tǒng)中進行文件的交換。在獨立設計的CAD系統(tǒng)中,不能對STEP文件進行導入重繪產品模型,不能導入重繪復雜的產品模型。市面上已發(fā)行的CAD軟件中:由于不能對STEP文件進行導入重繪,需要購買其它軟件把STEP文件進行轉換,增加成本開支。其次,CAD軟件僅能導入重繪簡單的產品模型,例如球體、長方體等,而不能對導入重繪復雜的產品模型。此外,STEP文件導入重繪速度慢,重繪模型不完整,并且沒有對STEP文件重繪的產品模型中的量測圖形進行標注區(qū)分,不方便量測。
發(fā)明內容
鑒于以上內容,有必要提供一種量測圖形文件解析系統(tǒng)及方法,其能夠對能夠對STEP文件進行快速解析、計算、重繪出完整的量測圖形,并對繪制出的量測圖形進行標示區(qū)分,以便使用者更容易找到量測對象所對應的量測圖形。所述的量測圖形文件解析系統(tǒng),該系統(tǒng)運行于計算機中,該計算機包括存儲設備以及顯示設備。該系統(tǒng)包括:關鍵字定義模塊,用于預先定義所需量測圖形的圖元關鍵字以及圖元解析模式,以及將所述圖元關鍵字和圖元解析模式存儲在存儲設備中;文件內容提取模塊,用于從存儲設備中讀取量測圖形文件,以及從量測圖形文件中提取出所有的內容關鍵字及其對應的內容字符串;圖元解析模塊,用于根據(jù)內容關鍵字及其對應的內容字符串解析出組成量測圖形的曲面圖元數(shù)據(jù),以及從曲面圖元數(shù)據(jù)中提取量測圖形的曲面圖元關鍵字;圖形曲面繪制模塊,用于將所述曲面圖元數(shù)據(jù)進行三角形網格化處理繪制成相應量測圖形的曲面,以及采用識別標志標示所述量測圖形的曲面邊界線,并將量測圖形顯示在顯示設備上。所述的量測圖形文件解析方法,應用于計算機中,該計算機包括存儲設備以及顯示設備。該方法包括步驟:預先定義所需量測圖形的圖元關鍵字以及圖元解析模式,并將所述圖元關鍵字和圖元解析模式存儲在存儲設備中;從存儲設備中讀取量測圖形文件,以及從量測圖形文件中提取出所有的內容關鍵字及其對應的內容字符串;根據(jù)內容關鍵字及其對應的內容字符串解析出組成量測圖形的曲面圖元數(shù)據(jù),并從曲面圖元數(shù)據(jù)中提取量測圖形的曲面圖元關鍵字;將所述曲面圖元數(shù)據(jù)進行三角形網格化處理繪制成相應量測圖形的曲面;采用識別標志標示所述量測圖形的曲面邊界線,并將所述量測圖形顯示在顯示設備上。相較于現(xiàn)有技術,本發(fā)明所述的量測圖形文件解析系統(tǒng)及方法能夠對STEP文件進行快速解析、計算、重繪出完整的量測圖形,方便STEP文件在CAD/CAM系統(tǒng)中的數(shù)據(jù)使用和交換,并對繪制出的量測圖形進行標示區(qū)分,以便使用者更容易找到量測對象所對應的量測圖形。
圖1是本發(fā)明量測圖形文件解析系統(tǒng)較佳實施例的架構圖。圖2是一種STEP格式的量測圖形文件的示意圖。圖3是本發(fā)明量測圖形文件解析方法較佳實施例的流程圖。圖4是圖3的步驟S32的細化流程圖。圖5是圖3的步驟S33的細化流程圖。圖6是圖3的步 驟S35的細化流程圖。圖7和圖8是利用曲面三角網格化處理曲面圖元數(shù)據(jù)的示意圖。圖9是將STEP格式的量測圖形文件解析繪制成量測圖形的示意圖。主要元件符號說明計算機1量測圖形文件解析系統(tǒng)10關鍵字定義模塊101文件內容提取模塊102圖元解析模塊103圖形曲面繪制模塊104存儲設備11處理器12顯示設備13如下具體實施方式
將結合上述附圖進一步說明本發(fā)明。
具體實施例方式如圖1所示,是本發(fā)明量測圖形文件解析系統(tǒng)10較佳實施例的架構圖。在本實施例中,所述的量測圖形文件解析系統(tǒng)10安裝并運行于計算機I中,該計算機I可以為一種具有圖形資料處理能力的桌上型計算機或者服務器等。所述的計算機I還包括存儲設備
11、處理器12以及顯示設備13。所述的存儲設備11是一種硬盤、Flash內存、或者為一種外部存儲介質,其用于存儲STEP格式的量測圖形文件(以下簡稱STEP文件)。在本實施中,所述的STEP文件是一種為CAD/CAM系統(tǒng)提供產品模型數(shù)據(jù)交換標準的量測圖形文件,STEP標準已經成為國際公認的CAD/CAM數(shù)據(jù)文件交換全球統(tǒng)一標準,其規(guī)定了惟一的描述和計算機可處理的信息表達形式。如圖2所示,是一種STEP格式量測圖形文件的示意圖。所述STEP文件中的文件內容以每一行的行號(例如#1,.…,#125,...,#133等)為開始符,以每一個分號“;”作為分割符。該分割符分號“;”之前的文件內容作為一個字符串數(shù)據(jù),其中,等于號“=”到左括號“(”之間的字符串作為內容關鍵字,其用于描述圖形的圖元類型;左括號“(”到右括號之間的字符串數(shù)據(jù)作為內容字符串,其用于描述圖形的圖元數(shù)據(jù)信息,例如圖元坐標(4.530716408935491,0.758079218122484,-0.020000000000000)。
在本實施例中,所述的量測圖形文件解析系統(tǒng)10包括關鍵字定義模塊101、文件內容提取模塊102、圖元解析模塊103,以及圖形曲面繪制模塊104。本發(fā)明所稱的模塊是指一種能夠被處理器12所執(zhí)行并且能夠完成固定功能的一系列計算機程序段,其存儲在存儲設備11中。在本實施例中,關于各模塊的功能將在圖3的流程圖中具體描述。如圖3所示,是本發(fā)明量測圖形文件解析方法較佳實施例的流程圖。在本實施例中,本發(fā)明所述的方法能夠對STEP文件進行快速解析、計算、重繪出完整的量測圖形,方便STEP文件在CAD/CAM系統(tǒng)中的數(shù)據(jù)使用和交換,并對繪制出的量測圖形進行標示區(qū)分,以便使用者更容易找到量測對象所對應的量測圖形。步驟S31,關鍵字定義模塊101預先定義所需量測圖形的圖元關鍵字以及圖元解析模式,并將定義好的圖元關鍵字以及圖元解析模式存儲在存儲設備11中。在本實施例中,所述的量測圖形包括由點、線、面、圓等圖元組成的二維或三維圖形,例如圖9所示的長方體,圓柱體、橢圓體。所述的圖元關鍵字用于描述圖元的圖形特征,例如點的關鍵字為POINT,線的關鍵字為“LINE”,以及圓的關鍵字為“CIRCLE”。所述的圖元解析模式用于對圖元關鍵字進行解析,從而得到該圖元關鍵字相對應的圖元,例如,圖元解析模式將圖元關鍵字POINT解析為點,將圖元關鍵字LINE解析為線,以及將圖元關鍵字CIRCLE為圓。步驟S32,文件內容提取模塊102從存儲設備11中讀取一份STEP文件,并從該STEP文件中提取出所有的內容關鍵字及其對應的內容字符串,該步驟S32將在圖4中作詳細描述。參考圖2所示,文件內容提取模塊102將每一行等于號“=”到左括號“(”之間的字符串作為內容關鍵字,以及將左括號到右括號之間的字符串數(shù)據(jù)作為內容字符串。如圖2所示的“CARTESIAN_POINT”作為一個內容關鍵字,以及“(4.530716408935491,
0.758079218122484,-0.020000000000000) ” 作為一個內容字符串。步驟S33,圖元解析模塊103根據(jù)提取的內容關鍵字及其對應的字符串解析出組成產品模型的曲面(shell)圖元數(shù)據(jù),該步驟S33將在圖5中作詳細描述。在本實施例中,所述產品模型也是由點、線、面、圓等圖元組成的二維或三維圖形,所述曲面圖元信息是構成產品模型外表面的點、線、面等圖元的數(shù)據(jù)信息。步驟S34,圖元解析模塊103從曲面圖元數(shù)據(jù)中提取組成產品模型的曲面圖元關鍵字,并標記所述曲面圖元關鍵字的圖元類型。例如,圖元解析模塊103將圖元關鍵字POINT標記為構成曲面的點,圖元關鍵字LINE標記為構成曲面的線,以及圖元關鍵字CIRCLE標記為構成曲面的圓。步驟S35,圖形曲面繪制模塊104將所述曲面圖元數(shù)據(jù)進行三角形網格化處理繪制成相應的圖形曲面,該步驟S35將在圖6中作詳細描述。所述的三角形網格化通常用于計算機輔助設計(computer aided design, CAD)系統(tǒng)或計算機輔助制造(computer aidedmanufacturing, CAM)系統(tǒng)中進行圖形曲面繪制。步驟S36,圖形曲面繪制模塊104根據(jù)曲面圖元類型判斷繪制出的圖形曲面是否為所需量測圖形。若圖形曲面是所需量測圖形,則執(zhí)行步驟S37。若圖形曲面不是所需量測圖形,則流程結束。步驟S37,圖形曲面繪制模塊104采用識別標志標示所述圖形曲面的邊界線,并將標志過的量測圖形顯示在顯示設備13上。在本實施例中,圖形曲面繪制模塊104采用顏色標示圖形曲面的邊界線,例如將圖形曲面的邊界線標示為紅色或藍色等。在其它實施例中,圖形曲面繪制模塊104也可以采用其它識別標志標示圖形曲面的邊界線,例如將圖形曲面的邊界線加粗。參考圖9所示,是根據(jù)STEP文件繪制成的一個產品模型的量測圖形示意圖。其中,量測圖形包括長方體,圓柱體、橢圓體,其分別由點、線、面、圓等圖元組成的二維或三維圖形。如圖4所示,是圖3的步驟S32的細化流程圖。步驟S321,用戶通過計算機I的輸入設備(例如,鍵盤)輸入STEP文件的存儲路徑,例如,輸入存儲路徑D\storage\STEP。步驟S322,文件內容提取模塊102判斷該存儲路徑是否正確。若存儲路徑正確,執(zhí)行步驟S323 ;若存儲路徑不正確,返回步驟S321讓用戶繼續(xù)輸入正確的存儲路徑。步驟S323,文件內容提取模塊102打開存儲在存儲設備11中的STEP文件,并逐行讀取STEP文件的文件內容。步驟S324,文件內容提取模塊102提取每一個分號“;”分割符之前的文件內容作為一個字符串。步驟S325,文件內容提取模塊102將該提取的字符串進行切分,提取等于號“=”到左括號之間的字符串作為內容關鍵字,并將左括號之后的字符串作為內容字符串。步驟S326,文件內容提取模塊102將所有內容關鍵字及其相應的內容字符串存儲在數(shù)組中。步驟S327,文件內容提取模塊102判斷STEP文件的文件內容是否讀取完畢。若文件內容沒有讀取完畢,則返回步驟S323繼續(xù)讀取下一行文件內容;若文件內容已讀取完畢,則流程轉向步驟S33。如圖5所示,是圖3的步驟S33的細化流程圖。步驟S331,圖元解析模塊103從數(shù)組中讀取每一個內容關鍵字。步驟S332,圖元解析模塊103判斷內容關鍵字是否匹配預先定義的圖元關鍵字。若內容關鍵字不匹配預先定義的圖元關鍵字,則返回步驟S331繼續(xù)從數(shù)組中讀取下一個內容關鍵字;若內容關鍵字匹配預先定義的圖元關鍵字,則執(zhí)行步驟S333。步驟S333,圖元解析模塊103根據(jù)內容關鍵字在存儲設備11中查找對應的圖元解析模式。步驟S334,圖元解析模塊103利用圖元解析模式解析內容字符串得到圖元數(shù)據(jù)信息。步驟S335,圖元解析模塊103從解析出的圖元數(shù)據(jù)信息中提取組成實體圖形的曲面圖兀/[目息。如圖6所示,是圖3的步驟S35的細化流程圖。步驟S351,圖形曲面繪制模塊104將圖元數(shù)據(jù)轉換為B樣條曲面得到該B樣條曲面在一個UV參數(shù)平面內的封閉邊界線,并對該封閉邊界線以U直線和V直線進行等距切分得到多個小方格。參考圖7所示,所述的UV參數(shù)平面包括多個小方格,每個小方格包括四個頂點,由于每個頂點的拉升都可導致產品三維模型的形狀扭曲,因此該頂點在業(yè)界又被稱為控制節(jié)點。步驟S352,圖形曲面繪制模塊104將與封閉邊界線無交點的小方格的四個頂點按逆時針順序連接,組成兩個三角形。參考如圖8所示,小方格box4與封閉邊界線無交點,則將頂點P、Q、1、O按照逆時針順序連接組成兩個三角形OQP和0IQ。步驟S353,圖形曲面繪制模塊104對于與封閉邊界線有交點的小方格,將小方格的頂點中落入封閉邊界線上的頂點、小方格與封閉邊界線的交點及封閉邊界線上的邊界點加入一個2D點隊列Q。參考圖8所示,小方格boxl中有封閉邊界線上的邊界點M,小方格boxl與封閉邊界線的交點E、F ;小方格box2中有頂點D落入封閉邊界線內;小方格box2與封閉邊界線的交點E、F、C、G,則將點Μ、E、F、C、D、G加入所述2D點隊列Q中。步驟S354,圖形曲面繪制模塊104讀取2D點隊列Q中的第一點pi及與點pi最近的點p2,plp2組成三角形A的一條邊,并在隊列Q中查找該三角形A的第三點p3。其中,第三點P3的查找原則是邊plp2對應的內角在三角形A的內角中最大,且三角形A的外接圓內沒有隊列Q中的點,并使得三角形A接近于等邊三角形。步驟S355,圖形曲面繪制模塊104根據(jù)上述查找原則在隊列Q中依次查找其它點組成的三角形得到一個三角形隊列T。步驟S356,圖形曲面繪制模塊104根據(jù)上述三角形隊列T繪制出圖形曲面,并將繪制出的圖形曲面顯示在顯示設備13上。以上實施例僅用以說明本發(fā)明的技術方案而非限制,盡管參照以上較佳實施例對本發(fā)明進行了詳細說明,本領域的普通技術人員應當理解,可以對本發(fā)明的技術方案進行修改或者等同替換都不應脫離本發(fā)明技術方案的精神和范圍。
權利要求
1.一種量測圖形文件解析系統(tǒng),該系統(tǒng)運行于計算機中,該計算機包括存儲設備以及顯示設備,其特征在于,所述的系統(tǒng)包括: 關鍵字定義模塊,用于預先定義所需量測圖形的圖元關鍵字以及圖元解析模式,以及將所述圖元關鍵字和圖元解析模式存儲在存儲設備中; 文件內容提取模塊,用于從存儲設備中讀取量測圖形文件,以及從量測圖形文件中提取出所有的內容關鍵字及其對應的內容字符串存儲在數(shù)組中; 圖元解析模塊,用于根據(jù)內容關鍵字及其對應的內容字符串解析出組成量測圖形的曲面圖元數(shù)據(jù),以及從曲面圖元數(shù)據(jù)中提取量測圖形的曲面圖元關鍵字;以及 圖形曲面繪制模塊,用于將所述曲面圖元數(shù)據(jù)進行三角形網格化處理繪制成相應量測圖形的曲面,以及采用識別標志標示所述量測圖形的曲面邊界線,并將所述量測圖形顯示在顯示設備上。
2.按權利要求1所述的量測圖形文件解析系統(tǒng),其特征在于,所述的從量測圖形文件中提取出所有的內容關鍵字及其對應的內容字符串包括步驟: 逐行讀取量測圖形文件的文件內容; 提取每一個分號“;”分割符之前的文件內容作為一個字符串; 將提取的字符串進行切分,提取等于號“=”到左括號之間的字符串作為內容關鍵字,并將左括號之后的字符串作為內容字符串;以及將所有內容關鍵字及其相應的內容字符串存儲在數(shù)組中。
3.按權利要求1所述的量測圖形文件解析系統(tǒng),其特征在于,所述的根據(jù)內容關鍵字及其對應的內容字符串解析出組成量測圖形的曲面圖元數(shù)據(jù)包括步驟: 從數(shù)組中讀取每一個內容關鍵字; 判斷內容關鍵字是否匹配預先定義的圖元關鍵字; 若內容關鍵字不匹配預先定義的圖元關鍵字,則繼續(xù)從數(shù)組中讀取下一個內容關鍵字;或者 若內容關鍵字匹配預先定義的圖元關鍵字,則根據(jù)內容關鍵字在存儲設備中查找對應的圖元解析模式,利用圖元解析模式解析內容字符串得到圖元數(shù)據(jù)信息,以及從解析出的圖元數(shù)據(jù)信息中提取組成量測圖形的曲面圖元數(shù)據(jù)。
4.按權利要求1所述的量測圖形文件解析系統(tǒng),其特征在于,所述的將所述曲面圖元數(shù)據(jù)進行三角形網格化處理繪制成相應量測圖形的曲面包括步驟: 將曲面圖元數(shù)據(jù)轉換為B樣條曲面得到該B樣條曲面在一個UV參數(shù)平面內的封閉邊界線,并對該封閉邊界線以U直線和V直線進行等距切分得到多個小方格; 將與封閉邊界線無交點的小方格的四個頂點按逆時針順序連接,組成兩個三角形;對于與封閉邊界線有交點的小方格,將小方格的頂點中落入封閉邊界線上的頂點、小方格與封閉邊界線的交點及封閉邊界線上的邊界點加入一個隊列中; 讀取隊列中的第一點及與第一點最近的點來組成三角形的一條邊,并在隊列中查找該二角形的第二點; 根據(jù)上述查找原則在隊列中依次查找其它點組成的三角形得到一個三角形隊列;以及 根據(jù)所述三角形隊列繪制出圖形曲面,并將繪制出的圖形曲面顯示在顯示設備上。
5.按權利要求1所述的量測圖形文件解析系統(tǒng),其特征在于,所述的量測圖形文件是一種STEP格式的量測圖形文件,其文件內容包括多個內容關鍵字以及內容字符串,該內容關鍵字用于描述量測圖形的圖元類型的內容關鍵字,該內容字符串用于描述量測圖形的圖元數(shù)據(jù)信息。
6.一種量測圖形文件解析方法,應用于計算機中,該計算機包括存儲設備以及顯示設備,其特征在于,該方法包括步驟: 預先定義所需量測圖形的圖元關鍵字以及圖元解析模式,并將所述圖元關鍵字和圖元解析模式存儲在存儲設備中; 從存儲設備中讀取量測圖形文件,并從量測圖形文件中提取出所有的內容關鍵字及其對應的內容字符串存儲在數(shù)組中; 根據(jù)內容關鍵字及其對應的內容字符串解析出組成量測圖形的曲面圖元數(shù)據(jù),并從曲面圖元數(shù)據(jù)中提取量測圖形的曲面圖元關鍵字; 將所述曲面圖元數(shù)據(jù)進行三角形網格化處理繪制成相應量測圖形的曲面;以及 采用識別標志標示所述量測圖形的曲面邊界線,并將所述量測圖形顯示在顯示設備上。
7.按權利要求6所述的量測圖形文件解析 方法,其特征在于,所述的從量測圖形文件中提取出所有的內容關鍵字及其對應的內容字符串包括步驟: 逐行讀取量測圖形文件的文件內容; 提取每一個分號“;”分割符之前的文件內容作為一個字符串; 將提取的字符串進行切分,提取等于號“=”到左括號之間的字符串作為內容關鍵字,并將左括號之后的字符串作為內容字符串;以及將所有內容關鍵字及其相應的內容字符串存儲在數(shù)組中。
8.按權利要求6所述的量測圖形文件解析方法,其特征在于,所述的根據(jù)內容關鍵字及其對應的內容字符串解析出組成量測圖形的曲面圖元數(shù)據(jù)包括步驟: 從數(shù)組中讀取每一個內容關鍵字; 判斷內容關鍵字是否匹配預先定義的圖元關鍵字; 若內容關鍵字不匹配預先定義的圖元關鍵字,則繼續(xù)從數(shù)組中讀取下一個內容關鍵字;或者 若內容關鍵字匹配預先定義的圖元關鍵字,則根據(jù)內容關鍵字在存儲設備中查找對應的圖元解析模式,利用圖元解析模式解析內容字符串得到圖元數(shù)據(jù)信息,以及從解析出的圖元數(shù)據(jù)信息中提取組成量測圖形的曲面圖元數(shù)據(jù)。
9.按權利要求6所述的量測圖形文件解析方法,其特征在于,所述的將所述曲面圖元數(shù)據(jù)進行三角形網格化處理繪制成相應量測圖形的曲面包括步驟: 將曲面圖元數(shù)據(jù)轉換為B樣條曲面得到該B樣條曲面在一個UV參數(shù)平面內的封閉邊界線,并對該封閉邊界線以U直線和V直線進行等距切分得到多個小方格; 將與封閉邊界線無交點的小方格的四個頂點按逆時針順序連接,組成兩個三角形;對于與封閉邊界線有交點的小方格,將小方格的頂點中落入封閉邊界線上的頂點、小方格與封閉邊界線的交點及封閉邊界線上的邊界點加入一個隊列中; 讀取隊列中的第一點及與第一點最近的點來組成三角形的一條邊,并在隊列中查找該三角形的第三點;根據(jù)上述查找原則在隊列中依次查找其它點組成的三角形得到一個三角形隊列;以及 根據(jù)所述三角形隊列繪制出圖形曲面,并將繪制出的圖形曲面顯示在顯示設備上。
10.按權利要求6所述的量測圖形文件解析方法,其特征在于,所述的量測圖形文件是一種STEP格式的量測圖形文件,其文件內容包括多個內容關鍵字以及內容字符串,該內容關鍵字用于描述量測圖形 的圖元類型的內容關鍵字,該內容字符串用于描述量測圖形的圖元數(shù)據(jù)信息。
全文摘要
一種量測圖形文件解析系統(tǒng)及方法,應用于計算機中,該計算機包括存儲設備以及顯示設備。該方法包括步驟預先定義所需量測圖形的圖元關鍵字以及圖元解析模式;從存儲設備中讀取量測圖形文件,從量測圖形文件中提取出所有的內容關鍵字及其對應的內容字符串;根據(jù)內容關鍵字及其對應的內容字符串解析出組成量測圖形的曲面圖元數(shù)據(jù),從曲面圖元數(shù)據(jù)中提取量測圖形的曲面圖元關鍵字;將曲面圖元數(shù)據(jù)進行三角形網格化處理繪制成相應量測圖形的曲面;采用識別標志標示量測圖形的曲面邊界線。本發(fā)明能夠對STEP文件進行快速解析、繪制出完整的量測圖形,并對繪制出的量測圖形進行標示區(qū)分,以便使用者更容易找到量測對象所對應的量測圖形。
文檔編號G06F17/30GK103092837SQ20111033358
公開日2013年5月8日 申請日期2011年10月28日 優(yōu)先權日2011年10月28日
發(fā)明者張旨光, 吳新元, 聶波 申請人:鴻富錦精密工業(yè)(深圳)有限公司, 鴻海精密工業(yè)股份有限公司