風洞模型表面壓力分布三維顯示技術
模型的顏色要經(jīng)過顏色表現(xiàn)確認、頂點緩沖區(qū)填充和著色模式的選擇3 個步驟渲染。在Direct3D中顏色使用RGB 表示,需要指定紅、綠、藍三原色的值,這3 個分量的混合顏色就是最終顏色。使用D3DCOLOR 類型結(jié)構表示RGB 數(shù)據(jù)。該類型被分成4 個8-bit 的部分,分別用于存儲顏色的分量。
每種顏色分量都使用1 個字節(jié)表示,所以每種顏色分量的亮度范圍為0~255。正確地填寫D3DCOLOR結(jié)構中的各個分量需要進行位操作。D3D 提供了一個宏D3DCOLOR_ARGB,每個分量需要在0~255。
D3Dcolor brightRed = D3DCOLOR_ARGB(255, 255, 0, 0);D3Dcolorsome Color = D3DCOLOR_ARGB(255, 144, 87,201);幾何體的顏色由其頂點的顏色決定,必須向頂點數(shù)據(jù)結(jié)構中添加顏色成員。因為Direct3D 使用32-bit 的整型數(shù)表示顏色。另外,當使用頂點著色器(Vertex Shader)時,將會使用四元向量描述頂點顏色,這是一個128-bit 的顏色。
在光柵化和通過頂點顏色計算像素顏色時將著色。在平滑模式下,頂點的顏色以線形插值方式渲染表面。在Direct3D 中可使用如下設置著色模式:
Device->SetRenderState(D3DRS_SHADEMODE,D3DSHADE_FLAT);Device->SetRenderState(D3DRS_SHADEMODE,D3DSHADE_GOURAUD);通過讀取X 格式的模型文件,設置模型表面壓力孔分布點位置,導入測壓原始數(shù)據(jù),對數(shù)據(jù)范圍進行顏色設置,能觀察模型表面的壓力大小?;陬伾秩镜?a class="contentlabel" href="http://2s4d.com/news/listbylabel/label/壓力">壓力分步顯示如圖4、圖5。圖中的綠色表示0~0.09 的數(shù)值,黃色表示0.09~0.11 的數(shù)值,藍色表示0.11~0.15 的數(shù)值,紅色表示0.15~0.24的數(shù)值,棕色表示0.24~0.99 的數(shù)值。壓力孔之間的顏色溶解可以選擇是否顯示。垂直模型表面的紅色長線為壓力值的法線。壓力值越大,法線越長。
3 結(jié)束語
試驗證明,該系統(tǒng)能夠較好地直觀展示出模型表面壓力數(shù)值分布,使用人員能直觀地觀察出模型表面壓力大小。該系統(tǒng)提高了分析數(shù)據(jù)的效率,為進一步分析數(shù)據(jù)提供了方向。
評論