出版時間:2009年05月 出版社:電子工業(yè)出版社 作者:呂希奎,周小平編著 頁數(shù):696
Tag標(biāo)簽:無
前言
可視化技術(shù)作為圖形生成和圖像理解相結(jié)合的一種新技術(shù),賦予人們一種仿真的、三維的并且具有實時交互的能力,這樣人們可以在三維圖形世界中用以前不可想象的手段來獲取信息或發(fā)揮自己創(chuàng)造性的思維,尤其是在可視化技術(shù)基礎(chǔ)發(fā)展起來的虛擬現(xiàn)實技術(shù)、三維仿真技術(shù)及科學(xué)計算可視化技術(shù),它們的發(fā)展及其相互結(jié)合使人類認(rèn)識和駕馭世界的技能更是得到了極大延伸。OpenGL(Open Graphics Library,開放性圖形庫)作為一個性能優(yōu)越的圖形應(yīng)用程序設(shè)計界面(API)而適合于廣泛的計算機環(huán)境,從個人計算機到工作站和超級計算機,OpenGL都能實現(xiàn)高性能的三維圖形功能。由于許多在計算機界具有領(lǐng)導(dǎo)地位的計算機公司紛紛采用OpenGL作為三維圖形應(yīng)用程序設(shè)計界面,OpenGL應(yīng)用程序具有廣泛的可移植性,已成為目前的三維圖形開發(fā)標(biāo)準(zhǔn),其自誕生至今已催生了各種計算機平臺及設(shè)備上的數(shù)千優(yōu)秀應(yīng)用程序。進(jìn)入21世紀(jì)以來,新科技革命迅猛發(fā)展,遙感技術(shù)、數(shù)字?jǐn)z影測量技術(shù)、虛擬現(xiàn)實技術(shù)等高新技術(shù)取得了長足的發(fā)展。航空航天遙感技術(shù)的進(jìn)步提供了快速獲取信息的手段。數(shù)字?jǐn)z影測量技術(shù)除了能提供數(shù)字線劃圖外,還能生產(chǎn)正射影像圖、數(shù)字高程模型等,這些數(shù)字?jǐn)z影測量產(chǎn)品所包含的信息量和信息類型已遠(yuǎn)遠(yuǎn)超過了傳統(tǒng)的等高線地形圖。如果利用OpenGL優(yōu)秀的三維圖形功能,結(jié)合現(xiàn)代信息技術(shù),建立一個逼真顯示的三維可視化地理環(huán)境,使工程師可以從二維平面圖中得以解放直接進(jìn)入三維世界,實現(xiàn)直接在三維環(huán)境中進(jìn)行工程設(shè)計,實時建立工程的三維模型,達(dá)到所見即所得的設(shè)計效果,從根本上改變重復(fù)無味的設(shè)計工作方式,使設(shè)計工作變得趣味盎然,對提高設(shè)計質(zhì)量和加快設(shè)計速度有著巨大的作用。
內(nèi)容概要
《實戰(zhàn)OpenGL三維可視化系統(tǒng)開發(fā)與源碼精解》以“鐵路三維可視化系統(tǒng)”實例作為全書的主線,以循序漸進(jìn)的講解方式,通過實際應(yīng)用系統(tǒng)來講解OpenGL在實際三維可視化系統(tǒng)開發(fā)中所應(yīng)用到的編程方法、技術(shù)和技巧。系統(tǒng)包括大規(guī)模三維地形可視化系統(tǒng)、三維線路設(shè)計系統(tǒng)、三維場景漫游系統(tǒng)、第三方模型(3DS、DXF)管理和應(yīng)用系統(tǒng)、紋理管理和應(yīng)用系統(tǒng)、多媒體輸出系統(tǒng)(三維動畫錄制、圖像序列錄制、打印輸出、導(dǎo)出到AutoCAD等外部模型)。內(nèi)容涵蓋了OpenGL程序框架、OpenGL幾何模型、坐標(biāo)變換、紋理映射、材質(zhì)、計算機動畫技術(shù)、雙目立體真三維、OpenGL擴展應(yīng)用、OpenGL圖像處理、三維圖形學(xué)基礎(chǔ)、攝像漫游、構(gòu)造天空和地形、模型載入、高級紋理映射、圖元處理、OpenGL緩沖區(qū)、顯示列表、空間信息查詢、基于OpenGL和遙感圖像的地形三維動態(tài)顯示技術(shù)、Oracle 數(shù)據(jù)庫編程、Oracle OCI編程技術(shù)等多個方面?! 秾崙?zhàn)OpenGL三維可視化系統(tǒng)開發(fā)與源碼精解》附帶光盤1張,內(nèi)容為本書實例的源文件、系統(tǒng)運行所需要的影像紋理和數(shù)字高程模型文件;此外,還包括程序功能運行動畫和OCI程序示例?! 秾崙?zhàn)OpenGL三維可視化系統(tǒng)開發(fā)與源碼精解》講解清晰,言簡意賅,書中所有程序均取材于實際系統(tǒng),全部具有詳細(xì)注釋,具有極高的可復(fù)用價值,可直接應(yīng)用于其他相關(guān)系統(tǒng)開發(fā)中,幫助讀者快速進(jìn)入三維可視化設(shè)計開發(fā)領(lǐng)域?!秾崙?zhàn)OpenGL三維可視化系統(tǒng)開發(fā)與源碼精解》深入淺出、內(nèi)容廣泛,既可以作為從事可視化系統(tǒng)、虛擬現(xiàn)實、計算機圖形學(xué)研究及其他圖形應(yīng)用程序開發(fā)的工作人員的必備用書,也可作為大學(xué)相關(guān)專業(yè)師生的參考書,還可作為OpenGL三維圖形編程的培訓(xùn)教程,或供其他相關(guān)專業(yè)人士和計算機愛好者閱讀。
作者簡介
呂希奎,博士,畢業(yè)于西南交通大學(xué)道路與鐵道工程專業(yè)。主要從事道路勘測設(shè)計現(xiàn)代技術(shù)、城市軌道交通、選線設(shè)計理論、工程信息技術(shù)與虛擬環(huán)境仿真技術(shù)的研究,已發(fā)表及被錄用論文近20篇,導(dǎo)師是第二屆全國教學(xué)名師易思蓉教授。先后參與國家自然科學(xué)基金“基于GIS的虛擬環(huán)境選線系統(tǒng)智能環(huán)境建模方法及應(yīng)用”(0278082)、鐵道部“高速磁懸浮鐵路線路平縱面技術(shù)參數(shù)初步研究”、 國家863“高速磁懸浮鐵路線路設(shè)計參數(shù)研究”項目的研究。3年軟件公司的工作經(jīng)驗,高級程序員,具有多年的OpenGL、Oracle數(shù)據(jù)庫開發(fā)經(jīng)驗。目前正在主持“交通安全與控制”河北省重點實驗室開放課題資助項目(城市軌道交通三維可視化規(guī)劃與設(shè)計系統(tǒng),211001)研究。
書籍目錄
第1篇 系統(tǒng)開發(fā)基礎(chǔ)第1章 三維圖形世界 31.1 計算機三維圖形技術(shù)的發(fā)展 41.2 科學(xué)計算可視化技術(shù) 41.3 三維可視化工程設(shè)計 61.4 本書的適用對象 71.5 全書概覽 7第2章 OpenGL概述 92.1 OpenGL概念建立 102.1.1 OpenGL基本理解 102.1.2 OpenGL的特點及功能 102.1.3 OpenGL工作流程 122.1.4 OpenGL繪圖流程 132.2 OpenGL的版本和擴展 142.2.1 OpenGL版本 142.2.2 OpenGL擴展 162.3 OpenGL編程基礎(chǔ) 202.3.1 OpenGL數(shù)據(jù)類型 202.3.2 OpenGL庫函數(shù) 212.3.3 OpenGL句法 222.3.4 OpenGL狀態(tài)變量 242.3.5 OpenGL變換 252.4 OpenGL程序框架建立 332.4.1 OpenGL像素格式 342.4.2 著色描述表 362.4.3 設(shè)置像素格式 372.4.4 創(chuàng)建著色描述表 382.4.5 創(chuàng)建Visual C++程序 412.5 本章小結(jié) 48第3章 Oracle與OCI技術(shù)及編程基礎(chǔ) 493.1 Oracle數(shù)據(jù)庫簡介 503.2 Oracle數(shù)據(jù)庫的安裝 513.3 Oracle數(shù)據(jù)類型 553.4 Oracle編程接口 573.4.1 ADO開發(fā)接口 583.4.2 Pro* C/C++ 593.4.3 Oracle OCI 603.4.4 ADO、Pro*C/C++、Oracle OCI的對比分析 613.5 OCI編程 623.5.1 OCI編程基礎(chǔ) 623.5.2 OCI數(shù)據(jù)結(jié)構(gòu) 623.5.3 OCI程序的基本結(jié)構(gòu) 633.5.4 OCI執(zhí)行SQL的步驟 643.6 VC ++ 6.0下OCI編程實例 663.6.1 數(shù)據(jù)的準(zhǔn)備 663.6.2 建立工程 673.6.3 加入OCI的頭文件與庫文件 683.6.4 在VC中應(yīng)用OCI編程 693.7 本章小結(jié) 75第2篇 大規(guī)模地形三維可視化系統(tǒng)設(shè)計與實現(xiàn)第4章 地形三維可視化系統(tǒng)框架與OCI類模塊設(shè)計 794.1 系統(tǒng)程序框架建立 804.1.1 建立Visaul C ++工程 804.1.2 添加OpenGL框架代碼和文件 814.1.3 程序?qū)崿F(xiàn) 824.2 OCI公共類的實現(xiàn) 924.2.1 新類的添加 924.2.2 類變量的添加 924.2.3 類函數(shù)的實現(xiàn) 934.3 本章涉及到的OpenGL函數(shù)與知識點 1214.4 本章小結(jié) 121第5章 地形三維可視化系統(tǒng)的地形渲染實現(xiàn) 1235.1 地形三維可視化概述 1245.2 地形三維可視化的主要算法 1245.2.1 主要算法概述 1245.2.2 四叉樹結(jié)構(gòu)的多分辨率地形模型 1255.3 地形三維可視化系統(tǒng)的實現(xiàn) 1265.3.1 海量地形與影像紋理數(shù)據(jù)的獲取方法 1265.3.2 海量地形自分塊程序?qū)崿F(xiàn) 1275.3.3 大影像的自分塊及程序?qū)崿F(xiàn) 1405.3.4 狀態(tài)欄指示器的實現(xiàn) 1495.3.5 地形與影像子塊的調(diào)度 1525.3.6 三維地形紋理映射 1625.3.7 地形節(jié)點評價系統(tǒng) 1725.3.8 系統(tǒng)優(yōu)化算法 1775.3.9 三維地形的渲染 1795.3.10 真三維立體的實現(xiàn) 2115.4 本章涉及到的OpenGL函數(shù)與知識點 2175.5 本章小結(jié) 219第6章 地形三維可視化系統(tǒng)項目管理與輔助功能 2216.1 項目管理 2226.1.1 新建項目 2226.1.2 打開項目 2316.2 背景天空的實現(xiàn) 2436.3 繪圖模式的控制 2456.4 空間查詢 2486.4.1 查詢算法實現(xiàn) 2486.4.2 查詢標(biāo)識設(shè)置 2546.4.3 查詢?nèi)S坐標(biāo) 2596.4.4 查詢空間距離 2636.5 照相機模塊的設(shè)計與實現(xiàn) 2676.5.1 鍵盤控制的實現(xiàn) 2676.5.2 鼠標(biāo)控制的實現(xiàn) 2716.6 本章涉及到的OpenGL函數(shù)與知識點 2746.7 本章小結(jié) 276第3篇 線路三維可視化系統(tǒng)設(shè)計與實現(xiàn)第7章 三維交互技術(shù)與三維線路數(shù)據(jù)結(jié)構(gòu) 2797.1 三維交互技術(shù) 2807.1.1 交互環(huán)境概述 2807.1.2 正射投影模式實現(xiàn) 2817.1.3 正射投影模式下場景控制 2887.1.4 透視投影模式實現(xiàn) 2947.2 三維地面坐標(biāo)的獲取 2957.2.1 正射投影模式下的獲取 2957.2.2 透視投影模式下的獲取 2997.3 三維線路數(shù)據(jù)結(jié)構(gòu)設(shè)計 2997.3.1 邊坡數(shù)據(jù)結(jié)構(gòu) 3007.3.2 橋梁數(shù)據(jù)結(jié)構(gòu) 3017.3.3 隧道數(shù)據(jù)結(jié)構(gòu) 3027.3.4 水溝數(shù)據(jù)結(jié)構(gòu) 3037.3.5 線路數(shù)據(jù)結(jié)構(gòu) 3047.4 本章涉及到的OpenGL函數(shù)與知識點 3077.5 本章小結(jié) 307第8章 三維線路設(shè)計實現(xiàn) 3098.1 線路方案主要參數(shù)設(shè)計 3108.2 設(shè)計交點信息輸入實現(xiàn) 3318.3 線路中心線定位 3388.4 設(shè)計方案保存與平面方案生成 3498.4.1 設(shè)計方案保存 3508.4.2 平面方案的自動生成 3568.5 縱斷面設(shè)計模塊的實現(xiàn) 3578.6 邊坡模型的生成算法 3618.7 線路路基三維建模 3648.8 隧道三維建模與繪制 3808.8.1 隧道三維建模 3808.8.2 隧道參數(shù)設(shè)置實現(xiàn) 3888.8.3 隧道繪制實現(xiàn) 3918.9 橋梁三維建模與繪制 3978.9.1 橋梁三維建模 3978.9.2 橋梁參數(shù)設(shè)置實現(xiàn) 4058.9.3 橋梁繪制實現(xiàn) 4098.10 線路三維模型繪制 4168.11 本章涉及到的OpenGL函數(shù)與知識點 4318.12 本章小結(jié) 432第9章 道路整體三維建模 4339.1 道路整體三維模型的實現(xiàn) 4349.1.1 線路封閉區(qū)域確定與分割算法 4349.1.2 地形塊綜合數(shù)據(jù)點計算 4519.1.3 分塊TIN模型的構(gòu)網(wǎng)實現(xiàn) 4629.1.4 封閉區(qū)域內(nèi)數(shù)據(jù)點的剔除 4659.1.5 整體構(gòu)網(wǎng)的實現(xiàn) 4689.2 紋理管理 4719.2.1 邊坡紋理 4719.2.2 路肩紋理 4769.2.3 橋梁護(hù)坡面紋理 4799.2.4 隧道內(nèi)墻紋理 4839.2.5 隧道洞門紋理 4869.3 本章涉及到的OpenGL函數(shù)與知識點 4909.4 本章小結(jié) 490第10章 三維漫游的實現(xiàn) 49110.1 飛行路徑建立 49210.1.1 飛行路徑簡介 49210.1.2 飛行路徑設(shè)置方法 49210.1.3 飛行路徑插值算法 49810.1.4 飛行路徑的保存 50110.1.5 打開飛行路徑 50310.1.6 顯示/關(guān)閉飛行路徑 50610.2 沿飛行路徑漫游實現(xiàn) 50710.2.1 沿固定高度漫游實現(xiàn) 50810.2.2 沿相對高度漫游實現(xiàn) 51210.3 沿線路方案線三維漫游實現(xiàn) 51510.3.1 飛行路徑的獲取 51510.3.2 漫游的實現(xiàn) 51610.4 三維漫游的控制 51810.4.1 開始/暫停漫游 51810.4.2 停止漫游 52010.4.3 單步前進(jìn) 52110.5 三維漫游的調(diào)整 52210.5.1 飛行視野調(diào)整 52210.5.2 飛行高度調(diào)整 52310.5.3 飛行傾角調(diào)整 52410.5.4 飛行速度調(diào)整 52510.5.5 三維漫游調(diào)整的熱鍵實現(xiàn) 52610.6 三維漫游的相關(guān)計算 52910.6.1 三維漫游幀頻的計算 52910.6.2 三維漫游速度的計算 53010.6.3 三維漫游里程的計算 53110.7 本章涉及到的OpenGL函數(shù)與知識點 53410.8 本章小結(jié) 534第4篇 線路三維可視化系統(tǒng)輔助功能實現(xiàn)第11章 顯示模式控制及實現(xiàn) 53711.1 顯示模式控制及實現(xiàn) 53811.1.1 雙目立體方式 53811.1.2 正射投影方式 53911.1.3 透視投影方式 54011.2 時鐘指北針的實現(xiàn) 54111.3 縮略圖的實現(xiàn) 55311.4 本章涉及到的OpenGL函數(shù)與知識點 55611.5 本章小結(jié) 557第12章 3D模型載入與應(yīng)用 55912.1 常用3D模型概述 56012.1.1 3DS模型 56012.1.2 OBJ模型 56112.1.3 ASE模型 56112.1.4 MD2/MD3模型 56212.1.5 MS3D模型 56212.2 3DS模型的載入 56412.2.1 3DS文件基本構(gòu)成 56412.2.2 第三方軟件轉(zhuǎn)換法 56412.2.3 程序直接載入 58012.2.4 程序直接載入的實現(xiàn) 58012.3 3DS模型在系統(tǒng)中應(yīng)用實例 59712.4 本章涉及到的OpenGL函數(shù)與知識點 60112.5 本章小結(jié) 602第13章 系統(tǒng)輸出接口與動畫錄制實現(xiàn) 60313.1 輸出線路三維模型到AutoCAD 60413.1.1 輸出格式DXF簡介 60413.1.2 DXF輸出模塊的設(shè)計 60513.1.3 輸出的實現(xiàn) 61313.2 AVI動畫錄制 62313.2.1 動畫錄制類實現(xiàn) 62313.2.2 動畫錄制參數(shù)設(shè)置 62613.2.3 開始錄制動畫 63113.2.4 暫停錄制動畫 63613.2.5 結(jié)束錄制動畫 63613.3 屏幕圖形的打印 63813.3.1 圖形打印類的實現(xiàn) 63913.3.2 打印預(yù)覽的實現(xiàn) 64513.3.3 打印設(shè)置的實現(xiàn) 64713.3.4 打印的實現(xiàn) 64813.4 錄制圖像 64913.4.1 圖像采集頻率 64913.4.2 圖像錄像 65213.4.3 停止錄像圖像 65613.5 保存屏幕到位圖 65713.6 本章小結(jié) 662第14章 系統(tǒng)簡介與運行實例 66314.1 系統(tǒng)介紹 66414.1.1 系統(tǒng)主要特點 66414.1.2 系統(tǒng)運行環(huán)境 66414.2 系統(tǒng)功能模塊簡介 66514.3 系統(tǒng)運行實例 67314.4 本章小結(jié) 677附錄 679附錄A 相關(guān)數(shù)學(xué)程序模塊 680附錄B OpenGL核心函數(shù)庫和應(yīng)用函數(shù)庫 686附錄C OpenGL常用編程技巧 691附錄D OpenGL資源網(wǎng)站 693參考文獻(xiàn) 695
章節(jié)摘錄
第1篇 系統(tǒng)開發(fā)基礎(chǔ)包括第1章三維圖形世界、第2章OpenGL概述和第3章Oracle與 OCI技術(shù)及編程基礎(chǔ)。第1章 介紹了計算機三維圖形技術(shù)的發(fā)展、科學(xué)計算可視化技術(shù)、三維可視化工程設(shè)計的基本概念和發(fā)展現(xiàn)狀。第2章 主要對OpenGL的基本概念、OpenGL編程基礎(chǔ)和在Visual C++環(huán)境下OpenGL基本程序框架的建立進(jìn)行了講解,并給出了一個簡單的旋轉(zhuǎn)立方體程序示例。通過這一章,使讀者對OpenGL有初步的概念和了解,對于紋理、顯示列表等更深入的編程,我們將通過后續(xù)章節(jié)進(jìn)行更詳細(xì)的講解和學(xué)習(xí)。第3章 主要對Oracle數(shù)據(jù)庫及其特點進(jìn)行簡要的介紹和說明。以O(shè)racle 9i為例,介紹了Oracle數(shù)據(jù)庫的安裝步驟和Oracle支持的數(shù)據(jù)類型。在此基礎(chǔ)上,介紹了ADO、Pro*C/C++和OCI三個主要Oracle編程接口,對它們的各自功能和特點進(jìn)行了詳細(xì)說明,從功能方面、性能方面、開發(fā)難度方面進(jìn)行了詳細(xì)分析和比較。重點介紹OCI編程基礎(chǔ)、OCI的數(shù)據(jù)結(jié)構(gòu)、OCI程序的基本結(jié)構(gòu)、OCI執(zhí)行的步驟,最后給出了在Visual C++6.0環(huán)境下開發(fā)OCI應(yīng)用程序的示例。 第2篇 大規(guī)模地形三維可視化系統(tǒng)設(shè)計與實現(xiàn)包括第4章地形三維可視化系統(tǒng)框架與OCI類模塊設(shè)計、第5章地形三維可視化系統(tǒng)的地形渲染實現(xiàn)和第6章地形三維可視化系統(tǒng)項目管理與輔助功能設(shè)計。第4章 在第2章的基礎(chǔ)上,完成了基于OpenGL的地形三維可視化系統(tǒng)程序框架的建立,為后續(xù)的功能模塊開發(fā)提供了基礎(chǔ)平臺;在第3章的基礎(chǔ)上,設(shè)計了OCI公共類,將所有與OCI有關(guān)的數(shù)據(jù)庫操作、數(shù)據(jù)讀取等功能函數(shù)實現(xiàn)全部封裝在該類中,并定義了公共類的全局變量myOci。第5章 本章對地形三維可視化進(jìn)行了基本概述,介紹了目前地形三維可視化的主要算法。主要介紹了海量地形與影像紋理數(shù)據(jù)的常用獲取方法,給出了海量地形自分塊與影像紋理分塊原則和程序?qū)崿F(xiàn),以及地形與影像子塊調(diào)度的程序?qū)崿F(xiàn),在此基礎(chǔ)上實現(xiàn)了地形的三維可視化;還介紹了真三維立體的實現(xiàn)算法和數(shù)學(xué)模型,在此基礎(chǔ)上給出了基于OpenGL的真三維立體的程序?qū)崿F(xiàn)。第6章 主要講解了新建項目、打開項目、背景天空的繪制、繪圖模式控制的實現(xiàn)方法和程序設(shè)計。介紹了基于OpenGL深度緩存的二維屏幕坐標(biāo)向三維空間坐標(biāo)的轉(zhuǎn)換算法,實現(xiàn)了對三維空間坐標(biāo)和空間距離查詢,以及查詢標(biāo)識設(shè)置的程序設(shè)計;最后講解了基于鍵盤和鼠標(biāo)聯(lián)合控制的三維場景照相機程序模塊的實現(xiàn),實現(xiàn)三維場景的前、后、左、右移動和任意方向的旋轉(zhuǎn)。 第3篇 線路三維可視化系統(tǒng)設(shè)計與實現(xiàn)包括第7章三維交互技術(shù)與三維線路數(shù)據(jù)結(jié)構(gòu)、第8章三維線路設(shè)計實現(xiàn)、第9章道路整體三維建模和第10章三維漫游的實現(xiàn)。第7章 主要對三維交互環(huán)境進(jìn)行了介紹,詳細(xì)講解了正射投影模式的實現(xiàn)、正射投影模式下場景控制方法和程序設(shè)計,以及透視投影模式的實現(xiàn)方法;還講解了正射投影模式和透視投影模式下三維地面坐標(biāo)的獲取原理、方法,在此基礎(chǔ)上,設(shè)計了邊坡數(shù)據(jù)結(jié)構(gòu)、橋梁數(shù)據(jù)結(jié)構(gòu)、隧道數(shù)據(jù)結(jié)構(gòu)、水溝數(shù)據(jù)結(jié)構(gòu)及線路數(shù)據(jù)結(jié)構(gòu),為實現(xiàn)三維線路設(shè)計做好了前期準(zhǔn)備。第8章 主要對線路方案的主要參數(shù)設(shè)計方法和程序?qū)崿F(xiàn)、設(shè)計交點信息輸入實現(xiàn)、線路中心線定位方法、設(shè)計方案的保存、平面方案的自動生成和程序設(shè)計、縱斷面設(shè)計模塊的實現(xiàn)、邊坡模型的生成算法、線路路基三維建模方法和實現(xiàn)、隧道三維建模和參數(shù)控制、橋梁三維建模和參數(shù)控制的程序設(shè)計進(jìn)行了詳細(xì)講解。第9章 主要講解了道路整體三維模型實現(xiàn),對其中的線路封閉區(qū)域確定與分割算法、地形塊綜合數(shù)據(jù)點計算、分塊TIN模型的構(gòu)網(wǎng)實現(xiàn)、封閉區(qū)域內(nèi)數(shù)據(jù)點的剔除、整體構(gòu)網(wǎng)的程序?qū)崿F(xiàn)都進(jìn)行了詳細(xì)說明;在紋理管理部分,詳細(xì)講解了邊坡紋理、路肩紋理、橋梁護(hù)坡面紋理、隧道內(nèi)墻紋理、隧道洞門紋理的程序設(shè)計和實現(xiàn)。第10章 從多個方面對三維漫游的基本概念、程序?qū)崿F(xiàn)、參數(shù)調(diào)整和控制進(jìn)行了講解,幫助讀者學(xué)會在三維可視化系統(tǒng)中三維漫游模塊的程序設(shè)計方法;對飛行路徑的基本概念、設(shè)置方法、插值算法、保存和打開的程序設(shè)計,沿飛行路徑實現(xiàn)三維漫游的程序設(shè)計,沿線路方案漫游的固定高度和相對高度兩種模式的程序設(shè)計,三維漫游控制和調(diào)整的程序設(shè)計,以及三維漫游的相關(guān)計算都進(jìn)行了詳細(xì)的講解,每一部分都給出了完整的程序代碼。 第4篇 線路三維可視化系統(tǒng)輔助功能實現(xiàn)包括第11章顯示模式控制及實現(xiàn)、第12章3D模型載入與應(yīng)用、第13章系統(tǒng)輸出接口與動畫錄制實現(xiàn)和第14章系統(tǒng)簡介與運行實例。第11章 本章主要對雙目立體方式、正射投影方式和透視投影方式的顯示模型模式控制和實現(xiàn)、時鐘指北針的程序設(shè)計和實現(xiàn)、縮略圖的實現(xiàn)方法和程序設(shè)計進(jìn)行了詳細(xì)的講解和說明。第12章 本章主要對目前常用的3DS、AES、OBJ、MD2、MD3、MS3D等3D模型進(jìn)行了介紹和說明,并給出了每種3D模型的示例,在此基礎(chǔ)上,詳細(xì)介紹了在OpenGL中應(yīng)用3DS模型的兩種主要方法:通過第三方軟件對3DS模型進(jìn)行轉(zhuǎn)換和直接通過程序讀取3DS模型;以橋墩3DS模型為例,給出了3DS模型在線路三維場景中的應(yīng)用方法和程序設(shè)計實現(xiàn)。第13章 介紹了DXF文件格式,詳細(xì)講解了DXF輸出模塊的程序設(shè)計,實現(xiàn)了線路三維模型輸出到DXF文件,可以在AutoCAD中打開線路三維模型進(jìn)行觀察;設(shè)計了動畫錄制類,實現(xiàn)將OpenGL動畫錄制到AVI文件中;設(shè)計了屏幕圖形打印類,實現(xiàn)了對OpenGL屏幕圖形的打印,在此基礎(chǔ)上,設(shè)計錄制屏幕圖像模塊,實現(xiàn)了將OpenGL動畫錄制為一系列圖像并保存到硬盤中。第14章 主要對所建立的三維可視化設(shè)計系統(tǒng)的主要特點和功能進(jìn)行了介紹,對線路可視化設(shè)計系統(tǒng)加以總結(jié),并對相應(yīng)的功能模塊進(jìn)行集中說明,使讀者能夠?qū)φ麄€三維可視化設(shè)計有更加清晰的思路和概念,最后給出系統(tǒng)運行實例。 附錄包括附錄A:相關(guān)數(shù)學(xué)程序模塊;附錄B:OpenGL核心函數(shù)庫和應(yīng)用函數(shù)庫;附錄C:OpenGL常用編程技巧;附錄D:OpenGL資源網(wǎng)站。
媒體關(guān)注與評論
人在三維空間中具有很強的形象思維能力,計算機具有極強的數(shù)據(jù)處理能力,但理解和推理能力差。如果將計算機的快速計算功能與三維圖形功能融為一體,實現(xiàn)基于三維可視化環(huán)境的設(shè)計,這必將從根本上改變重復(fù)無味的設(shè)計工作方式。OpenGL是目前用于開發(fā)可移植的、可交互3D圖形應(yīng)用程序的首選環(huán)境,也是目前應(yīng)用最廣泛的計算機圖形標(biāo)準(zhǔn)。本書以實際的三維可視化系統(tǒng)為主線,系統(tǒng)地論述了三維可視化設(shè)計的理論、技術(shù)和算法,實現(xiàn)了基于OpenGL+Visual C++ +Oracle 9i數(shù)據(jù)庫開發(fā)的三維可視化設(shè)計系統(tǒng),為實現(xiàn)工程的三維可視化設(shè)計提供了三維設(shè)計平臺。? 本書以“鐵路三維可視化系統(tǒng)”實例作為全書的主線,從系統(tǒng)框架設(shè)計到最終實現(xiàn),逐步講解各個方面所涉及的算法和思路,并給出詳細(xì)程序代碼和注釋。書中的數(shù)據(jù)庫部分又可以為希望學(xué)習(xí)MFC下的Oracle數(shù)據(jù)庫編程和OCI程序設(shè)計的讀者提供參考。? 通過系統(tǒng)實例讓初級讀者學(xué)會OpenGL的各個功能和應(yīng)用;讓中、高級讀者學(xué)習(xí)如何利用OpenGL開發(fā)三維可視化系統(tǒng),掌握OpenGL的高級開發(fā)技巧、編程算法,以及三維可視化設(shè)計的理論、技術(shù)和算法。? 書中所有程序均取材于實際系統(tǒng),完全能在實際項目中“即插即用”,對于從事三維地形可視化、鐵路、公路、管道、輸電線路等三維可視化設(shè)計的讀者具有很好的參考和利用價值。
編輯推薦
宣傳口號:體驗OpenGL三維世界無窮樂趣成就非凡三維可視化軟件開發(fā)高手賣點特色:1.《實戰(zhàn)OpenGL三維可視化系統(tǒng)開發(fā)與源碼精解》全面系統(tǒng)講解OpenGL在三維可視化系統(tǒng)開發(fā)中所應(yīng)用到的編程方法、技術(shù)和技巧,循序漸進(jìn),圖文并茂.。2.強調(diào)編程的快捷省力,多個成熟類代碼的詳細(xì)應(yīng)用。關(guān)注初學(xué)者的編程感受,步驟詳盡;重視高層技術(shù)人員的探討精神,多種解決途徑。3.以功能說明、設(shè)計思想、程序?qū)崿F(xiàn)和運行效果為流程,詳細(xì)講解系統(tǒng)開發(fā)的詳細(xì)步驟和具體實現(xiàn)。4.所有程序?qū)崿F(xiàn)及代碼都給出詳細(xì)說明、實現(xiàn)步驟和代碼詳細(xì)注釋,并對涉及的主要函數(shù)及讀者注意地方進(jìn)行歸納,便于讀者在學(xué)習(xí)過程中舉一反三。5.提供完整大型案例,側(cè)重實際應(yīng)用,語言簡潔精煉,講解清晰透徹,幫助讀者提高開發(fā)水平。《實戰(zhàn)OpenGL三維可視化系統(tǒng)開發(fā)與源碼精解》及其配套光盤使用完整的源代碼列舉了具有相當(dāng)實用價值的“鐵路三維可視化系統(tǒng)”開發(fā)案例,比較深入的解決了一些缺少實際工作經(jīng)驗的程序員的開發(fā)煩惱:1.知道了開發(fā)工具能夠做什么,學(xué)會了怎樣使用開發(fā)工具來做系統(tǒng),卻不知道需要實現(xiàn)的具體的功能是什么2.如何開發(fā)一個具有商業(yè)價值的三維可視化系統(tǒng)3.如何理順系統(tǒng)各個功能模塊間固有的內(nèi)在邏輯4.如何解決系統(tǒng)開發(fā)中揮之不去的深層次矛盾5.如何協(xié)調(diào)和平衡系統(tǒng)中存在錯綜復(fù)雜的關(guān)系《實戰(zhàn)OpenGL三維可視化系統(tǒng)開發(fā)與源碼精解》特別適合缺少實際工作經(jīng)驗的普通高校學(xué)生作為三維可視化系統(tǒng)開發(fā)的范例,對于專業(yè)軟件公司的程序員開發(fā)相關(guān)的三維可視化系統(tǒng)也極具參考價值。客觀精確的分析大型三維可視化系統(tǒng)的功能需求,循序漸進(jìn)的介紹大型三維可視化系統(tǒng)的開發(fā)過程,完整詳細(xì)的闡述大型三維可視化系統(tǒng)的實現(xiàn)方法,清晰明了的創(chuàng)建大型三維可視化系統(tǒng)的整體框架。? 概念理解:對所要講解的內(nèi)容的基本概念進(jìn)行簡要說明。? 界面設(shè)計:對所進(jìn)行的界面設(shè)計進(jìn)行說明,包括界面控件組成、布局、ID、變量、菜單等信息。 ? 程序設(shè)計:在界面設(shè)計完成后,開始進(jìn)行程序設(shè)計。 ? 添加變量:需要添加的變量,包括私有變量、公共變量等。? 函數(shù)實現(xiàn):添加完變量后,開始實現(xiàn)所需函數(shù)的標(biāo)志,在其下方,將是具體的每一個函數(shù)代碼。? 函數(shù)說明:對每個函數(shù)功能所進(jìn)行的說明,包括函數(shù)組成部分和每個部分的說明。? 程序函數(shù)講解:對在函數(shù)中出現(xiàn)的OpenGL、OCI等函數(shù)進(jìn)行詳細(xì)講解。? 說明:對所講解的內(nèi)容、函數(shù)等需要進(jìn)行特別說明的內(nèi)容。? 注意:在程序設(shè)計過程中必須要注意的地方,多數(shù)情況下涉及到OpenGL的編程技巧。
圖書封面
圖書標(biāo)簽Tags
無
評論、評分、閱讀與下載
實戰(zhàn)OpenGL三維可視化系統(tǒng)開發(fā)與源碼精解 PDF格式下載