目录
第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特殊图层
小结
思考题
