Visual C++ CAD应用程序开发技术

Visual C++ CAD应用程序开发技术
作 者: 王清辉 王彪
出版社: 机械工业出版社
丛编项: 信息科学与技术丛书 程序设计系列
版权说明: 本书为出版图书,暂不支持在线阅读,请支持正版图书
标 签: VC++
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

  \t\t\n

内容简介

本书系统地阐述了在MFC与OpenGL API的集成开发环境下,用面向对象的技术开发H维CAD软件的有关知识与方法。内容包括:总体程序框架的分析与设计、功能模块的划分、相关DLL库的开发与使用、CAD基础几何类库的开发、在MFC环境下使用OpenGL进行图形绘制、开发面向CAD应用程序的OpenGL通用绘图类、使用面向对象技术设计CAD软件的几何内核、CAD软件的图形交互、软件界面设计等。在介绍过程中,以一个完整的三维CAD软件(STLViewer)的开发实例贯穿于全书各章节,并附有完整的VisualC++实现代码。全书面向开发实例进行分析与介绍,讲解透彻,易于理解。读者通过对本书的阅读和学习,能够掌握使用VisualC++进行具有一定复杂程度的软件的设计与实现方法。本书适合于从事图形及CAD软件开发的技术人员和具有一定VisualC++基础的大专院校相关专业学生阅读。本书提供的开发实例可在VisualC++6.0版本上实现。

图书目录

第1章 基于MFC的三维CAD应用程序框架结构分析

1. 1 MFC应用程序的文档/视图结构

1. 1. 1 文档/视图结构概述

1. 1. 2 文档与多个视图的关联

1. 1. 3 文档模板及主要组成类

1. 2 实例分析--三维CAD示例软件STLViewer

1. 3 而不见STLViewer的程序框架

1. 4 STLViewer中类的层次设计及软件模块结构划分

1. 5 建立和使用动态链接库

1. 5. 1 动态链接库的基本概念

1. 5. 2 基于MFC的动态链接库本章相关程序

第2章 几何基本工具库的开发

2. 1 点. 矢量和齐次变换矩阵

2. 1. 1 点

2. 1. 2 矢量

2. 1. 3 齐次坐标与齐次变换矩阵

2. 2 设计点. 矢量和齐次变换矩阵类

2. 2. 1 点类CPoint3D

2. 2. 2 矢量类CVector3D

2. 2. 3 变换矩阵类CMatrix3D

2. 3 三维图形的几何变换

2. 3. 1 三维齐次变换矩阵

2. 3. 2 平移变换

2. 3. 3 旋转变换/绕空间任意轴的旋转变换函数的实现

2. 3. 4 几何缩放

2. 3. 5 对称变换/沿空间任意平面的对称变换函数的实现

2. 4 设计几何基本工具库GeomCalc. d

2. 4. 1 GeomCalc. dll中的输出类与输出函数

2. 4. 2创建几何基本工具库GeomCalc. dll的步骤

2. 4. 3 使用GeomCalc. dll

2. 5 有关源程序代码

2. 5. 1 文件CadBase. h

2. 5. 2文件CadBase. cpp

2. 5. 3 文件CadBasel. cpp本章相关程序

第3章 基于MFC的OpenGLWindows程序的创建

3. 1 OpenGL介绍

3. 2 在Windows环境下使用OpenGL

3. 2. 1 OpenGL的函数库

3. 2. 2 OpenGL与GDl

3. 2. 3 渲染场境

3. 2. 4 像素格式

3. 3 OpenGL MFC应用程序创建实例

3. 3. 1 创建一个应用程序框架

3. 3. 2 修改视图类CGLView

3. 3. 3 使用OpenGL的双缓存技术为应用程序增加动画效果

3. 4 程序清单

3. 4. 1 文件GLView. h

3. 4. 2 文件GLView. cpp本章相关程序

第4章 封装OpenGL功能的C 类的设计

4. 1 封装OpenGL的C 类的设计

4. 2 照相机类GCamera的设计

4. 2. 1 视点坐标系和视图变换

4. 2. 2 投影变换与视景体

4. 2. 3 视口变换

4. 2. 4 设计照相机类GCamera

4. 3 类COpenCLDC

4. 4 修改类CGLView

4. 5 运行应用程序

4. 6 源程序清单

4. 6. 1 类GCamera的声明代码

4. 6. 2 类GCamera的实现代码

4. 6. 3 类COpenGLDC的声明代码

4. 6. 4 类COpenGLDC的实现代码

4. 6. 5 类CGLView的声明代码

4. 6. 6 类CGLView的实现代码本章相关程序

第5章 基于OpenGL的CAD图形工具库的设计

5. 1 创建动态链接库glContext. dll

5. 2 类GCamera的功能增强

5. 2. 1 选择典型的观察视图

5. 2. 2 景物平移

5. 2. 3 景物缩放

5. 2. 4 使用OpenGL的选择模式

5. 3 类COpenGLDC功能的增强

5. 3. 1 实现和Windows窗口的关联

5. 3. 2 定义光源

5. 3. 3 定义颜色

5. 3. 4 图形绘制函数

5. 3. 5 选择模式

5. 4 增加类CGLView中的功能

5. 5 glContext类的输出和调用

5. 6源程序清单

5. 6. 1 文件Camera. h 类GCamera

5. 6. 2 文件Camem. cpp 类GCamera

5. 6. 3 文件OpenGLDC. h 类COpenGLDC. CGLView

5. 6. 4 文件OpenGLDC. cpp 类OpenGLDC

5. 6. 5 文件GLView. cpp 类CGLView

本章相关程序

第6章 CAD应用程序的几何内核模块的设计

6. 1 几何对象类的设计

6. 1. 1 类的层次设计

6. 1. 2 几何对象基本类CEntity

6. 1. 3 三角面片对象类CTriChip

6. 1. 4 STL几何模型类CSTLModel

6. 1. 5 高级几何模型类CPad

6. 2 串行化 Serialize 实现文档存取功能

6. 2. 1 为什么要使用串行化

6. 2. 2 CArchive类

6. 2. 3 串行化类的设计步骤

6. 2. 4 CObArray的Serialize 函数

6. 2. 5 应用程序的文档串行化实例剖析

6. 3 虚拟函数

6. 3. 1 虚拟函数与多态性

6. 3. 2 纯虚拟函数

6. 3. 3 实现CPart模型的OpenGL显示

6. 4 建立几何内核库GeomKernel. dll

6. 5 程序清单

6. 5. 1 文件Enfity. h

6. 5. 2 文件Entity.cpp

本章相关程序

第7章 CAD应用程序STLViewer的模块化实现

7. 1 STLViewer的模块结构

7. 2 创建应用程序框架

7. 3 修改应用程序框架

7. 3. 1 增加界面资源

7. 3. 2 修改框架类CMainFrame

7. 3. 3 修改文档类CSTLViewerDoc

7. 3. 4 修改视图类CSTLViewerView

7. 4 运行STLViewer.exe

7. 5 源程序清单

7. 5. 1 文件MainFrm. h

7. 5. 2 文件MainFrm. cpp

7. 5. 3 文件STLViewerDoc. h

7. 5. 4 文件STLViewerDoc. cpp

7. 5. 5 文件STLViewerView. h

7. 5. 6 文件STLViewerView. cpp

本章相关程序

第8章 增强CAD应用程序的界面功能

8. 1 STLViewer的界面增强

8. 2 工具栏的排列

8. 3 使用快捷菜单

8. 4 创建类似VisualStudio风格的浮动窗口

8. 4. 1 控制条与停靠栏

8. 4. 2 开发具有VisualStudio风格的浮动窗口

8. 4. 3 CTabCtrl控件的功能增强

8. 4. 4 建立界面工具库DockTool. dll

8. 5 使用树型视图CtreeView显示和管理文档数据

8. 5. 1 树型视图与树型控件

8. 5. 2 在STLViewer中创建CPartTreeView

8. 5. 3 树型视图CPartTreeView与文档的关联/文档多视图

8. 5. 4 在树型控件中使用图标

8. 5. 5 使用树型视图控件显示文档中几何模型的结构和属性

8. 5. 6 通过树型视图控件对文档数据进行操作

本章相关程序

第9章 基于OpenGL的CAD软件拾取功能的实现

9. 1 使用OpenGL选择模式

9. 1. 1 OpenGL的三种操作模式

9. 1. 2 使用选择模式

9. 2 一个OpenGL选择模式的应用程序

9. 3 OpenGL的选择功能与CAD应用程序的集成

9. 3. 1 定义选择视景体/修改类CCamera

9. 3. 2 对选择过程的操作/修改类COpenGLDC

9. 3. 3 自动给对象命名尉类CSTLModel的修改

9. 3. 4 在STLViewer中调用拾取功能

9. 3. 5 运行程序

本章相关程序