图书介绍

Visual C++开发GIS系统 第2版PDF|Epub|txt|kindle电子书版本网盘下载

Visual C++开发GIS系统 第2版
  • 陈建春编著 著
  • 出版社: 北京:电子工业出版社
  • ISBN:7121003341
  • 出版时间:2004
  • 标注页数:615页
  • 文件大小:51MB
  • 文件页数:632页
  • 主题词:C语言-程序设计-应用-地理信息系统

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

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

热门推荐