摘要: 1. 通用类通用类包含MgObject、MgDisposable、MgGuardDisposable、MgByteSource、MgByteSink、MgSerializable、MgService、MgNamedSerializable、MgWarnings、MgByteReader、MgColor、MgDateTime、MgServiceType和MgMimeType共14个类,图 3‑3是这些类的类图。图 3‑3 MapGudie Web API通用类类图我们可以将MapGuide Web API中的所有类分为常量类和非常量类两种。常量类只定义了一些常量,没有定义其他任何额外的成员属性或 阅读全文
posted @ 2013-03-29 17:11 GIS_小强 阅读(439) 评论(0) 推荐(0) 编辑
摘要: MapGuide预定义了许多命令用于提供一些常用的功能,例如平移地图、缩放地图、打印地图、选择要素、测量距离、创建缓冲区等。对于大部分预定义命令,我们只能直接使用它们,或者修改它们的显示名称、工具提示、显示在状态栏上的描述信息、图标等。下面我们以添加“Help”命令添加到工具栏为例,介绍如何使用预定义命令。1) 创建帮助文档。假设我们创建了如下的帮助文档“index.html”,将其保存在目录“<WebExInstallDir>/help”下。<html><head><meta http-equiv="Content-Type" c 阅读全文
posted @ 2013-03-29 17:10 GIS_小强 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 图 3‑4显示了基于MapGuide的Web应用程序的开发流程,整个开发流程可以分为五个阶段。图中,矩形代表任务,椭圆形被任务使用的或被任务创建的实体,箭头代表数据流。1) 加载文件类型的数据,配置到外部数据库的连接,通过联接(Join)一个要素源到另一个要素源扩展要素数据。2) 通过引用要素源的数据和为要素应用样式创建图层。3) 将图层结合起来创建地图。4) 通过Internet或Intrant发布地图,使用户可以通过客户端浏览地图。5) 使用MapGuide API为服务器端和客户端增加新的功能。图 3‑4 MapGuide应用程序开发流程在开源版MapGuide的网站上,提供了美国威斯康 阅读全文
posted @ 2013-03-29 17:09 GIS_小强 阅读(219) 评论(0) 推荐(0) 编辑
摘要: MapGuide提供了两种方式创建资源包。一种是使用MapGuide Studio,另一种是使用MapGuide站点管理器(Site Administrator)。如果要加载资源包,只能使用MapGuide站点管理器。1.使用站点管理器创建和加载资源包下面我们以开源版MapGuide提供的美国威斯康辛州希博伊根(Sheboygan)县的地图数据(http://download.osgeo.org/mapguide/releases/2.0.0/samples/Sheboygan.mgp)为例介绍如何使用站点管理器创建和加载资源包。首先,让我们来看看如何加载资源包“Sheboygan.mgp”。 阅读全文
posted @ 2013-03-29 17:08 GIS_小强 阅读(268) 评论(0) 推荐(0) 编辑
摘要: 同样,在介绍MapGuide 服务器如何处理枚举资源操作之前,让我们首先来看看MapGuide 服务器用于处理服务请求和操作的类,图19‑9显示服务请求处理器类的类图,图19‑10显示了操作处理器类的类图。图 19‑10 服务请求处理器类的类图图 19‑11 操作处理器类的类图MapGuide提供了资源服务、要素服务等多种服务,每种服务包含了大量操作。MapGuide为每种服务提供了一个服务请求处理器类,用于处理这些服务所提供的操作,例如MgResourceServiceHandler、MgFeatureServiceHanlder等。这些类都继承自IMgServiceHandler,并且实现 阅读全文
posted @ 2013-03-29 17:07 GIS_小强 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 本节中,我们将通过介绍如何完成枚举资源功能来介绍MapGuide Web扩展的部分源代码。在浏览器端的地址栏输入类似如下字符串,就会发送一个枚举资源的HTTP请求。http://hostname/mapGuide/mapagent.fcig?OPERATION=EnumerateResources&VERSION=1.0.0& RESOURCEID=Library:// &TYPE=FeatureSource&DEPTH=3下面我们来看看MapGuide Web扩展如何处理这个请求。在介绍MapGuide Web扩展如何处理枚举资源HTTP请求之前,让我们首先来 阅读全文
posted @ 2013-03-29 17:06 GIS_小强 阅读(224) 评论(0) 推荐(0) 编辑
摘要: 本节将介绍什么是HTTP API,HTTP API与MapGuide Web API的关系,以及如何使用HTTP API。一般情况下,我们并不需要使用HTTP API,而且Viewer API已经包装了某些必需的HTTP API。如果不打算对Viewer API进行一些修改的话,可以忽略本节的内容。1.1.1 什么是HTTP API?如果查看客户端API的JavaScript源代码,我们会发现类似如下所示的一些字符串。OPERATION=<OperationName>&VERSION=1.0.0&...例如,当用户使用AJAX Viewer选择一个要素时,会调用客户 阅读全文
posted @ 2013-03-29 17:05 GIS_小强 阅读(278) 评论(0) 推荐(0) 编辑
摘要: BASE64使用常用的URL密文编码方式,用于在HTTP环境下传递较长的标识信息。采用Base64编码不仅比较简短,同时也具有不可读性。以下地址是加密的迅雷专用下载地址,采用的是该编码。如thunder://QUFodHRwOi8vd3d3LmJhaWR1LmNvbS9pbWcvc3NsbTFfbG9nby5naWZaWg==ios中使用BASE64进行加密和解密的方法也很简单,可以直接用google-toolbox-for-mac的GTMBase64.h来实现google-toolbox-for-mac的对应地址如下:http://code.google.com/p/google-toolb 阅读全文
posted @ 2013-03-29 17:02 GIS_小强 阅读(249) 评论(0) 推荐(0) 编辑