Posted by
蒋波涛
27 April,2008 Views
经过将近11个月的“迭代式”写作经历,《插件式GIS应用框架的设计与实现》一书稿件终于完成了,本书从最开始使用ArcGIS Engine9.1+Janus WinForms Controls2.0开始,到成稿时使用9.2和Janus 3.5。一路修改一路更新,终于最后定稿。
下面是将提交出版社的目录:
前言
致谢
第1章 走进插件式GIS应用框架
1.1. 应用框架精讲
1.1.1.应用框架简介
1.1.2.应用框架的特点
1.1.3.应用框架 GIS
1.2. 插件式应用框架
1.3. ArcGIS Engine简介
1.3.1.产品 ArcGIS
1.3.2.开发组件──ArcGIS Engine GIS
1.3.3.产品类型 ArcGIS Engine
1.3.4.新特性展现 ArcGIS Engine9.2
1.4. 第三方UI组件──Janus Systems
1.5. 小结
第2章 框架插件引擎设计
2.1. 他山之石──ArcMap插件机制
2.2. 框架通讯契约──接口
2.2.1.接口的秘密
2.2.2.实现接口与显式实现接口
2.2.3.的实现继承 C#
2.2.4.继承和重用
2.3. 框架宿主程序设计与实现
2.3.1.属性──合理冲破私有变量访问限制
2.3.2.动手──从宿主程序开始
2.4. 框架通讯契约设计
2.4.1.接口 IPlugin
2.4.2.接口 ICommand
2.4.3.接口 ITool
2.4.4.接口和实现 IItemDef
2.4.5.接口 IMenuDef
2.4.6.接口 IToolBarDef
2.4.7.接口 IDockableWindowDef
2.4.8.通讯契约设计小结
2.5. 插件容器设计与实现
2.5.1.集合
2.5.2.泛型机制
2.5.3.聚合法产生容器
2.5.4.产生插件容器
2.5.5.访问容器元素
2.6. 动态加载框架插件
2.6.1.反射机制
2.6.2.考虑异常
2.6.3.插件的动态加载和对象生成
2.7. 框架日志处理
2.7.1.一个Log4net例子
2.7.2.配置文件 Log4net
2.7.3.框架的日志设计
2.8. 插件的分类
2.8.1.类型转换与判别
2.8.2.插件分类的设计与实现
2.9. 小结
第3章 框架宿主程序设计
3.1. 静态UI设计
3.1.1.菜单和状态栏设计
3.1.2.浮动面板设计
3.2. 插件UI对象
3.2.1.公共变量的设计
3.2.2.插件获取
3.2.3.解析ICommand和ITool对象
3.2.4.解析IMenuDef和IToolBarDef对象
3.2.5.解析IDockableWindowDef对象
3.3. 插件对象的事件处理
3.3.1.松散耦合的关键──委托与事件
3.3.2.的Click事件 ITool
3.3.3.的Click事件 ICommand
3.3.4.的地图交互事件 ITool
3.4. 小结
第4章 框架插件设计
4.1. ArcGIS Engine的扩展框架
4.1.1.基础类
4.1.2.内置Command和Tool
4.1.3.对象 HookHelper
4.2. 如虎添翼的Geoprocessing
4.2.1.什么是Geoprocessing
4.2.2.运行Geoprocessing工具
4.2.3.的批处理 Geoprocessing
4.3. 插件的设计和实现
4.3.1.插件实例 ICommand
4.3.2.类型插件实例 ITool
4.3.3.使用内置ITool对象实例
4.3.4.类型插件实例 IDockableWindowDef
4.4. 小结
第5章 宿主程序的高级设计
5.1. 两种视图的同步
5.1.1.共享同一份地图
5.1.2.同步类的使用
5.2. 使用TOCControl控制图层
5.2.1.选择TOC控件的元素
5.2.2.显示Map和Layer属性
5.2.3.快捷菜单的设计实现
5.3. 要素数据的表格显示
5.3.1.从FeatureClass到DataTable
5.3.2.的显示 DataTable
5.3.3.要素的定位与闪烁
5.4. 符号控件应用
5.4.1.控件 SymbologyControl
5.4.2.控件使用实例
5.5. 小结
第6章 GIS算法的实现
6.1. 图结构简介
6.2. 自动构面算法
6.2.1.线网拆分
6.2.2.左转算法及其改进
6.2.3.构造有向图
6.2.4.左转算法实现
6.2.5.剔除无效多边形
6.2.6.岛和洞的处理
6.3. 单源最短路径算法
6.3.1.算法 Dijkstra
6.3.2.网络节点和边的定义
6.3.3.构建拓扑网络
6.3.4.算法实现 Dijkstra
6.4. 小结
第7章 框架辅助组件库设计
7.1. NBGISFunLib设计
7.2. 复制要素类
7.2.1.字段的复制
7.2.2.要素类的复制 Annotation
7.3. 要素数据加载
7.3.1.字段匹配
7.3.2.数据加载
7.3.3.加载异常问题
7.4. 小结
第8章 程序的部署与打包
8.1. ArcGIS Engine自定义程序部署
8.2. 程序打包
8.2.1.介绍 InstallShield Express X
8.2.2.安装包的制作过程
8.3. 小结
本书并不是一本单纯的介绍插件式框架开发的书籍,大家从目录中可以看到,它还涵盖了面向对象语言、算法、具体功能、打包和部署等方面的主题。
还需要提醒的是,本书并不适合能够在1-2个月内自己写出一个插件式框架或觉得这个框架非常简单的“高手”阅读。正如我从来不会去看书店里卖的诸如《Office使用教程》一类的书一样,因为每本书都有其目标读者,而且,这些我们看不上的书,其销量远远大于曲高和寡的所谓“经典书籍”。
Related Items
期待其现身市场,一定去买