CAD里的重生成(regen/re)是什么意思?重生成對畫圖速度有什么影響?
(重畫(redraw)和重生成(regen)速度,是決定CAD繪圖速度的關(guān)鍵:好象重畫和重生成的操作平時(shí)用得并不多,為什么我們在對比性能時(shí)非要對比這兩個(gè)操作的速度?這兩個(gè)操作的速度對CAD軟件的整體性能會(huì)有什么影響呢?
首先看看幫助里對redraw和regen的說明:
Redraw:當(dāng) BLIPMODE 打開時(shí),將從當(dāng)前視口中刪除編輯命令留下的點(diǎn)標(biāo)記。
Regen:REGEN 在當(dāng)前視口中重生成整個(gè)圖形并重新計(jì)算所有對象的屏幕坐標(biāo)。 還重新創(chuàng)建圖形數(shù)據(jù)庫索引,從而優(yōu)化顯示和對象選擇的性能。
簡單的說redraw和regen就是顯示數(shù)據(jù)和顯示效果的更新,重畫和重生成的速度可以說成軟件的顯示速度,而顯示速度對CAD軟件的性能起著很重要的作用,下面我們通過一些例子在體會(huì)一下。
首先來看redraw。在繪圖和編輯過程中,屏幕上常常留下一些拾取或捕捉的標(biāo)記,如捕捉圓心時(shí)生成的圓心臨時(shí)標(biāo)記,使用對象追蹤時(shí)的追蹤點(diǎn)標(biāo)記等,這些標(biāo)記并不是圖形中的實(shí)體對象,有時(shí)會(huì)使顯示圖面顯得混亂,此時(shí)可以用redraw功能清除這些臨時(shí)標(biāo)記??旖菝钍莚。
我們可以用一個(gè)簡單的例子來觀察一下:打開圓心捕捉,畫一個(gè)圓,回車,重復(fù)畫圓命令,光標(biāo)移動(dòng)到圓周上,圓心處會(huì)出現(xiàn)一個(gè)標(biāo)記。此時(shí)按ESC,圓心標(biāo)記會(huì)遺留在圖面上。輸入r,可以看到圓心標(biāo)記會(huì)消失。
在繪圖過程中經(jīng)常會(huì)自動(dòng)執(zhí)行redraw的操作,畫一個(gè)圓,畫一條LINE線,當(dāng)光標(biāo)移動(dòng)到圓上時(shí)出現(xiàn)圓心標(biāo)記,當(dāng)單擊確定了線的端點(diǎn)位置后,圓心標(biāo)記就會(huì)消失;如果出現(xiàn)圓心標(biāo)記時(shí)按ESC退出命令,圓心標(biāo)記會(huì)顯示圖面上,此時(shí)執(zhí)行縮放、平移等任何調(diào)整視圖的操作或選擇對象時(shí)圓心標(biāo)記都會(huì)消失。
重畫可以簡單地理解為圖面顯示的刷新,在繪圖過程隨時(shí)都在進(jìn)行。雖然每次重畫的時(shí)間很短,幾乎感覺不到,但由于重畫幾乎每時(shí)每刻都在發(fā)生,例如縮放或平移一次可能就會(huì)進(jìn)行多次重畫,因此重畫的速度對CAD軟件的操作速度和顯示流暢性有非常明顯的影響。
再來看一下什么時(shí)候會(huì)要用到regen。當(dāng)圖中有很小的圓一下縮放到很大時(shí),可以明顯看出圓是一個(gè)多邊形,輸入命令re后圓變得光滑。當(dāng)利用滾輪不斷放大或縮小一張圖時(shí),到一定時(shí)侯就會(huì)提示已經(jīng)縮放到極限,此時(shí)執(zhí)行一下re命令,就可以繼續(xù)縮放了。
上面是較常見的需要手動(dòng)輸入命令進(jìn)行重生成的兩種情況,實(shí)際上重生成在繪圖過程中也隨時(shí)在進(jìn)行,例如在打開圖形文件、編輯圖形或改變一些變量時(shí)都會(huì)重新生成顯示數(shù)據(jù)并刷新顯示。先來看打開文件,用ICAD打開一個(gè)稍大的圖形,如1MB以上的文件,在底部狀態(tài)欄的左側(cè)先出現(xiàn)一個(gè)進(jìn)度條,進(jìn)度條走到頭后,在狀態(tài)欄中間又會(huì)出現(xiàn)一個(gè)進(jìn)度條,走完后圖形才完全顯示出來,實(shí)際后一個(gè)進(jìn)度條就是一個(gè)regen的過程,也就是將讀取的圖形數(shù)據(jù)生成顯示數(shù)據(jù)并顯示的過程,打開文件時(shí)有一半時(shí)間是重生成的時(shí)間。如果你用AUTOCAD打開文件從命令行提示可以清楚地看到“正在打開…,正在重生成模型”。再來看一下編輯操作中圖形的重生成,就用剛打開的圖,選擇所有對象,然后用復(fù)制(copy)命令,選定基點(diǎn)后移動(dòng)光標(biāo),確定一個(gè)位移點(diǎn),此時(shí)底部會(huì)出現(xiàn)一個(gè)進(jìn)度條,等待進(jìn)度條走到頭后,命令行會(huì)提示“位移點(diǎn)”來定位另一個(gè)拷貝,這個(gè)進(jìn)度條也是regen的進(jìn)度條,也就是說在復(fù)制的過程中更多的時(shí)間也是花費(fèi)在regen上。
從上面的例子大家可以體會(huì)到重畫和重生成對CAD總體操作性能和顯示流暢性的重要影響,也應(yīng)該理解為什么每次都要專門來比較這兩個(gè)看似用得很少的命令,也應(yīng)該能更清楚如何給用戶來介紹評(píng)測資料中的性能對比數(shù)據(jù)。
打開保存圖的時(shí)間是用戶能明顯感覺到的,但實(shí)際設(shè)計(jì)過程中打開和保存圖所花費(fèi)的時(shí)間并不多,更多的是在繪圖,而重畫和重生成時(shí)時(shí)刻刻都在進(jìn)行,是決定繪圖效率的決定因素。
CAD的DWG圖紙保存的是一些數(shù)據(jù),例如圓的數(shù)據(jù)由圓心坐標(biāo)和半徑構(gòu)成,而顯示器并不認(rèn)識(shí)這些數(shù)據(jù),因此需要講DWG的圖形數(shù)據(jù)轉(zhuǎn)換為顯示器識(shí)別的顯示數(shù)據(jù),這個(gè)過程就叫做重生成。
打開圖紙時(shí)實(shí)際包括兩個(gè)過程:讀取圖形數(shù)據(jù)和重生成過程,對于復(fù)雜圖紙,主要時(shí)間都花在重生成上了。國產(chǎn)CAD軟件,打開圖紙時(shí)直接將這兩個(gè)過程分開了,提供了兩個(gè)進(jìn)度條,打開大圖時(shí)可以看出來,實(shí)際上AutoCAD打開圖紙時(shí)的處理也是一樣的。
另外,CAD為了優(yōu)化性能,在生成顯示數(shù)據(jù)并不會(huì)全部生成而且會(huì)對一些數(shù)據(jù)進(jìn)行優(yōu)化以提高操作速度。重生成時(shí)重點(diǎn)生成當(dāng)前視圖及周邊擴(kuò)展到一定范圍的顯示數(shù)據(jù),因此縮放時(shí)經(jīng)常會(huì)遇到無法繼續(xù)縮小或繼續(xù)放大的提示,這時(shí)就需要輸入RE進(jìn)行重生成。此外,CAD會(huì)根據(jù)圓在圖中的大小顯示成適當(dāng)邊數(shù)的多邊形,當(dāng)圓在視圖中很小時(shí),生成的顯示數(shù)據(jù)就是一個(gè)邊數(shù)很少的多邊形,將一個(gè)剛重生成視圖中很小的圓突然放大,就會(huì)看得很明顯,有不少人也提出這種問題,這時(shí)只需要重生成顯示數(shù)據(jù)就可以了,CAD就會(huì)重新計(jì)算,用合適的邊數(shù)來顯示圓。
還有一個(gè)重畫(redraw),很多人,包括我一開始也不清楚重畫和重生成的區(qū)別,后來才明白,重畫主要是為了清理圖面上的一些臨時(shí)點(diǎn)或標(biāo)記,在通常情況不必采用,只有在blipmode打開時(shí)重畫才有真正意義。
了解內(nèi)部原理顯然對大家理解CAD操作中遇到的一些現(xiàn)象會(huì)有幫助。
?
?
?
評(píng)論
查看更多