Site Tools


Rhino 網格設定 - 詳細資訊

解開Rhino網格神秘的設定 - 一般網格問題的解決方案

注意: 本頁刊載了在Rhino中使用網格的詳細資訊,匯集了來自支援論壇、McNeel開發商以及重度Rhino使用者的經驗。截至目前我一直為Rhino5做更新。 –Mitch 16.01.2013

為什麼我到了這一頁?

大概每個曾經使用Rhino的使用者,都會碰到莫名的顯示問題,比如:

  • 表面充滿許多鋸齒,而不是原本期待光滑的曲面。
  • 顯示大型模型時速度慢如蝸牛
  • 神秘的出現在意想不到的地方。
  • 看不見的曲面或是整個物件。

所有這些問題通常都可以追溯到模型的網格或是一般網格設定。

你是說網格嗎? 我沒有做任何網格啊,我只是做了一些NURBS曲面。

嗯,你可能不知道其實你也建立了一些網格。繼續閱讀

為什麼我們需要網格呢?

儘管Rhino是一個NURBs曲面建模軟體,它利用曲面創造出來的多邊網格達到視覺化的效果。所以當您在螢幕上看到著色模型,事實上是由看不見的多邊形網格(“彩現網格”)附著在NURBs曲面上形成的。

為什麼呢? 針對快速著色與彩現,但當網格針對著色速度以及可調整性有其優點時,當然也有缺點。彩現網格最終只能調整到最接近曲面,所以呈現多面的彩現網格以及平滑曲面,一定有縫隙。

在Rhino中建立網格的引擎同時也分析網格建立的草圖、曲率以及EMap等功能,經由Mesh指令 (網格 > 從 NURBs 物件 )直接從NURBs 物件建立“真正”的網格物件。

從Rhino匯出某些多邊形格式 (如.stl檔),同時也會建立網格物件 (於匯出檔案)。 雖然無法在原本的Rhino檔中編輯這些檔案,您有同一群組的網格密度設置,以便控制如何建立它們。

在許多應用程式中,網格以及匯出(.stl)是用來建立真實可編輯網格的功能,其他下游程式通常需要多邊形網格物件一起作業。

所有不同類型的網格物件可以同時在一個檔案中存在,他們並不互相影響,每個也都有自己的設定。 雖然所有網格都是用同一個引擎建立的,但它們之間還是有一些不同。

不同類型的網格

  • 彩現網格建立在NURBS曲面及多邊形曲面上,目的是在使用著色或彩現視圖時的視覺化。使用者無法直接存取或編輯,並“附加”在它們被建立的NURBS物件上。 用ClearAllMeshes指令就可以將它們刪除,RefreshShade指令或是改變設定便可以重新整理。(檔案 > 選項 > 網格)(這個動作可以強迫所有網格重新整理)

在V4版本,您可以利用ExtractRenderMesh指令,將彩現網格轉換為真正可編輯的網格物件。

  • 分析網格類似彩現網格,通常無法編輯也無法從NURBS物件分離。它們有另一組設定,而且不同於彩現網格,他們獨立存在。您可以暫時看到它們,但當您使用控制面板或對話框中的“調整網格”或“預覽”按鈕等分析指令時,在Rhino 5,就像上面提到的彩現網格,您可以將分析網格轉換為“真正”的網格物件,只要用ExtractAnalysisMesh指令就可以了。
  • 由MESH指令建立的網格 是看得到也能夠加以編輯,並且獨立於建立它們的NURBS物件之外。它們本身就是能夠被看而且被編輯的物件,只要用Rhino指令就可以應用網格在它們身上,而且可以匯出多邊形網格格式如STL、DXF、3DS以及OBJ。
  • 在儲存與匯出期間建立的網格 (如.stl),與其他類型網格有相同的網格設定對話方塊。也可以利用設定面板的“預覽”按鈕暫時看到它們,但他們並不會被儲存在原始檔案裡 (除非將其匯出)。
Willem:當匯出某個網格物件時,我總是先建立網格,並在匯出成為想要的格式之前,在平坦著色模式(FlatShade指令)的視圖中檢視。 平坦模式將當前視圖區著色,而且不會將視圖平滑化,所以個別(彩現)的網格面仍是可見的。

網格設定對話方塊

我們為什麼需要網格設定呢? Rhino不是已經夠智慧,不用我告訴他要做什麼?

這是個很好的問題 — 也有可能會引起許多爭議。 我們現在先不討論細節,但如果您要在Rhino中有最理想的網格化效果,你必須了解如何設定還有如何利用這些設定來操作,因此才會有這篇很長的資訊與建議。 別太絕望…

OK 那我是不是什麼都用網格,而且用高解析度就可以解決問題了呢?

事實上並不會 — 可能還會讓事情更糟。網格有點像圖片中的像素,越多像素(網格面),圖像就越細緻(模型),不過也需要更多數據來描述圖像(模型)。 這種情況下到了某個時候數據就會變成一個巨大的負擔,而且這些數據也需要以動態方式呈現(您想要在視圖區旋轉檢視您的著色模型吧?)。您的電腦能夠即時處理大量數據的能力這時候就可能幾乎達到極限了。

所以網格是一種平衡的行為。這個想法是用所需最少量的網格平面,來滿足工作上解析度的需求 - 如此而已。 在Rhino,你需要了解網格系統是如何作業的。這也是為什麼你來到這一頁。 :-)

控制項

對於不同的網格類型,控制項幾乎是完全相同的。 彩現網格(顯示網格)的設定是.3DM檔案屬性的一部分(屬性>網格)。 它們對於整個模型來講是全域設定,但在V4可以依照每個物件重寫。 Rhino提供您兩種標準設定,粗糙、較快平滑、較慢,也有自訂選項,讓您可以做進階設定。

當從一個NURBS物件建立網格,或是匯出往格格是如STL、DXF、3DS、或OBJ,您可以選擇較“簡單”的控制項,就是粗略⇐⇒ 精細的密度滑桿:更少⇐⇒ 更多的多邊形

另外還有更詳細的控制項讓使用者可以做設定。 它們在所有網格類型中幾乎都是相同的,以下為詳細說明。

預設設置

  • 粗糙、較快是彩現網格的預設值– 可以很快速的視覺化,但僅此而已,並不是特別的好。
  • 平滑、較慢 理論上花更長的時間得到更好的解析度。 實際上儘管這花上較長的時間,老實說它還是會在你不想要的地方留下明顯的缺口縫隙,所以建議您能夠嘗試自訂設定。
  • 自訂 允許使用者依據自己的需求,擁有最大的彈性來做網格設定,只需要了解並能夠設置複雜一點的設定即可。
  • 對於分析網格還有網格與匯出 (Mesh and Export)的簡單滑塊設定,大概是中間的平均值。
  • 關於特別的STL匯出對話框的預設設定,通常是上次自訂對話框“邊緣到曲面的最大距離 (max dist edge to srf)”的設定,如果沒有設定的話,就是絕對公差值(檔案>內容> 單位)。

自訂設置

如果您真的想要控制網格過程,請從這裡開始!

7個數值設置及3個核取方塊,每一個都有不同的網格控制方法,有些可以一起運作。 這些設置造成互動或綜合的影響是複雜並不容易了解。 單獨而言他們都在說明中有詳細解釋,所以仔細閱讀此資訊可以知道各自的功能為何。

Rhino Mesh說明頁在此。

快速指南

以下為基本自訂設置的起始,需要您在模型上做一些測試,如果某設定為0或0.0, 表示它處於關閉狀態。

密度 (Rhino 4最新功能) 0.0
最大角度 35
最大長寬比 0.0
最大邊緣長度 0.0
邊緣到曲面最大距離 **
起始四角網格面的最小數目 16
在Rhino 4,您可以嘗試實驗密度設置,它是獨立的。 請參考以下的詳細功能解說。 在Rhino 3沒有密度設定,可以將邊緣到曲面最大距離設定適當的數值。毫米為單位的模型可以嘗試用0.10 to 0.01之間的數字
  • 細分網格 勾選
  • 不對齊接縫頂點不勾選
  • 平面最簡化不勾選
  • 邊緣至曲面最大距離 方法,跟輸入特定數值相比,強制Rhino在曲面不遠處建立網格,在當前檔案裝置裡。 它允許Rhino在較低細節區域建置較少的多邊形,在較高細節區域建置更多多邊形,這樣形成的網格更有效率。
  • 起始四角網格面的最小數目 設置確保平坦區域有足夠的多邊形,看起來才平滑。
Pascal: 我比較喜歡在“最大角度”上設定大一點的數字,而不是這為0(停用),大約是35-45度。 如此在最大距離之下的數字會被稍微細分一點,在某些案例中如果大角度設定決定了較小的物件,但我的做法可以稍微避免這種情形。當物件與全球網格設定之間的差異太大,通常在這些物件上使用網格指令是值得嘗試的。如果需要的話,為物件設定夠寬鬆或是夠細緻的網格,然後只針對這個網格進行彩現,並隱藏或刪除NURBS曲面。非常細小而且重複的細節可以做成很寬鬆的網格,而並不影響影像的品質。
Mitch: 有時候“最大長寬比”我會設定為6,以避免Rhino對長又薄型的物件做網格而形成又長又瘦的三角,這個方法可以將他們分為較短較小的三角。 然而這樣做的代價是更大的檔案以及花費更多網格形成的時間。
Ricardo:我做的是珠寶快速成形。最大距離預設值是0.001,最大角度是12度。較大的角度在最後成品上會顯示出三角的邊。 網格尺寸,在非常複雜的模型中達到30mb。 單位為毫米。
Olivier: 我的工作多與張力結構薄膜結構還有鋼鐵結構有關,我需要很準確的薄膜網格,但鋼鐵管子還有配件通常導致大量的網格。為了應付這兩種最大跟最小的曲率,我總是將最小邊緣長度設限,這樣可以限制彎曲的小細節上的多邊形數量。

主要設定為邊緣至曲面最大距離如果您思考一下,就會知道此值是取決於尺寸大小,因此會有以下問題:

最適當的數值為?

首先,這個數值取決於您要使用的網格設定。一般顯示您的數值可以大一點(較寬鬆),因為您只是在螢幕上視覺化模型,越少的多邊形表示網格形成時間越快,而且在旋轉或翻滾時顯示也越快。

  • 如果您做的是一件電腦大小的物件,0.01mm就可以了。對於製作手錶或珠寶來說,數值就要更小一點,也許是.002mm。大型物件如建築物,數值就大得多了,也許是1mm或是更大。
  • 如果您將為了以後的處理先匯出物件,或是要做非常詳細的彩現,您可能需要根據位置與精確程度,設置得更詳盡些。 對於光固化快速成形部件,0.01mm也許還可以,但以良好機械加工而言,0.001mm - 0.002mm更為貼切。

一開始可能有點複雜,但經過練習之後,您會找到幾個最適合你的標準設定。這些設定能夠被制定到一個巨集或是腳本,以便快速啟動適合您物件所需的所有特徵。

關於密度設定:V4中的密度設定使用一個公式來控制多邊形邊緣與原始曲面的接近度。有效範圍從0 (關閉或忽略)到1,最大密度。 數值越大,所形成的網格就有越多的多邊形。單獨使用時(其餘設定為0),似乎可以建立非常平衡的網格。密度與單位或尺寸規模並無直接關係。

密度數值提供Rhino根據每個物件做內部運算,並得出一個數值,如“邊緣至曲面最大距離”的設定值,這個數值在當前模型的單位中告訴網格產生器任何網格邊緣的中間點,能夠容忍偏離原始曲面的距離。這個運算依據物件大小等其他條件來進行。當密度設定接近於1的時候,這個數值會是比較小。使用者也許永遠不會真的看到最後算出來的數值,而且與每個物件網格化的情況不同,數值也會不同。如果有一個明確的,非0的“邊緣到曲面最大距離”的數值存在此對話方塊中,那麼針對各個物件,網格產生器會選擇比最終的最大距離設定還要小的數字。

已知的網格問題及其弱點

有時您會發現就算有上述的設置指南,您還是無法得到較好的結果。您有可能與一些殘留的曲面、不平均的著色陰影或是不應該切過某個空間的三角網格面。其中有些問題可能是Rhino網格產生器對於某些類型幾何結構的反應。唯一能夠改正的方式可能只有對您的結構做一些改造。

需要留意的地方

雖然這些情況不總是引起網格的問題,但在過去經驗來看它們就是問題點,所以如果碰上任何問題請仔細檢查。

  • 損壞的物件 雖然他們不總是導致網格的問題,這些都是容易追查的,所以是一個容易開始的地方。如果你找到一個壞掉的物件,嘗試把它藏起來,如果您的問題消失了,那麼有可能您需要做的只是修復物件而已(確定使其有效)。
  • 又長又瘦的曲面目前這種曲面對網格產生器來說是有點困難的,越長越薄的曲面就得花上愈多時間而且越難形成。舉一個典型的例子,模型邊緣建立長且連續的小半徑導圓角。如果您覺得花非常久的時間轉網格,那麼可能就是這個原因。
  • 加入的正切線條或弧形被擠壓或旋轉 例:擠出圓角的矩形。這就在內部G1區域形成一個單一曲面,也是網格發生問題的地方。 解決方案:擠出前炸開曲線,或是在G1點上,利用分割 >Isocurves,以單獨加入而不是一個單一相切曲面的方式建立結構。在擠出圓角矩形的案例中,您將會有八個連接的表面,而非一個。
  • 有銳邊(銳角點)的曲面 通常是由CreaseSplitting被設定為No所引起 (在V4或V5的載入項),或是非正切曲面上使用MergeSrfSmooth=No所引起。 在這種情況下,利用多重曲面而不是單一有銳邊的曲面。 利用曲面編輯工具>在銳邊分割曲面或是分割>Isocurves在銳角上將這些曲面分割成不同部分。
  • 帶孔洞的三角形曲面 這是V4中已知的錯誤。 “平面最簡化(Use simple planes)“設定(以上所述),與另一個在中間帶孔洞的三角平面曲面、或是中央帶三角孔洞的面曲面混亂了。問題是這個洞並不在著色模式顯示,就算真的存在。 解決方式是將”平面最簡化((Use simple planes”設定從詳細網格對話框中取消選取。如果您用的是“粗糙、較快”的模式,那麼“平面最簡化”是預設的,不能取消選取,所以您需要轉換至一個自訂模式。

網格診斷 (從Rhino 說明檔)

zh-tw/rhino/meshfaqdetails.txt · Last modified: 2020/08/14 (external edit)