商品簡介
本書系統地介紹了VTK基礎知識與開發技術,幫助VTK用戶從入門到進階,快速進入項目實戰。本書第1章是VTK概覽,介紹VTK的發展和編譯安裝;第2章以實例開題,分析VTK渲染引擎和可視化管線;第3章介紹VTK的基本數據結構,并在第4章中以實例分析VTK中數據讀寫功能;第5~6章通過實例闡述VTK在圖像和圖形處理中的應用;第7章分析VTK的體繪制技術;第8章講述VTK交互技術;第9章內容為VTK在 Qt、MFC等環境下的開發技術;第10章分析了VTK的基礎架構和管線機制,并通過實例講解自定義Filter類;附錄中列舉了VTK5與VTK6的區別,并給出了VTK中文的實現。
目次
出版說明
序
前言
第1章 VTK概覽
1.1 VrK概述
1.1.1 VTK是什么
1.1.2 VTK能做什么
1.1.3 如何獲取VTK源碼
1.1.4 VTK學習資源
1.2 VTK的編譯安裝
1.2.1 編譯VTK的準備工作
1.2.2 編譯VTK的詳細步驟
1.3 創建一個簡單的VTK程序
1.3.1 什么是CMake
1.3.2 CMakeLists.txt腳本文件
1.3.3 CMake的幾個常用命令
1.3.4 一個簡單的vrK工程
1.4 本章小結
第2章 VTK的基本概念
2.1 一個稍微復雜的VTK程序
2.2 三維場景的基本要素
2.2.1 燈光
2.2.2 相機
2.2.3 顏色
2.2.4 紋理映射
2.3 坐標系統及空間變換
2.3.1 坐標系統
2.3.2 空間變換
2.4 VTK管線
2.4.1 VTK渲染引擎
2.4.2 VTK可視化管線
2.5 VTK智能指針
2.5.1 引用計數
2.5.2 智能指針
2.5.3 運行時類型識別
2.6 本章小結
第3章 VTK基本數據結構
3.1 可視化數據的基本特點
3.2 數據對象和數據集
3.2.1 VTKDataObject
3.2.2 VTKDataSet
3.3 單元類型
3.3.1 線性單元
3.3.2 非線性單元
3.4 屬性數據
3.4.1 標量數據
3.4.2 矢量數據
3.4.3 紋理坐標
3.4.4 張量數據
3.5 不同類型的數據集
3.5.1 VTKlmageData
3.5.2 VTKPolyData
3.5.3 VTKRectilinearGrid
3.5.4 VTKStructuredGrid
3.5.5 VTKnstructuredGrid
3.5.6 VTKnstructuredPoints
3.6 數據的存儲與表達
3.6.1 VTKDataArray
3. 6.2.數據對象的表達
3.7 本章小結
第4章 VTK數據的讀寫
4.1 Reader與Wiiter類
4.1.1 VTKlmageData類型
4.1.2 VTKPolyData類型
4.1.3 VTKRectilinearGrid類型
4.1.4 VTKStructuredGrid類型
4.1.5 VTK[JnstructuredGrid類型
4.2 場景的導入與導出
4.3 本章小結
第5章 VTK圖像處理
5.1 VTK圖像創建
5.1.1 VTK圖像數據結構
5.1.2 VTK圖像創建
5.2 VTK圖像顯示
5.2.1 vtldmageViewer2
5.2 12VTKlmageActor
5.2.3 圖像融合
5.3 VTK圖像基本操作
5.3.1 圖像信息的訪問與修改
5.3.2 圖像像素值的訪問與修改
5.3.3 圖像類型轉換
5.3.4 圖像顏色映射
5.3.5 區域提取
5.3.6 直方圖統計
5.3.7 圖像重采樣
5.3.8 圖像運算
5.3.9 圖像二值化
5.4 邊緣檢測
5.4.1 梯度算子
5.4.2 Canny算子
5.4.3 拉普拉斯算子
5.5 圖像平滑
5.5.1 均值濾波
5.5.2 高斯平滑
5.5.3 中值濾波
5.5.4 各向異性濾波
5.6 頻域處理
5.6.1 快速傅里葉變換
5.6.2 低通濾波
5.6.3 高通濾波
5.7 本章小結
第6章 VTK圖形處理
6.1 VTKPolVData數據生成與顯示
6.1.1 VTKPolyData數據源
6.1.2 VTKPolyData數據的創建
6.1.3 VTKPolyData屬性數據
6.2 基本的圖形操作
6.2.1 法向量計算
6.2.2 符號化Glyphing
6.2.3 曲率計算
6.3 網格平滑
6.4 封閉性檢測
6.5 連通區域分析
6.6 多分辨率處理
6.6.1 網格抽取
6.6.2 網格細化
6.7 表面重建
6.7.1 三角剖分
6.7.2 等值面提取
6.7.3 點云重建
6.8 點云配準
6.9 紋理映射
6.1 0本章小結
第7章 體繪制
7.1 體繪制管線
7.2 址VolumeMapper
7.2.1 VTKVolumeRayCastMapper
7.2.2 VTKFixedPointVolumeRayCastMapper
7.2.3 VTKGPVolumeRayCastMapper
7.2.4 紋理映射體繪制
7.2.5 裁剪
7.2.6 法向編碼
7.3 VTKV0lume
7.3.1 不透明度傳輸函數
7.3.2 梯度不透明度函數
7.3.3 顏色傳輸函數
7.3.4 光照與陰影
7.3.5 vtlLODProp3D
7.4 不規則網格數據體繪制技術
7.4.1 VTKLInstructuredGridVolumeRayCastMapper
7.4.ZVTKUnstmcturedVndVolumeZSweepMapper
7.4.3 VTKPrqiectedTetra]hedraMapper
7.4.4 VTKHAVSVolumeMapper
7.5 本章小結
第8章 VTK交互與Widget
8.1 觀察者/命令模式
8.1.1 事件回調函數
8.1.2 VTKComman子類
8.2 交互器樣式
8.2.1 VTKRendderWmdowInteractor
8.2.2 VTKInteractorStyle
8.3 VTKWidget
8.3.1 創建Widget交互
8.3.2 測量類Widget
8.3.3 標注類Widget
8.3.4 分割/配準類Widget
8.3.5 其他Widget
8.4 拾取
8.4.1 點拾取
8.4.2 單元拾取
8.4.3 Prop拾取
8.5 本章小結
第9章 基于VTK的GUI應用程序
9.1 基于Qt的VrK應用程序
9.1.1 用CMake管理Qt工程
9.1.2 用CMake管理Qt與VTK工程
9.1.3 環境變量的加載
9.1.4 用QVTKwidget整合Qt和VTK
9.2 基于MFC的VTK應用程序
9.2.1 基于單文檔的VTK應用程序
9.2.2 基于VTK的圖像重采樣程序
9.2.3 基于對話框的VTK應用程序
9.3 本章小結
第10章 自定義VTK類
10.1 VTK開發基礎
10.1.1 引用計數與智能指針
10.1.2 VTKObiect類分析
10.1.3 VTK類的實現
10.2 VrK管線機制
10.2.1 信息對蒙類VTKInfrmation
10.2.2 管線執行模型
10.3 自定義Filter
10.3.1 自定義Filter基本步驟
10.3.2 Filter實例
10.4 本章小結
附錄
附錄A 從VrK5.0到VrK6.0
附錄B 體繪制傳輸函數控件
附錄C VTK中文的實現
附錄D VTK在商業軟件中的應用
參考文獻