《Win32动画编程技术》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:(美)(N.汤普森)Nigel Thompson著;李红娟等译
  • 出 版 社:北京:清华大学出版社
  • 出版年份:1996
  • ISBN:7302023301
  • 页数:203 页
图书介绍:由Microsoft Press授权出版。

第1章 位图 1

1.1 位的基本知识 1

1.2 应用举例:位图 3

1.2.1 准备工作(步骤1—5) 4

1.2.2 画图象(步骤6) 5

1.2.3 设备上下文:补充说明 6

1.2.4 创建位图(步骤7) 7

1.2.5 修改菜单(步骤8—10) 8

1.3 编译和测试 8

1.4 关于GDI的几点疑问 9

第2章 设备无关位图(DIB) 10

2.1 定义DIB颜色 10

2.2 定义DIB格式 11

2.3 8位象素DIB 13

2.4 DIB工作原理 14

2.5 DIB的C++类 15

2.6 CDIB数据和函数说明 16

2.7 应用举例:BasicDIB 25

第3章 调色板和调色板管理程序 28

3.1 调色板:用途及意义 28

3.2 逻辑调色板 29

3.3 硬件调色板 31

3.4 逻辑颜色映射到物理调色板 32

3.5 用COLORREF宏指定所需的颜色 34

3.6 调色板消息 35

3.7 在非调色板化设备上运行程序 36

3.8 查看当前硬件调色板 37

3.9 建议 40

第4章 DIB的调色板类 41

4.1 CDIBPal类 41

4.2 查看调色板的应用程序 44

4.3 查看DIB的应用程序 49

4.3.1 ViewDIB应用程序代码 50

4.3.2 图象视图 52

4.3.3 调色板视图 55

4.3.4 BITMAPINFO结构的视图 55

4.4 关于疑难问题 55

第5章 精灵、着色及其它 56

5.1 在简单计算机环境中的动画制作 56

5.2 Windows环境中的动画制作 56

5.2.1 造型动画和帧动画 57

5.3 各部分名称 57

5.3.1 精灵 58

5.3.2 构图、画图 58

5.4 移动图象的创建 58

5.5 高效动画制作的关键 63

5.6 内存中的图象 63

5.7 什么是光栅操作 63

6.1 StretchDIBits 64

第6章 StretchDIBits、CreateDIBSection及颜色映射 64

6.2 创建等同调色板 67

6.2.1 获取系统色 67

6.2.2 一般的方法 68

6.3 尽可能利用主机 72

第7章 创建屏幕缓冲视图类 76

7.1 开发历程 76

7.2 屏幕缓冲视图 76

7.4 COSBView类 77

7.3 直接处理象素,但不调用GDI 77

7.4.1 COSBView对象的创建 78

7.4.2 画图函数 83

7.4.3 测试阶段 87

第8章 创建背景图象 91

8.1 文档-视图通信 91

8.2 目标 92

8.3 Bkgnd应用程序 92

8.5 设置背景 94

8.4 对象的所有权 94

第9章 精灵、透明性、选中测试和共用调色板 101

9.1 CSPrite类 101

9.2 在文档中添加精灵 103

9.3 在视图中画一个新的精灵 105

9.4 透明性 108

9.5 细节问题的解决办法 110

9.6 增加选中测试和鼠标拖动 111

9.7 多次修改与测试 113

第10章 快速重画 114

10.1 重画移动的精灵 114

10.2 实现重画区域 117

第11章 增加一个三维和通知对象 122

11.1 z轴顺序问题 122

11.1.2 一些可能的解决方法 124

11.2 通知对象 124

11.1.1 位置改变也有同样的问题 124

11.2.1 通知的类型 126

11.2.2 通知对象类 126

11.2.3 对CSprite进行改变以使用CSpriteNotifyObj 127

11.3返回到z轴顺序问题 131

11.3.1 设置z轴顺序和删除精灵 133

11.4 创建精灵弹出式菜单 134

11.5 下一步工作 136

12.1 串行化CDIB对象 137

第12章 保存和装入场景 137

12.2 串行化CSprite对象 141

12.3 串行化CSpriteList对象 141

12.4 串行化CAnimDoc 142

12.5 测试 144

12.6 串行化CDIBPal 144

12.7 Windows Palette文件和其它RIFF格式 144

12.8 CDIBPal串行化函数 146

12.9 一个简单的调色板编辑器 151

12.10 Select Color对话框 153

12.10.1 创建颜色 154

12.10.2 显示颜色 156

第13章 改变形状的精灵 159

13.1 相位化图象 159

13.2 CPhasedSprite类 161

13.2.1 选中检测和CPhasedSprite对象构图 164

13.3 一个突出相位化精灵的样本应用程序 166

13.4 下一步工作 168

第14章 声音 170

14.1 声音类型 170

14.1.1 CD Audio 170

14.1.2 MIDI音乐 171

14.1.3 采样声音(波形) 171

14.2 播放声音—简便的方法 171

14.2.1 使用SndPlaySound 171

14.2.2 使用媒体控制界面(MCI) 173

14.3 播放声音—复杂的方法 179

14.3.1 底层声音功能如何播放波形 180

14.3.2 CWave类 181

14.3.3 CWave OutDevices类 182

14.3.4 CWaveDevWnd类 185

14.3.5 回到起点 185

14.4 正确的方法 186

第15章 移动和冲撞 187

15.1 Collide应用程序类 187

15.2.2 使用定时器消息 188

15.2 使精灵移动 188

15.2.1 使用多线程 188

15.2.3 使用一个闲逛时间处理器 190

15.3 视图类 190

15.4 CMySprite类中的冲撞检测 193

15.5 但是,如果……? 197

附录A 使用WinG库 198

附录B 一个静态链接库 203