图书目录

目录

第1章GIS系统基础知识

1.1GIS的基本概念

1.1.1什么是GIS

1.1.2GIS的应用领域

1.1.3地理信息的特征

1.1.4地理数据的类型

1.1.5GIS与相关学科的关系

1.2GIS的前世今生

1.2.1GIS简史

1.2.2GIS的发展前景

1.3地理信息系统软件分类

1.4嵌入式GIS产品介绍

小结

思考题

第2章嵌入式系统概述

2.1Embedded

2.1.1定义

2.1.2嵌入式系统的应用及发展趋势

2.2嵌入式操作系统

2.2.1分类和特点

2.2.2VxWorks

2.2.3Windows CE和Windows Mobile

2.2.4嵌入式Linux

2.2.5诺基亚Symbian

2.2.6苹果iOS

2.2.7谷歌Android

小结

思考题

第3章嵌入式软件集成开发环境

3.1Windows CE(Windows Mobile)与Visual Studio 2008

3.1.1原生代码开发介绍

3.1.2托管代码开发介绍

3.2Embedded Linux、Nokia Symbian与Qt Creator

3.2.1Qt简介

3.2.2Qt开发新利器——Qt Creator

3.2.3使用Qt Creator进行开发

3.3Android OS与Eclipse

3.3.1NDK Native C原生库开发

3.3.2Android SDK

3.3.3大名鼎鼎的Eclipse

3.4iOS与Xcode

3.4.1Objective-C

3.4.2Xcode

小结

思考题

第4章GIS引擎索引机制

4.1空间索引

4.1.1固定网格索引

4.1.2四叉树

4.1.3R树

4.2属性索引

小结

思考题

第5章GIS文本绘制

5.1文本输出函数

5.1.1Windows Mobile和Windows CE

5.1.2Android的Java实现

5.1.3Embedded Linux、Nokia Symbian的Qt 实现

5.1.4iOS的Objective-C实现

5.2文本属性

5.2.1文本背景模式

5.2.2文本颜色

5.2.3文本背景颜色

5.3字符属性

5.3.1Windows Mobile 和Windows CE

5.3.2Android的Java实现

5.3.3Embedded Linux、Nokia Symbian的Qt 实现

5.3.4iOS的Objective-C实现

5.4字体

5.4.1Windows Mobile 和Windows CE

5.4.2Android的Java实现

5.4.3Embedded Linux、Nokia Symbian的Qt 实现

5.4.4iOS的Objective-C实现

5.5文本显示技巧

5.5.1“外发光”效果

5.5.2显示旋转文本

小结

思考题

第6章GIS绘图基础

6.1绘制点

6.1.1Windows Mobile 和Windows CE

6.1.2Android的Java实现

6.1.3Embedded Linux、Nokia Symbian的Qt 实现

6.1.4iOS的Objective-C实现

6.2绘制线

6.2.1Windows Mobile和Windows CE

6.2.2Android的Java实现

6.2.3Embedded Linux、Nokia Symbian的Qt 实现

6.2.4iOS的Objective-C实现

6.3绘制面

6.3.1Windows Mobile 和Windows CE

6.3.2Android的Java实现

6.3.3Embedded Linux、Nokia Symbian的Qt 实现

6.3.4iOS的Objective-C实现

6.4画笔

6.4.1系统库存画笔

6.4.2自定义画笔

6.5画刷

6.6绘图模式

6.6.1Windows Mobile和Windows CE

6.6.2Android的Java实现

6.6.3Embedded Linux、Nokia Symbian的Qt 实现

6.6.4iOS的Objective-C实现

6.7位图

6.7.1Windows Mobile 和Windows CE

6.7.2Android的Java实现

6.7.3Embedded Linux、Nokia Symbian的Qt 实现

6.7.4iOS的Objective-C实现

6.8块复制

6.8.1Windows Mobile 和Windows CE

6.8.2Android的Java实现

6.8.3Embedded Linux、Nokia Symbian的Qt 实现

6.8.4iOS的Objective-C实现

小结

思考题

第7章高级屏幕绘图

7.1DIB类

7.1.1DIB文件的结构

7.1.2CDIBSection类

7.1.3创建和显示DIBSection方式位图

7.1.4使用CDIBSectionCE

7.1.5CDIBsectionCE API

7.2未公开的图像API

7.3imgdecmp.dll和VOlmage类

7.4IJG JPEG库

7.5带内环的多边形显示

7.5.1概念

7.5.2扫描线填充算法

7.6线型

7.6.1概述

7.6.2GDIPlus

7.6.3原理与制作

7.6.4实现代码

7.6.5渲染线型

7.7位图画刷

7.7.1定义

7.7.2代码实现

小结

思考题

第8章规矩方圆——GIS与几何学

8.1向量

8.1.1向量的定义

8.1.2向量的加法

8.1.3向量的减法 

8.1.4向量积

8.2几何关系判定

8.2.1判定点是否在线段上

8.2.2判定线段和线段是否相交

8.2.3判定点是否落在面内

8.2.4判定线和面是否相交

8.2.5判定面和面是否相交

小结

思考题

第9章突破显示瓶颈——剪裁

9.1概念

9.2点剪裁

9.3线剪裁

9.3.1直接求交算法

9.3.2Cohen-Sutherlan算法

9.3.3梁友栋-Barsky算法

9.3.4中点算法

9.4面剪裁

9.4.1Sutherland-Hodgman算法

9.4.2Weiler-Atherton算法

9.5曲线抽稀

小结

思考题

第10章净化之美——地图标注

10.1特征

10.2点标注

10.2.1方位控制

10.2.2折行控制

10.2.3动态避让

10.2.4主要实现代码

10.3线标注

10.3.1沿线标注

10.3.2主要实现代码

10.4面标注

小结

思考题

第11章属性数据管理利器——嵌入式数据库

11.1嵌入式数据库

11.1.1Berkeley DB

11.1.2SQLite

11.1.3Berkeley DB和SQLite对比

11.2几何对象标准存储

11.2.1WKT

11.2.2WKB

11.2.3几个重要的类

11.3代码实现

11.3.1创建数据库和数据表

11.3.2插入记录

11.3.3查询数据库

11.3.4删除记录

11.3.5对空间几何数据的存储

小结

思考题

第12章万剑归宗——跨平台的本质

12.1一个理念

12.2两个重点

12.2.1数据部分

12.2.2渲染部分

12.3同根生——同操作系统下跨语言的实现

12.3.1Windows CE和Windows Mobile OS 下C++与.NET的互操作

12.3.2Android OS下C++与Java的互操作

12.4共殊相——不同操作系统下的实现

12.5交叉编译

小结

思考题

第13章嵌入式GIS引擎底层代码实现

13.1MyGeometry

13.1.1.H文件

13.1.2.CPP文件

13.2MyPoint

13.2.1.H文件

13.2.2.CPP文件

13.3MyLineString

13.3.1.H文件

13.3.2.CPP文件

13.4MyPolygon

13.4.1.H文件

13.4.2.CPP文件

13.5MyLayer

13.5.1.H文件

13.5.2.CPP文件

13.6MyMap

13.6.1.H文件

13.6.2.CPP文件

小结

思考题

第14章案例分析——城管通

14.1项目概述

14.2项目目标

14.3产品特征

14.3.1问题上报

14.3.2核查核实

14.3.3任务通知

14.3.4历史记录

14.3.5单键拨号

14.3.6在线查询

14.3.7地图操作

14.3.8在线升级

14.3.9定位管理

14.3.10信息普查

14.3.11问题处置

14.3.12短信呼叫

14.3.13拍照录音

14.4项目涉及的GIS功能与实现

14.4.1地图浏览

14.4.2地图放大

14.4.3地图缩小

14.4.4地图漫游

14.4.5全幅显示

14.4.6地图旋转

14.4.7图层控制

14.4.8空间查询和属性查询

14.4.9动态图层(TrackingLayer)和GPS模拟

14.4.10专题图

14.4.11特殊图层

小结

思考题