简介
本书通过理论与实例相结合的方式系统地介绍了在Visual C++编程环
境下,基于MapX开发的理论和方法,具体包括:MapX的基础知识、地图化
及工具使用与定制、图层和图元、数据绑定技术、数据库的访问、专题图
的制作、应用程序的发布等设计技巧和主要方法,通过大量的示例重点讲
解在Visual C++环境下的MapX编程技术,从而使读者达到学以致用的目的
。
本书内容全面,循序渐进,深入浅出,以理论够用为度,加大了实践
环节。本书不仅适合于从事地理信息系统开发的软件工程师,而且适合于
大中专院校计算机及相关的专业的学生,还可以作为地理信息系统开发培
训班和Visual C++应用程序设计者的教材或参考书。
目录
目录
1 概述
1.1 地理信息系统
1.1.1 地理信息系统概述
1.1.2 GIS分类与开发方式
1.1.3 地理信息系统软件
1.2 MapInfo简介
1.2.1 Maplnfo概述
1.2.2 MapInfo的软件开发思想
1.2.3 MapInfo的功能特色
1.2.4 MapInfo的数据组织
1.2.5 Mapinfo Professional
1.2.6 Mapinfo系列产品介绍
1.2.7 主要应用领域
1.3 MapX
1.3.1 MapX主要功能
1.3.2 MapX v5.0的特性
1.4 Visual C++编程语言
1.4.1 Visual C++简介
1.4.2 ActiveX
1.4.3 VARIANT类型
1.5 本章小结
2 MapX基础
2.1 MapX入门
2.1.1 MapX空间数据结构
2.1.2 MapX对象模型
2.1.3 图层
2.2 安装MapX
2.2.1 系统要求
2.2.2 安装过程
2.3 Geoset和GeoDictionary管理器
2.3.1 Geoset管理器
2.3.2 GeoDictionary管理器
2.4 Map对象
2.5 Visual C++中创建地图
2.5.1 MapX的设置
2.5.2 主视图中创建简单地图
2.5.3 在对话框中创建地图
2.5.4 导出地图
2.5.5 灵活地开发GST文件
2.6 本章小结
3 MapX工具
3.1 MapX标准工具
3.2 标准工具的使用
3.2.1 箭头工具
3.2.2 平移工具
3.2.3 居中工具
3.2.4 放大工具
3.2.5 缩小工具
3.2.6 符号工具
3.2.7 文本工具
3.2.8 选择工具
3.2.9 半径选择工具
3.2.10 矩形选择工具
3.2.11 多边形选择工具
3.2.12 添加标签工具
3.2.13 添加线条工具
3.2.14 添加折线工具
3.2.15 添加区域工具
3.2.16 添加点工具
3.3 自定义工具
3.3.1 创建工具
3.3.2 工具处理过程
3.3.3 使用工具
3.4 工具创建示例
3.4.1 手动测距计算
3.4.2 拖曳图元
3.5 本章小结
4 Layers与Features
4.1 Layer对象与Layers集合
4.1.1 Layer对象
4.1.2 Layers集合
4.2 图层与图元
4.2.1 图层的顺序
4.2.2 图层的图元类型
4.2.3 图层的缩放
4.3 Feature对象与Features集合
4.3.1 Feature对象
4.3.2 Features集合
4.4 Selection集合
4.4.1 添加方法
4.4.2 获得图元数目
4.4.3 克隆方法
4.4.4 集合交
4.4.5 删除方法
4.4.6 替代方法
4.4.7 获得指定的图元
4.4.8 选择图层中指定点处的图元
4.4.9 从图层中选择某点周围指定半径内的图元
4.4.10 选择矩形中的图层图元
4.4.11 选择区域内的图层图元
4.4.12 取消选择
4.4.13 重载操作符
4.5 在地图中查找图元
4.5.1 Find对象
4.5.2 FindFeature对象
4.6 Visual C++环境下操作示例
4.6.1 计算高速公路总长度
4.6.2 图元的闪烁
4.6.3 查找城市
4.6.4 综合搜索
4.7 本章小结
5 Style对象
5.1 Style对象概述
5.1.1 属性类方法
5.1.2 操作类方法
5.2 线图元式样
5.2.1 线图元颇色
5.2.2 线图元式样
5.2.3 线图元宽度
5.2.4 式样属性选择对话框
5.2.5 输出
5.3 面图元式样
5.3.1 颜色控制
5.3.2 面图元填充式样
5.3.3 边界式样
5.3.4 边界线宽
5.3.5 式样属性选择对话框
5.3.6 输出
5.4 文本式样
5.4.1 颜色控制
5.4.2 文本阴影
5.4.3 文本光晕
5.4.4 大写字母显示控制
5.4.5 旋转显示
5.4.6 式样属性选择对话框
5.4.7 输出
5.5 符号式样
5.5.1 符号类型
5.5.2 位图符号
5.5.3 字体符号
5.5.4 向量符号
5.5.5 符号的输出
5.5.6 属性选择对话框
5.6 Visual C++环境下开发示例
5.6.1 改变TypeTrue字体符号大小
5.6.2 改变文本属性
5.7 本章小结
6 用DBMS访问数据库
6.1 MapInfo SpatialWare
6.1.1 SpatialWare介绍
6.1.2 安装及配置
6.1.3 数据输入与查询
6.2 Oracle Spatial
6.2.1 Oracle Spatial简介
6.2.2 空间数据的准备和管理
6.3 MapX访问空间数据库
6.3.1 访问空间数据的方法
6.3.2 通过Layerlnfo访问空间数据
6.3.3 通过.tab文件访问远程表
6.4 LayerInfo对象
6.4.1 LayerInfo对象方法
6.4.2 LayerInfo参数
6.5 连接字符串格式
6.5.1 ODBC连接字符串格式
6.5.2 Oracle Spatial连接字符串格式
6.6 地图目录
6.6.1 管理地图目录
6.6.2 加载空间数据
6.6.3 手工创建地图目录
6.7 地图化DBMS表
6.7.1 点样式
6.7.2 线样式
6.7.3 填充样式
6.8 Visual C++环境下开发示例
6.9 本章小结
7 MapX的数据绑定
7.1 数据绑定
7.1.1 空间数据存储方式
7.1.2 数据绑定简述
7.1.3 向地图添加数据
7.2 DataSet对象和DataSets集合
7.2.1 DataSet对象
7.2.2 DataSets集合
7.3 使用Fields集合
7.3.1 Field对象
7.3.2 Fields集合
7.4 BindLayer对象
7.4.1 绑定的图层名
7.4.2 绑定的图层类型
7.4.3 参考字段
7.4.4 参考图层
7.4.5 Filespec
7.5 数据绑定事件
7.5.1 RequestData事件
7.5.2 ResolveDataBind事件
7.5.3 ResolveDataBindEx事件
7.5.4 DataMismatch事件
7.6 Visual C++环境下数据绑定示例
7.6.1 图层绑定
7.6.2 文件绑定
7.6.3 DAO绑定
7.6.4 ODBC绑定
7.6.5 Unbound绑定
7.6.6 安全数组绑定
7.6.7 将数据显示为点图层
7.7 本章小结
8 MapX主题地图
8.1 规划主题地图
8.1.1 主题地图的概念
8.1.2 规划主题地图
8.2 主题地图类型
8.2.1 独立值地图
8.2.2 范围地图
8.2.3 等级符号地图
8.2.4 点密度地图
8.2.5 柱状图
8.2.6 饼状图
8.3 Theme对象和Themes集合
8.3.1 Theme对象
8.3.2 Themes集合
8.4 ThemeProperties对象
8.4.1 适用于范围专题图的方法
8.4.2 适用于柱状专题图的方法
8.4.3 适用于等级专题图的方法
8.4.4 适用于饼状专题图的方法
8.4.5 适用于点密度专题图的方法
8.4.6 适用于独立值专题图的方法
8.5 类别对象与集合
8.5.1 RangeCategory对象
8.5.2 RangeCategories集合
8.5.3 MultivarCategory对象
8.5.4 MultivarCategories集合
8.5.5 IndividualValueCategory对象
8.5.6 IndividualValueCategories集合
8.6 主题图例
8.6.1 Legend对象
8.6.2 LegendText对象与LegendTexts集合
8.6.3 LegendTexts集合
8.7 Visual C++环境下主题地图绘制示例
8.7.1 各种范围专题地图的绘制
8.7.2 运行中主题地图的修改
8.8 本章小结
9 逐层细化图层
9.1 逐层细化图层概述
9.1.1 逐层细化图层
9.1.2 逐层细化需注意的问题
9.2 逐层细化应用程序开发步骤
9.2.1 主要开发步骤
9.2.2 准备逐层细化图层
9.2.3 创建逐层细化和卷起工具
9.3 实施逐层细化的相关方法
9.3.1 DrilldownAddFeatures方法
9.3.2 DrilldownRemoveFeatures方法
9.3.3 Layer.DrilldownReset方法
9.3.4 Layer.GetDrilldownFeaturesByID方法
9.4 逐层细化的限制和要求
9.5 逐层细化开发示例
9.5.1 准备逐层细化图层
9.5.2 创建工具与初始化
9.5.3 选取工具
9.5.4 ToolUsed事件代码
9.6 本章小结
10 MapX应用程序的发布
10.1 制作安装程序工具概述
10.1.1 InstallShield
10.1.2 Setup Factory
10.1.3 Wise
10.1.4 Inno Setup
10.1.5 Tarma Installer
10.1.6 Nullsoft Installation System
10.1.7 Install Creator
10.1.8 Setup Specialist
10.1.9 SetupBuilder Professional
10.1.10 Setup2Go
10.2 发布应用程序所需的项目和步骤
10.2.1 客户安装项目
10.2.2 客户安装步骤
10.3 打包文件的确定
10.4 注册与许可证
10.4.1 MapX的注册
10.4.2 注册表的修改
10.4.3 通过注册对ODBC设置
10.4.4 MapX许可证
10.5 应用程序的发布
10.5.1 常规设计
10.5.2 屏幕设计
10.5.3 卸载
10.5.4 文件导入
10.5.5 生成安装文件
10.6 本章小结
11 Visual C++开发案例
11.1 MapX中鼠标事件
11.1.1 开发思路
11.1.2 开发步骤
11.1.3 部分源代码
11.2 道路交点的计算
11.2.1 开发思路
11.2.2 开发步骤
11.2.3 部分源代码
11.3 道路上两点间距离计算
11.3.1 开发思路
11.3.2 开发步骤
11.3.3 部分源代码
11.4 基于MapX的鹰眼图实现
11.4.1 开发思路
11.4.2 开发步骤
11.4.3 部分源代码
11.5 路网中最短路径计算
11.5.1 开发思路
11.5.2 主要步骤
11.5.3 部分源代码
11.6 比例尺的绘制
11.6.1 开发思路
11.6.2 开发步骤
11.6.3 部分源码
11.7 使用数据库
11.7.1 几种连接方式
11.7.2 开发步骤
11.7.3 部分源码
11.8 GPS目标轨迹显示
11.8.1 开发思路
11.8.2 开发步骤
11.8.3 关键代码
11.9 本章小结
参考文献
1 概述
1.1 地理信息系统
1.1.1 地理信息系统概述
1.1.2 GIS分类与开发方式
1.1.3 地理信息系统软件
1.2 MapInfo简介
1.2.1 Maplnfo概述
1.2.2 MapInfo的软件开发思想
1.2.3 MapInfo的功能特色
1.2.4 MapInfo的数据组织
1.2.5 Mapinfo Professional
1.2.6 Mapinfo系列产品介绍
1.2.7 主要应用领域
1.3 MapX
1.3.1 MapX主要功能
1.3.2 MapX v5.0的特性
1.4 Visual C++编程语言
1.4.1 Visual C++简介
1.4.2 ActiveX
1.4.3 VARIANT类型
1.5 本章小结
2 MapX基础
2.1 MapX入门
2.1.1 MapX空间数据结构
2.1.2 MapX对象模型
2.1.3 图层
2.2 安装MapX
2.2.1 系统要求
2.2.2 安装过程
2.3 Geoset和GeoDictionary管理器
2.3.1 Geoset管理器
2.3.2 GeoDictionary管理器
2.4 Map对象
2.5 Visual C++中创建地图
2.5.1 MapX的设置
2.5.2 主视图中创建简单地图
2.5.3 在对话框中创建地图
2.5.4 导出地图
2.5.5 灵活地开发GST文件
2.6 本章小结
3 MapX工具
3.1 MapX标准工具
3.2 标准工具的使用
3.2.1 箭头工具
3.2.2 平移工具
3.2.3 居中工具
3.2.4 放大工具
3.2.5 缩小工具
3.2.6 符号工具
3.2.7 文本工具
3.2.8 选择工具
3.2.9 半径选择工具
3.2.10 矩形选择工具
3.2.11 多边形选择工具
3.2.12 添加标签工具
3.2.13 添加线条工具
3.2.14 添加折线工具
3.2.15 添加区域工具
3.2.16 添加点工具
3.3 自定义工具
3.3.1 创建工具
3.3.2 工具处理过程
3.3.3 使用工具
3.4 工具创建示例
3.4.1 手动测距计算
3.4.2 拖曳图元
3.5 本章小结
4 Layers与Features
4.1 Layer对象与Layers集合
4.1.1 Layer对象
4.1.2 Layers集合
4.2 图层与图元
4.2.1 图层的顺序
4.2.2 图层的图元类型
4.2.3 图层的缩放
4.3 Feature对象与Features集合
4.3.1 Feature对象
4.3.2 Features集合
4.4 Selection集合
4.4.1 添加方法
4.4.2 获得图元数目
4.4.3 克隆方法
4.4.4 集合交
4.4.5 删除方法
4.4.6 替代方法
4.4.7 获得指定的图元
4.4.8 选择图层中指定点处的图元
4.4.9 从图层中选择某点周围指定半径内的图元
4.4.10 选择矩形中的图层图元
4.4.11 选择区域内的图层图元
4.4.12 取消选择
4.4.13 重载操作符
4.5 在地图中查找图元
4.5.1 Find对象
4.5.2 FindFeature对象
4.6 Visual C++环境下操作示例
4.6.1 计算高速公路总长度
4.6.2 图元的闪烁
4.6.3 查找城市
4.6.4 综合搜索
4.7 本章小结
5 Style对象
5.1 Style对象概述
5.1.1 属性类方法
5.1.2 操作类方法
5.2 线图元式样
5.2.1 线图元颇色
5.2.2 线图元式样
5.2.3 线图元宽度
5.2.4 式样属性选择对话框
5.2.5 输出
5.3 面图元式样
5.3.1 颜色控制
5.3.2 面图元填充式样
5.3.3 边界式样
5.3.4 边界线宽
5.3.5 式样属性选择对话框
5.3.6 输出
5.4 文本式样
5.4.1 颜色控制
5.4.2 文本阴影
5.4.3 文本光晕
5.4.4 大写字母显示控制
5.4.5 旋转显示
5.4.6 式样属性选择对话框
5.4.7 输出
5.5 符号式样
5.5.1 符号类型
5.5.2 位图符号
5.5.3 字体符号
5.5.4 向量符号
5.5.5 符号的输出
5.5.6 属性选择对话框
5.6 Visual C++环境下开发示例
5.6.1 改变TypeTrue字体符号大小
5.6.2 改变文本属性
5.7 本章小结
6 用DBMS访问数据库
6.1 MapInfo SpatialWare
6.1.1 SpatialWare介绍
6.1.2 安装及配置
6.1.3 数据输入与查询
6.2 Oracle Spatial
6.2.1 Oracle Spatial简介
6.2.2 空间数据的准备和管理
6.3 MapX访问空间数据库
6.3.1 访问空间数据的方法
6.3.2 通过Layerlnfo访问空间数据
6.3.3 通过.tab文件访问远程表
6.4 LayerInfo对象
6.4.1 LayerInfo对象方法
6.4.2 LayerInfo参数
6.5 连接字符串格式
6.5.1 ODBC连接字符串格式
6.5.2 Oracle Spatial连接字符串格式
6.6 地图目录
6.6.1 管理地图目录
6.6.2 加载空间数据
6.6.3 手工创建地图目录
6.7 地图化DBMS表
6.7.1 点样式
6.7.2 线样式
6.7.3 填充样式
6.8 Visual C++环境下开发示例
6.9 本章小结
7 MapX的数据绑定
7.1 数据绑定
7.1.1 空间数据存储方式
7.1.2 数据绑定简述
7.1.3 向地图添加数据
7.2 DataSet对象和DataSets集合
7.2.1 DataSet对象
7.2.2 DataSets集合
7.3 使用Fields集合
7.3.1 Field对象
7.3.2 Fields集合
7.4 BindLayer对象
7.4.1 绑定的图层名
7.4.2 绑定的图层类型
7.4.3 参考字段
7.4.4 参考图层
7.4.5 Filespec
7.5 数据绑定事件
7.5.1 RequestData事件
7.5.2 ResolveDataBind事件
7.5.3 ResolveDataBindEx事件
7.5.4 DataMismatch事件
7.6 Visual C++环境下数据绑定示例
7.6.1 图层绑定
7.6.2 文件绑定
7.6.3 DAO绑定
7.6.4 ODBC绑定
7.6.5 Unbound绑定
7.6.6 安全数组绑定
7.6.7 将数据显示为点图层
7.7 本章小结
8 MapX主题地图
8.1 规划主题地图
8.1.1 主题地图的概念
8.1.2 规划主题地图
8.2 主题地图类型
8.2.1 独立值地图
8.2.2 范围地图
8.2.3 等级符号地图
8.2.4 点密度地图
8.2.5 柱状图
8.2.6 饼状图
8.3 Theme对象和Themes集合
8.3.1 Theme对象
8.3.2 Themes集合
8.4 ThemeProperties对象
8.4.1 适用于范围专题图的方法
8.4.2 适用于柱状专题图的方法
8.4.3 适用于等级专题图的方法
8.4.4 适用于饼状专题图的方法
8.4.5 适用于点密度专题图的方法
8.4.6 适用于独立值专题图的方法
8.5 类别对象与集合
8.5.1 RangeCategory对象
8.5.2 RangeCategories集合
8.5.3 MultivarCategory对象
8.5.4 MultivarCategories集合
8.5.5 IndividualValueCategory对象
8.5.6 IndividualValueCategories集合
8.6 主题图例
8.6.1 Legend对象
8.6.2 LegendText对象与LegendTexts集合
8.6.3 LegendTexts集合
8.7 Visual C++环境下主题地图绘制示例
8.7.1 各种范围专题地图的绘制
8.7.2 运行中主题地图的修改
8.8 本章小结
9 逐层细化图层
9.1 逐层细化图层概述
9.1.1 逐层细化图层
9.1.2 逐层细化需注意的问题
9.2 逐层细化应用程序开发步骤
9.2.1 主要开发步骤
9.2.2 准备逐层细化图层
9.2.3 创建逐层细化和卷起工具
9.3 实施逐层细化的相关方法
9.3.1 DrilldownAddFeatures方法
9.3.2 DrilldownRemoveFeatures方法
9.3.3 Layer.DrilldownReset方法
9.3.4 Layer.GetDrilldownFeaturesByID方法
9.4 逐层细化的限制和要求
9.5 逐层细化开发示例
9.5.1 准备逐层细化图层
9.5.2 创建工具与初始化
9.5.3 选取工具
9.5.4 ToolUsed事件代码
9.6 本章小结
10 MapX应用程序的发布
10.1 制作安装程序工具概述
10.1.1 InstallShield
10.1.2 Setup Factory
10.1.3 Wise
10.1.4 Inno Setup
10.1.5 Tarma Installer
10.1.6 Nullsoft Installation System
10.1.7 Install Creator
10.1.8 Setup Specialist
10.1.9 SetupBuilder Professional
10.1.10 Setup2Go
10.2 发布应用程序所需的项目和步骤
10.2.1 客户安装项目
10.2.2 客户安装步骤
10.3 打包文件的确定
10.4 注册与许可证
10.4.1 MapX的注册
10.4.2 注册表的修改
10.4.3 通过注册对ODBC设置
10.4.4 MapX许可证
10.5 应用程序的发布
10.5.1 常规设计
10.5.2 屏幕设计
10.5.3 卸载
10.5.4 文件导入
10.5.5 生成安装文件
10.6 本章小结
11 Visual C++开发案例
11.1 MapX中鼠标事件
11.1.1 开发思路
11.1.2 开发步骤
11.1.3 部分源代码
11.2 道路交点的计算
11.2.1 开发思路
11.2.2 开发步骤
11.2.3 部分源代码
11.3 道路上两点间距离计算
11.3.1 开发思路
11.3.2 开发步骤
11.3.3 部分源代码
11.4 基于MapX的鹰眼图实现
11.4.1 开发思路
11.4.2 开发步骤
11.4.3 部分源代码
11.5 路网中最短路径计算
11.5.1 开发思路
11.5.2 主要步骤
11.5.3 部分源代码
11.6 比例尺的绘制
11.6.1 开发思路
11.6.2 开发步骤
11.6.3 部分源码
11.7 使用数据库
11.7.1 几种连接方式
11.7.2 开发步骤
11.7.3 部分源码
11.8 GPS目标轨迹显示
11.8.1 开发思路
11.8.2 开发步骤
11.8.3 关键代码
11.9 本章小结
参考文献
Visual C++环境下MapX的开发技术
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问
Video Player
×
Audio Player
×
pdf Player
×