`
javahigh1
  • 浏览: 1280415 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论
阅读更多

1.1 MapGuide API

MapGuide是一个三层架构的Web GIS系统,所以MapGuide API也分为了两大类:服务器端API和客户端API,如图3-1所示。

MapGuide API

3-1 MapGuide API

1.1.1 服务器端API

服务器端API也称之为MapGuide Web API,它是运行在Web应用服务器上的一系列类的集合,通过这些API可以实现创建地图,查询、更新和分析地图数据等功能。为了支持不同类型的开发和部署环境,MapGuide Web API提供了Java.NETPHP三种语言类型的API,这三种语言类型的API提供了完全相同的功能,只是语法上有所区别。按照实现功能的不同,我们可以将MapGuide Web API分为图3-1所示的模块。

l 通用类(Common):提供了一些通用类,这些类是实现其它类的基础,例如MgObjectMgDisposableMgColorMgByteReader等。其中,MgObjectMapGuide Web API中其它所有非常量类的基类。

l 集合类(Collection):提供了一些集合类,例如MgCollectionMgStringCollectionMgIntCollection等,这些集合类不是线程安全的,集合中的元素按照插入的顺序排序。其中,MgCollection是所有集合类的基类。

l 异常类(Exception):提供了MapGuide能够抛出的所有异常类,MgException是所有异常类的基类。

l 空间参考系类(Coordinate System):提供了用于获取空间参考系的定义信息、对坐标值进行坐标转换、测量两个坐标值间距离等功能的类。

l 几何对象类(Geometry):提供了创建和读写二2.5维几何对象,以及对几何对象进行分析的类。

l 要素类(Feature):提供了定义一个要素类和要素类中所有属性需要用到的类,例如MgFeatureClassDefinitionMgPropertyDefinitionMgProperty等。

l 地图和图层类(Maps and Layers):提供了创建和访问地图和图层所需的类,例如MgMapMgLayerMgLayerGroup等。

l 站点服务(Site Service):用于配置用户、用户组和用户Session

l 资源服务(Resource Service):用于操作资源库和资源。

l 渲染服务(Rendering Service):用于将地图渲染为图像,让用户使用AJAX ViewerFusion Viewer来浏览地图。

l 地图服务(Mapping Service):用于将地图创建为eMap格式的DWF文件,让用户可以使用DWF Viewer来浏览地图,或者将地图创建为ePlot格式的DWF文件用于打印。

l 制图服务(Drawing Service):提供了访问存储在DWF数据源中的DWF数据的功能。

l 要素服务(Feature Service):用于操作要素源中的要素数据。

l 分块服务(Tiling Service):用于将地图分割为固定大小的图像块,并且将这些图像缓存在MapGuide服务器上,当用户使用AJAX Viewer缩放或移动地图时,能够提供更好的性能。

l KML服务(KML Service):用于将地图发布为KML,用户可以使用Google Earth作为客户端来浏览MapGuide服务器提供的地图。

MapGuide Web API

3-2 MapGuide Web API的构成

Autodesk开发MapGuide Web API之时,内部开发人员为了便于对这些API进行测试,开发了一个基于Web的测试工具,它可以测试大部分服务类API。事实上,在MapGuide的安装版中也提供了这个工具。在浏览器的地址栏中输入如下的地址,就可以打开这个工具,

开源版MapGuide

http://mapguide_server:port/mapguide/mapagent/index.html

企业版MapGuide

http://mapguide_server:port/mapguide_xxxx/mapagent/index.html

它的用户界面如图3-3所示。上面的地址中,“mapguide_server”代表MapGuide Web扩展所在的服务器,“port”代表Web应用服务器的端口号,“xxxx”代表MapGuide的版本号。这个工具也是一个非常好的API学习工具和MapGuide应用程序调试工具,通过在网页上输入方法的所需的参数,可以非常方便和直观地看到方法的执行结果。

MapGuide Web Tier Test

3-3 MapGuide Web Tier Tester

1.1.2 客户端API

对于胖客户端,MapGuide StudioMapGuide Maestro提供了API用于定制它们的用户界面和功能。

对于瘦客户端,MapGuide提供了Viewer API,它由一组运行在浏览器的JavaScript函数组成,用于配合MapGuide Viewer和用户进行交互,通过这些API可以实现诸如缩放、平移、选择、打印等功能。非常遗憾的是,因为不同类型的Viewer基于完全不同的技术框架,所以不同类型的Viewer提供了完全不同的API,这对于MapGuide的二次开发造成了一定的不便。相对于其它类型的ViewerFusion Viewer能提供更加灵活和强大的功能,所以Autodesk将主要的精力用于改进Fuision Viewer,也建议用户使用Fusion Viewer

分享到:
评论

相关推荐

    MapGuide Viewer Api Help

    MapGuide Viewer API Help是针对MapGuide平台的基于Internet Explorer的ActiveX插件的参考文档,提供了详尽的API接口信息,对于开发人员来说是极其宝贵的资源。MapGuide是一个开源的地理信息系统(GIS)平台,它允许...

    mapguide开发实例

    这个“mapguide开发实例”提供的教程可能包括如何利用MapGuide API进行地图服务的开发、数据展示以及用户交互等核心功能。以下是对MapGuide开发的一些关键知识点的详细解释: 1. **MapGuide API**:MapGuide的核心...

    使用ASP.NET 开发 Mapguide

    提供的"Mapguide 文档(中文)——New.pdf"是Mapguide的中文学习资料,涵盖了系统架构、API介绍、开发实例等内容,是学习和深入理解Mapguide的重要参考资料。文档会帮助开发者理解和掌握Mapguide的使用,包括如何...

    Mapguide 培训文档(中文)

    文档可能涉及如何使用MapGuide API(如MgServerObjectFactory和MgResourceService等)进行开发。 7. **安全与权限**:这部分可能会介绍Mapguide的安全模型,如何设置用户角色、权限,以及如何保护GIS资源不被未经...

    mapguide安装及配置使用(英文版)

    你也可以使用MapGuide API(如JavaScript或.NET)开发自定义的地图应用。 8. **测试和优化**:在浏览器中打开MapGuide Viewer,输入服务器地址,验证地图是否能正常显示和操作。根据需要进行性能优化,如调整服务器...

    MapGuide事例

    2. **MapGuide API**:这是与MapGuide服务器进行通信的关键,开发者通过调用API来获取地图数据、执行地图操作和处理用户交互。例如,使用`MgMap`对象可以创建和管理地图实例,`MgLayer`对象则用于操作图层。 3. **...

    MapGuide技术分析

    MapGuide的主要特点是其跨平台支持、多浏览器兼容性、多样化的数据格式支持以及丰富的API,这些特性使得它成为二次开发的理想选择。 MapGuide的核心特点包括: 1. **跨平台支持**:MapGuide能够运行在Windows和...

    mapguide一个例子可以看看

    1. **MapGuide API**: 这是MapGuide提供的一套接口,用于在服务器端和客户端之间进行通信。通过API,你可以执行地图操作,如加载地图、缩放、平移等,还可以查询地理数据和执行其他高级功能。 2. **MgMap对象**: 在...

    MapGuide Viewer API 中文版

    MapGuide Viewer API 中文版 MapGuide Viewer API 是一个基于 MapGuide2009 的应用程序接口,提供了丰富的功能和方法供开发者使用。下面是对 MapGuide Viewer API 的详细介绍。 一、Form Frame 方法 Form Frame ...

    Mapguide 应用开发培训

    第二章: MapGuide API介绍 第三章: 使用站点和资源服务 第四章:使用地图和渲染服务 第五章: 使用要素服务Part I) 第六章:使用要素服务(Part II) 第八章: 与其他系统和程序整合 第九章: MapGuide Studio API介绍

    dotnetviewersample

    1. **MapGuide API**:MapGuide提供了一套全面的API,包括服务器端API和客户端API,用于创建地图应用。dotnetviewersample展示了如何在.NET环境中调用这些API,如获取地图资源、处理地图操作请求等。 2. **地图对象...

    mapguide官方培训资料 autodesk-mapguide-2010-enterprise-and-studio-essentials 下部

    在深入探讨Autodesk MapGuide 2010 Enterprise 和 Studio Essentials 下部培训资料之前,我们需要理解其核心技术概念,如应用程序编程接口(API)环境、网络服务器、FDO(Feature Data Objects)、Studio 和 Viewer...

    mapguide 3.0

    5. **服务器API**:MapGuide 3.0服务器提供了多种API,如.NET、Java和PHP,使得开发者可以创建自定义的地图服务和应用逻辑。 6. **扩展与定制**:MapGuide允许开发者通过扩展框架进行功能增强,例如创建自定义图层...

    mapguide空间数据搜索

    Mapguide提供了丰富的API函数来支持这些查询操作。例如,MgFeatureQueryOptions类允许开发者定义查询规则,包括基于一般属性(如字符串、数值比较)和几何属性(如空间关系判断)的过滤条件。空间关系的判断遵循OGC...

    MapGuide全面培训材料

    MapGuide提供了API(应用程序编程接口),允许开发者使用.NET、Java或PHP等语言构建自定义的Web GIS应用。开发者可以利用这些API实现地图交互、数据操作、业务逻辑等功能的扩展。 7. **富客户端应用**: 除了Web...

    web gis 开发软件 MapStudio

    3. **MapGuide API**:MapGuideAPI.dll是MapGuide的核心组件,它提供了与MapStudio交互的接口,使开发者能够利用编程语言(如C#、Java等)进行二次开发,扩展地图服务的功能。 4. **Schemas**:这个目录可能包含了...

    mapguide官方培训资料 autodesk-mapguide-2010-enterprise-and-studio-essentials 上部

    Studio提供了易于使用的图形用户界面和一系列API,使得开发者无需深入学习复杂的编程知识即可创建地图应用程序。 在2010年发布的这个版本中,Autodesk MapGuide通过提供先进的网络地图和地理空间分析功能,加强了其...

    MapGuide开发技术向导

    - **MapGuide Server API**:一系列用于开发自定义服务器端应用程序的API。 - **MapGuide Client API**:一组用于开发客户端应用程序的JavaScript库。 #### 5. **Autodesk商标和技术** Autodesk拥有众多知名GIS和...

    MapGuide资料集

    这份文档是MapGuide查看器API的中文参考指南,它详细介绍了如何使用MapGuide的JavaScript API来定制和扩展默认的地图查看器。API提供了诸如加载地图、控制图层显示、执行查询和地理编码等功能,对于前端开发者来说...

Global site tag (gtag.js) - Google Analytics