目录第一章MapXtreme简介..............................................................................................................1第二章MapXtreme的安装和配置.............................................................................................11第三章MapXtreme开发的必备知识——HTML介绍............................................................14第四章MapXtreme开发的必备知识——ASP技术介绍.................................................................19第五章地图引擎(MapEngine)....................................................................................................33第六章MapXtreme系统开发构架.....................................................................................................38第七章地图操作功能的实现..............................................................................................................45第八章客户端基于Applet的MapXtreme开发指南......................................................................53第九章MapXtreme高级应用开发.....................................................................................................68第一章MapXtreme简介概述随着计算机及网络技术的发展,社会信息的传播将越来越多地依靠Internet和Intranet为载体。Mapinfo公司的MapXtreme是运行于企业Intranet或Extranet网络上的地图应用服务器。利用MapXtreme企业可以将其信息和资源在地图上以多种可视化的方式展现出来,实现企业信息的对外发布,帮助企业进行合理的资源分配,从而有助于企业更有效地进行商业决策及资产管理。第一节MapXtreme引擎MapX是一个可编程的OCX控件,是可以重复利用的可编程对象,它提供绝大部分MapInfoProfessional支持的地图功能,可以利用编程平台所提供的数据库访问机制,也可以利用自身提供的ODBC接口,并可进行数据的智能绑定,下面是主要的功能列表:*专题化地图地图专题化是用数据制作专题地图的过程。一个专题通常是一条或多条数据。专题化指颜色编码,也指区域填充、符号填充或是你所用于将数据显示到地图上的专题制作方法。最常用的专题图是天气预报图。看到红色区,我们知道那个地方热(温度高);兰色区表示冷(温度低)。还有许许多多类似的显示数据到地图的专题图用法。(例如:饼图和直方图)*数据绑定你可以将外部数据与你的地图应用进行结合*注释利用注释在地图上显示相应的文本或者符号,所有的注释都是放在最上层。*图层图层集合是由(1-n)个图层对象组成。图层对象是由对象、属性和类型组成的集合。例如,一个地图中包括两个图层:世界地图和中国地图,而世界地图就是这个由两个图层组成的图层集合中的一个图层对象。*栅格图包含栅格图象可以给你的地图增加底纹。*自动标注在地图上自动加上标注,显示它们的属性*投影与坐标系支持多种类型的投影与坐标系,使地图遵循标准的地图规范显示*对象图元准许你编辑对象图元,合并、删除、创建缓冲区。*SpatialWare连接通过SpatialWare在Oracl,Informix等数据库上调用数据。将空间数据与属性数据都保存在数据库中。第二节MapXtreme构成MapXtreme通过地图引擎来向应用程序提供可供程序脚本语言使用的地图对象、属性和方法。而MapXtreme脚本语言则通过这些地图对象、属性和方法进行基于电子地图的各种空间分析。当用户利用MapXtreme开发工具完成MapXtreme应用的开发后,便可以通过文件拷贝等方式,将它移植到服务器上。见下图。以通过文件拷贝等方式,将MapXtreme应用移植到服务器开发环境InternetDevelopment(e.g.HAHTsite,MicrosoftInterDevSampleApplicationsWeb服务器MapXtremeServerToolsMapDataApplicationServerPublishApplicationViafilecopyorFTP第三节开发应用基础如果你重新设置了你的服务器组成,或者改变你的Webserver的目录,你就要启动你的MapXtremeServerAdministrator来重新设置相应的改变,你也能用它来解决数据与地理编码的应用问题。1、ServerConfiguration这个对话框主要是用来设置地图(mapimage)和MapxBroker缺省的一些参数。其中:MapImageDirectory:存放mapxtreme生成的图片的路径。MapImageAlias:mapxtreme生成图片信息的虚拟名。DefaultGeoset:缺省的Geoset文件默认目录。DebugMode:MapXtreme的”FindNearestsample”应用程序中同以前版本兼容性的设置。选中,将会为这个应用程序打开一个日志文件。UpdataMapxtremeConfiguration:将设置好的数据上载更新。MapxBokerGroups:设置启动不同的mapxbroker,便于加快mapxtreme的运算速度。注:点击”add”后,弹出“addnewservergroup”对话框。Groupname:“Mapxbroker”组的名字。Enabled:选中该选项后,Mapxbroker可以产生MapxSever实例。Geoset:用于产生MapxSever实例的地图集。NumberofMapxSevers:能够并发访问MapxSever实例的用户数。Max.UsageTime:用户能够保留MapxSever实例的最长时间数,如果该值为0,用户能够使用MapxSever实例的时间不受限制。Max.Waitperiod:一个会话在调用出错或程序正忙信息前,等待MapxSever实例的最长时间(毫秒)。MapEngineTab用MapEngine设置,使MapX启动,同时可以检测MapEngine是否启动成功。其中:Geoset:选择出适合的Geoset文件,注意列表中显示出来的都是在Geodictionary中注册了的。ExportFormat:从服务器中传到客户端的文件类型。(GIF,JPG,PNG)Courier/Broker显示mapengine组成状态。如果server端的部件安装成功,MapXCourier,MapXServer对象就会产生。MapXBroker状态取决于MapXBroker是否运行在NTserver上,只要是运行在NTserver上,而且在控制面板下的服务中申请了MapXBroker服务,该项就会运行。GeocodingTab设置地理编码的属性。使用下面的地理编码属性页来测试MapMarkerserver。如果正确安装服务器端控件,MapMarker对象就会产生,否则,MapXtreme不会工作,你需要重新安装。点击设置按钮会显示MapMarker对象的属性。Summarytab显示MapXtreme的配置信息和你的机器的相关信息。第四节MapXtreme应用程序的工作流程当用户在客户端进行相应的地图操作后,客户端浏览器便向WebServer发出一个HTTP请求,递交Form表单。ASP脚本语言应用程序则根据提交表单的信息,判断用户的地图操作请求类型,并对MapXtreme地图应用服务器的Map引擎进行访问。Map引擎进行相应的空间分析和处理后,便将处理结果以位图(.gif,.jpg,.Png等)的形式传递给WebServer,WebServer再将此位图文件嵌入到HTML页面中并返回到客户端的浏览器上。MapXtreme的这种B/S应用程序的工作过程,实际上就是用户浏览器与应用服务器之间通过静态或动态的WEB页面进行信息交互的过程。现在MapXtremeforJava2.0版本除了可以将处理结果以位图的形式嵌入到HTML页面中,传递到客户端浏览器之外,还可以将MapXtreme地图应用服务器的处理结果直接以矢量图的形式传递到客户端浏览器中。这样用户在客户端浏览器上对空间地图的操作将具有更大的灵活性。这种浏览器/服务器(Browser/Server)模式的优点是:由于用户端所需软件只是一个简单的浏览器,用户基本上无需培训,用户端软件也无需维护;软件的升级与修改只在服务器端进行,对用户透明;服务器与浏览器可处于不同的操作系统平台。见图2。MapXtreme支持多种应用程序开发方式。用户在安装了MapXtreme之后,便获得了由Mapxtrme提供的多种开发工具,其中ASP(ActiveServerPages)及HAHTsite是MapXreme支持的两种最常用的开发方式和环境。其实其它任何支持服务器端Activex控件的开发环境都可以用来开发MapXtreme的应用程序。另外,MapXtremeForJava版还支持UNIX平台上Java语言的开发方式。第五节MpXtreme数据地图数据如果用户已经购买了或是利用MapinfoProfessional创建了Mapinfo地图,则利用MapXtreme安装程序提供的GeosetManager工具可以将它们转换成.gst图形文件,并能在企业应用中直接使用。远程数据库MapXtreme支持目前商业应用中流行的数据接口,如ODBC、DAO、Clip-Board、Ole等。同时MapXtreme还可以访问保存在Oracle8I及MapinfoSpatialWare中的空间地图数据。其中,对Oracle8I的支持是MapXtremeJava2.0的新特性。通过OracleCallInterface(OCI)MapXtreme可以将存储在Oralce8I数据库服务器中的Mapinfo空间数据和属性数据同时下载到本地。第二章MapXtreme的安装和配置第一节安装MapXtremeforNT的系统需求1.硬件配置服务器硬件配置序号部件要求1中央处理器PII400以上2硬盘UltraWideScsi,12GB3内存=256MB4软驱、光驱具备5网卡10/100M自适应注意:1.上述配置为建议配置,不是最小配置要求2.其余配置可视实际情况配置2.服务器系统配置服务器系统配置序号名称组件1WindowsNTServer4.0中文2WindowsNTOptionalPack1.MicrosoftIIS4.02.MicrosoftCertificateServer2.03.MicrosoftTransactionServer2.04.MicrosoftFrontPageServerExtension5.MicrosoftMessageQueneServer3*MicrosoftSiteServer4SQLServer6.5/Oracle8.