图书介绍
Visual C++开发GIS系统 第2版PDF|Epub|txt|kindle电子书版本网盘下载
![Visual C++开发GIS系统 第2版](https://www.shukui.net/cover/40/30896279.jpg)
- 陈建春编著 著
- 出版社: 北京:电子工业出版社
- ISBN:7121003341
- 出版时间:2004
- 标注页数:615页
- 文件大小:51MB
- 文件页数:632页
- 主题词:C语言-程序设计-应用-地理信息系统
PDF下载
下载说明
Visual C++开发GIS系统 第2版PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 VC++开发GIS的思路1
1.1GIS简介1
1.1.1GIS的应用领域和范围1
1.1.2GIS与其他系统的结合1
1.1.3GIS的专业开发工具2
1.1.4GIS专业开发工具的优缺点3
1.1.5VC++开发GIS的优缺点及应用前景4
1.1.6选用GIS的开发方法5
1.2.1开发相对完整的矢量图形系统6
1.2VC++开发GIS的思路6
1.2.2开发属性数据库管理系统7
1.2.3建立矢量图形系统与数据库管理系统的连接7
1.2.4开发各种查询检索、空间分析、网络分析功能8
第一篇 VC++程序设计技术要点11
第2章 MFC应用程序设计的开发工具11
2.1使用MFCAppWizard12
2.1.1MFCAppWizard的启动13
2.1.2利用MFCAppWizard产生MFC应用程序的步骤14
2.2使用ClassView18
2.2.1启动ClassView18
2.2.3增加类19
2.2.2编辑定位19
2.2.4增加类的成员22
2.3使用ResourceView23
2.3.1ResourceView的调用24
2.3.2ResourceView工作分析24
2.4使用FileView28
2.4.1打开一个程序项目28
2.4.2FileView相关的操作功能28
2.5使用ClassWizard30
2.5.1Windows消息30
2.5.2消息处理函数32
2.5.3ClassWizard的作用和启动34
2.5.4ClassWizard管理消息处理函数35
2.5.5ClassWizard管理重载虚函数39
2.5.6ClassWizard管理映射变量41
2.5.7管理Automation和ActiveX事件45
2.5.8重新创建开发项目的ClassWizard工作信息45
2.6使用DataView46
2.7管理多个程序项目47
2.8使用各设计工具进行编程的几点建议48
第3章 MFC应用程序框架50
3.1MFC程序基本框架类和文件组成50
3.1.1基本程序框架类50
3.1.2应用程序主要源文件组成51
3.2MFC应用程序中各个框架类的作用52
3.3MFC应用程序的执行步骤分析54
3.4MFC应用程序设计结构体系剖析56
3.4.1标准菜单的执行分析56
3.4.2修改标准菜单执行功能58
3.4.3MFC应用程序多态性的实现59
3.4.4MFC应用程序中各个框架类对象的相互调用关系61
4.1.1绘图类简介65
4.1绘图类65
第4章 与绘图操作有关的MFC类及操作65
第二篇 实现基本矢量图形系统65
4.1.2几个绘图类的主要差别66
4.1.3绘图类的使用方法67
4.2绘图设备类68
4.2.1CGdiObject类68
4.2.2CPen类68
4.2.3CBrush类71
4.2.4CFont类73
4.2.5CRgn类77
4.2.6CPalette和CBitmap类82
4.3.1Windows映像方式及其设置方法83
4.3坐标映像方式83
4.3.2逻辑坐标和设备坐标的转换84
4.4窗口和视口85
4.4.1窗口和视口的概念85
4.4.2窗口和视口有关的操作函数85
4.4.3窗口逻辑坐标与视口设备坐标的转换86
4.5其他绘图类操作函数89
4.5.1选用绘图设备对象90
4.5.2主要绘图属性设置函数91
5.1组织矢量图形系统的图形元素类93
5.1.1图形元素基类的组织93
第5章 实现矢量图形系统的文档和视图93
5.1.2点类图形元素组织94
5.1.3线类图形元素组织98
5.1.4面类图形元素组织100
5.1.5网络类图形元素的组织101
5.1.6图形参数类102
5.2组织矢量图形系统的文挡104
5.2.1组织面向对象的文档管理机制104
5.2.2利用MFC模板创建管理图形元素对象指针的对象104
5.2.3实现矢量图形系统的文档105
5.2.4实现文档的管理功能106
5.3.1建立坐标系116
5.3实现矢量图形系统的视图116
5.3.2实现各类图形元素的绘制功能122
5.3.3视图类的OnDraw函数133
5.3.4实现视图135
5.4各类图形元素几何属性的计算136
5.4.1图形元素长度的计算136
5.4.2图形元素面积的计算138
第6章 鼠标交互绘图140
6.1用鼠标绘图要解决的主要问题140
6.1.1捕捉鼠标操作消息140
6.1.4保存图形数据到文档142
6.1.3在屏幕上拖动图形142
6.1.2捕捉所有的鼠标输入142
6.1.5将图形以实际的形态重画143
6.2交互绘制各类图形元素143
6.2.1加入绘图菜单143
6.2.2获得图形元素的惟一识别号146
6.2.3绘制直线148
6.2.4绘制圆和填充圆151
6.2.5绘制圆弧154
6.2.6交互绘制标注文本162
6.2.7绘制连续直线和多边形区域170
6.2.8绘制网络点173
6.2.9绘制网络连接174
第7章 矢量图形系统的操作功能177
7.1增加图形操作菜单177
7.1.1增加菜单资源177
7.1.2增加消息处理函数178
7.2图形重画179
7.2.1全屏重画179
7.2.2局部重画180
7.3图形放大和摆动181
7.3.1图形放大和摆动的计算方法181
7.3.2图形放大和图形摆动功能的实现183
7.4重画上屏和重画首屏186
7.4.1记录屏幕状态186
7.4.2实现重画上屏和重画首屏功能189
7.5显示全图190
7.5.1各类图形元素的边界矩形计算191
7.5.2实现显示全图功能195
7.6提高矢量图形系统重画速度的基本方法198
7.6.1提高图形重画速度的方法198
7.6.2提高图形重画速度的实现方法198
7.6.3提高图形元素的绘制速度200
8.1.1各种图形元素的选中区域202
第8章 图形的选中、移动、旋转、删除202
8.1鼠标点选图形元素202
8.1.2各种图形元素的点选判断函数207
8.1.3选中图形元素的特殊显示212
8.1.4实现点选图形元素功能212
8.1.5放弃选中的图形元素218
8.1.6图形元素的显示和选中顺序219
8.2图形移动220
8.2.1各类图形元素的移动操作220
8.2.2实现图形移动操作功能222
8.3.1点与点的旋转操作225
8.3图形旋转225
8.3.2各类图形元素的旋转操作227
8.3.3实现旋转操作功能229
8.4图形元素的删除229
8.4.1删除操作的类型229
8.4.2从屏幕上删除图形元素的方法230
8.4.3各类图形元素的删除操作231
8.4.4实现图形元素删除操作235
第9章 图形的存取功能237
9.1利用串行化存取文档237
9.1.1CArchive类及CArchive对象的创建237
9.1.2Serialize函数239
9.1.3CObArray类的Serialize函数241
9.2实现矢量图形系统的存取功能242
9.2.1实现各个图形元素类的串行化242
9.2.2MFC框架程序的文档串行化机制248
9.2.3实现矢量图形系统的文档存取功能249
9.2.4设置和取消文档修改标志251
第10章 矢量图形系统的其他功能253
10.1子图块管理253
10.1.1组织管理子图块253
10.1.3实现子图块的绘制功能255
10.1.2创建子图块的方法255
10.2管理各种图形参数257
10.2.1管理颜色257
10.2.2管理图层260
10.3定制线型262
10.3.1线型的描述方式262
10.3.2实现线型所必须具备的功能263
10.3.3线型体的数据定义266
10.4区域的子图填充268
10.4.1管理填充子图块268
10.4.2绘制填充子图块268
10.5与其他图形系统的接口272
10.5.1读入其他图形系统的图形273
10.5.2输出可识别的接口文件279
10.6图形的打印输出281
10.6.1视图的打印机理和实现方法282
10.6.2打印功能的实现方法282
10.6.3实现矢量图形系统的打印功能285
第三篇 实现数据库管理系统293
第11章 开发数据库应用程序的基础知识293
11.1关系数据库293
11.1.1数据库的概念293
11.2SQL语言295
11.1.2关系数据库的基本术语295
11.2.1选择子式296
11.2.2过滤子式298
11.2.3排序子式299
11.3ODBC及创建ODBC数据源的方法301
11.3.1ODBC的优势301
11.3.2VC++中使用ODBC的方法302
11.3.3创建ODBC数据源302
11.3.4动态创建ODBC数据源308
12.1.2MFCAppWizard创建一个数据库应用程序的步骤312
12.1.1创建一个ODBC数据源312
12.1创建基于ODBC的数据库应用程序312
第12章 数据库应用程序开发技术312
12.2CRecordSet类功能分析314
12.2.1连接数据源和创建记录集合315
12.2.2与记录集合的数据交换318
12.2.3打开和关闭记录集合对象320
12.2.4过滤记录集合320
12.2.5排序记录集合321
12.2.6移动指向记录集合的记录指针323
12.2.7修改记录集合326
12.2.8CRecordSet类的其他操作功能328
12.2.9MFCClassWizard管理CRecordSet派生类331
12.3CRecordView视图类分析336
12.3.1CRecordView视图类336
12.3.2CRecordView视图对象与记录集合对象的联系337
12.3.3MFCClassWizard管理CRecordView派生类339
12.4基本数据库管理功能实现剖析344
12.4.1浏览功能344
12.4.2增加一个操作菜单350
12.4.3记录编辑功能352
12.4.4数据库过滤功能355
12.4.5数据库排序功能359
13.1.1视图的创建过程361
第13章 实现数据库浏览功能361
13.1创建一个数据库浏览视图361
13.1.2创建另外一类视图的步骤363
13.1.3在矢量图形系统中创建数据库浏览视图366
13.2创建一个CRecordSet派生类对象373
13.2.1创建一个ODBC数据源374
13.2.2创建管理记录集合的CRecordSet派生类375
13.2.3创建记录集合对象376
13.3实现数据库浏览视图377
13.3.1建立视图与记录集合对象的联系377
13.3.2获得数据库浏览视图的滚动区域378
13.3.3实现数据库浏览视图379
第14章 实现数据库编辑功能385
14.1在数据库浏览视图中建立记录指针385
14.2建立数据库编辑功能操作菜单389
14.2.1修改菜单资源389
14.2.2创建消息处理函数389
14.3建立编辑数据记录的对话框类391
14.3.1建立对话框资源391
14.3.2创建编辑数据记录的对话框类392
14.3.3设置对话框类的外部对象引用392
14.3.4建立对话框控制与记录集合类的映射变量的映射联系394
14.4.1获得记录的惟一识别号396
14.4增加和修改数据记录396
14.4.2增加记录397
14.4.3修改记录401
14.5删除记录402
14.5.1删除当前记录402
14.5.2删除所有记录403
第15章 通用数据库过滤功能405
15.1过滤操作的实现方式405
15.1.1固定条件过滤操作405
15.1.2固定方式过滤操作405
15.1.3通用条件过滤操作406
15.2创建组织过滤条件的对话框类407
15.2.1创建对话框资源407
15.2.2创建组织过滤条件的对话框类408
15.3组织过滤条件编辑器的各种功能409
15.3.1过滤条件编辑器编辑的过滤条件式的语法格式409
15.3.2定义和初始化对话框类的变量410
15.3.3产生和分解各级条件子式413
15.3.4初始化对话框的状态418
15.3.5增加条件子式419
15.3.6删除和修改条件子式425
15.3.7条件子式的分解功能429
15.3.8实现过滤操作432
15.4在数据库浏览视图中实现过滤功能434
15.4.1增加一个操作菜单434
15.4.2实现数据库过滤操作功能435
15.5增强过滤条件编辑器的功能436
15.5.1增强过滤条件分解能力436
15.5.2增强交互式编辑界面437
15.5.3存储过滤条件438
16.1.1可通用化的数据库管理功能439
16.1各种数据库管理功能的可通用化分析439
第16章 数据库管理功能通用化439
16.1.2不易通用化的功能440
16.2实现数据库管理功能通用化440
16.2.1通用化功能模块的方法441
16.2.2数据库操作功能模块通用化的步骤443
16.2.3选择操作不同的记录集合对象448
16.2.4增加应用程序管理的记录集合对象451
16.2.5增加通用数据库操作功能455
16.3数据库管理功能完全通用化457
17.1.1连接方式461
17.1连接方式及连接单元461
第17章 图形元素与属性数据的连接461
第四篇 实现GIS的常用功能461
17.1.2连接单元462
17.1.3连接的特性462
17.2属性数据的连接方法463
17.2.1隐含固定连接法463
17.2.2动态组织连接信息法464
17.3实现双向信息查询检索470
17.3.1通过属性数据检索矢量图形元素470
17.3.2通过图形元素检索属性数据472
18.1.1直线与直线的关系475
18.1直线与多边形区域的关系475
第18章 图形元素的平面几何关系计算475
18.1.2直线与多边形区域的相交关系479
18.1.3连续直线与多边形区域的相交关系482
18.2圆弧与多边形区域的关系485
18.2.1圆与直线的关系486
18.2.2圆弧与直线的关系489
18.2.3圆弧与多边形区域的关系492
18.3各类图形元素与圆形区域的关系495
18.3.1圆与圆的关系495
18.3.2圆弧与圆形区域的关系497
18.3.3直线与圆形区域的关系499
18.3.4连续直线与圆形区域的关系502
第19章 多边形区域叠加分析506
19.1两个多边形区域的交集506
19.1.1两个多边形区域交集的计算思路506
19.1.2计算两个多边形区域的交集507
19.2两个多边形区域的并集515
19.2.1两个多边形区域并集的计算思路515
19.2.2计算两个多边形区域的并集517
19.3一个多边形区域剪裁另外一个多边形区域524
19.3.1计算一个多边形区域剪裁另一个多边形区域的思路524
19.3.2计算一个多边形区域剪裁另一个多边形区域的补集525
19.4区域相交、相并、剪裁计算时的重合边界处理531
19.4.1相交、相并、剪裁计算时的重合边界处理情况分析531
19.4.2获得重合边界532
19.4.3相交、相并、剪裁计算时的重合边界处理536
19.5环形区域的相交、相并、剪裁计算的思路543
19.5.1实心区域与环形区域的相交、相并、剪裁计算544
19.5.2两个环形区域相交、相并、剪裁计算的思路和方法547
第20章 缓中区分析549
20.1点的缓冲区549
20.2直线的缓冲区550
20.3.1用区域并集方法获取连续直线缓冲区552
20.3连续直线的缓冲区552
20.3.2计算单侧连续直线缓冲区时的剪裁处理554
20.3.3加快连续直线缓冲区的计算速度561
20.4多边形区域的缓冲区563
第21章 网络分析565
21.1网络基本信息计算565
21.1.1枢纽点的确定方法565
21.1.2节点连接信息的描述方法和处理566
21.1.3管理整个网络组织和网络连接信息568
21.2最佳路径分析577
21.2.1最佳路径分析方法578
21.2.2正向最佳路径搜索579
21.2.3逆向最佳路径搜索585
21.2.4确定搜索方向的方法589
21.3最佳游历路径分析590
21.3.1求解最佳游历路径的方法590
21.3.2实现最佳节点游历功能591
21.4资源分配600
21.4.1获取所有节点到中心节点距离法600
21.4.2中心节点向外延伸法604
21.5连通分析612
附录 代码光盘与技术支持614
参考书目615