MapXtreme 2005 学习心得 工具(六)

在新建的项目中,我们看示例的MapForm.aspx页面上的html代码

上面放了N个工具:

1:MapControl 地图显示工具

<cc1:MapControl ID="MapControl1" runat="server" Height="248px" Width="393px" MapAlias="Map1" />

地图显示工具,最图生成的标签为<span><img src='MapController.ashx?Command=getmap&..' /></span>的形式

 

详细说明:


简单说就是由MapController.ashx以流方式输出一张图片,和验证验的输出差不多

所有的请求都是通过客户端ajax请求发出的,MapController.ashx根据请求的Command类型,输出图片流,或直接输出字符串.比如:

Command类型为放大缩小图片或拖动图片时,返回的就是图片流。其结果表现为更新img的src

如果请求的类型是求两点的距离,那只要返回字符串就行,不需要更新图片,其结果可能alert(xmlHttp.responseText)

所有的请求都是先激活工具,再触发相应的事件,然后以ajax方式发送请求到MapController.ashx处理

 

其它主要工具为:一个共同属性:MapControlID指定作用于哪个地图控件

2:ZoomBarTool 地图缩放比例工具

<cc1:ZoomBarTool ID="ZoomBarTool1" runat="server" ZoomLevel="500" MapControlID="MapControl1" />

ZoomLevel的值,决定了缩放的比例,默认单位是kilometer(公里)

 

3:方向移动工具,共8个,对应八个方位,没啥可说的

<cc1:NorthWestNavigationTool ID="NorthWestNavigationTool1" runat="server" MapControlID="MapControl1" />

 

4:放大和缩小工具

<cc1:ZoomOutTool ID="ZoomOutTool1" runat="server" MapControlID="MapControl1" />

<cc1:ZoomInTool ID="ZoomInTool1" runat="server" MapControlID="MapControl1" />

 

5:定位居中工具

<cc1:CenterTool ID="CenterTool1" runat="server" MapControlID="MapControl1" />

 

6:移动地图工具

<cc1:PanTool ID="PanTool1" runat="server" MapControlID="MapControl1" />

 

7:图层工具,显示了和地图相关图层信息,只有当地图缩放到相应的范围里,里面的一些选项才可以操作

<cc1:LayerControl ID="LayerControl1" runat="server" MapControlID="MapControl1" />

 

8:图例工具,显示了和地图图例相关信息

<cc1:LegendControl ID="LegendControl1" runat="server" MapControlID="MapControl1" />

 

9:测量工具

<cc1:DistanceTool ID="DistanceTool1" runat="server" MapControlID="MapControl1" />

 

10:点选择工具,可通过此工具选择一个点,或者叫一个图元

<cc1:PointSelectionTool ID="PointSelectionTool1" runat="server" />

 

11:矩形选择工具,通过画矩形选择范围内的图元

<cc1:RectangleSelectionTool ID="RectangleSelectionTool1" runat="server" />

 

12:多边型选择工具,通过画多边型工具选择范围内的图元

<cc1:PolygonSelectionTool ID="PolygonSelectionTool1" runat="server" />

 

13:圆圈选择工具,通过画圆圈选择范围内的图元

<cc1:RadiusSelectionTool ID="RadiusSelectionTool1" runat="server" />

 

14:自定义工具,可以自定义事件,命令与返回,即自定义请求与输出,详细待下一节

<cc1:WebTool ID="WebTool1" runat="server" />

时间: 2025-01-01 16:05:04

MapXtreme 2005 学习心得 工具(六)的相关文章

MapXtreme 2005 学习心得 第八节Session问题澄清-两种配置方式致开发方式不同(九)

前言: 出差一个月了,终于回来了,本来想继续写CYQ.Data的序列文章,突然看到MapXtreme有一条回应; 就写多一篇文章,澄清下我上一篇文章MapXtreme 2005 学习心得 一此问题(八)所说中的Session问题.     之前的调试方式 在MapXtreme 安装目录下,有一个MapXtremeControl的源码. 在上一篇中,由于调试不了源码,而只能在外面反复大量调试,以结果来猜测问题.以至于得出Session不稳定的结论.     先说说怎么调试MapXtremeCont

MapXtreme 2005 学习心得 概述(一)

前言: 没折,公司丢了这个东西过来,说要搞车载的GRRS定位在地图上显示. 杂七杂八的折腾到现在快两周了,决定写点学习心得,以示后人 公司既然已定了用MapXtreme 2005开发,没折. 于是开始研究,找资料研究了两天,了解下这个产品,才敢开始运行示例代码. 公司之前用MapX,用在C/S版本的系统中 这下要用MapXtreme,用在B/S版本的系统中 MapX和MapXtreme都是mapinfo的产品,所以代码中的名称空间都是MapInfo.xxx开头的.   安装与安装后情况说明: 安

MapXtreme 2005 学习心得 将wor格式转wms格式(十)

地图从Wor格式转wms的方法 一.先通过MapInfo Professional 6.5工具,转成gst格式 方法如下: 1.打开工具 2.File->Open WordSpace->选择wor格式文件打开地图 3.Tools->Tool Manager->Mapx Geoset Utility打上Loaded列对应的勾->OK确定 4.Tools->Mapx Geoset Utility[添加后会出现]->Save Mapx Geoset As- 5.出现对话

MapXtreme 2005 学习心得 使用WebTool工具(七)

本次使用WEbTool自定义工具,实现一个简单的功能 效果描述: 在激发自定义工具后,在地图界面点击时,弹出该点的客户端坐标,与相应的经纬度坐标   一:先从客户端处理怎么发送请求   1:拖webtool工具到界面 将工具WebTool 拖到MapForm.aspx界面上,设置对应的地图如下:  <cc1:WebTool ID="WebTool1" runat="server" MapControlID="MapControl1"   /

MapXtreme 2005 学习心得 了解新建MapXtreme项目结构(二)

一:新建示例  首先,打开VS2005,新建网站,选择MapXtreme 6.7.1 Web Application   救命网站目录关键结构如下: 1:App_Code文件夹 有一个自定义的AppStateManager.cs类,继承自StateManager,主要是实现自定义的地图保存与还原,地图都存在Session中的,而且还是序列化成二进制存进去的   2:MapXtremeWebResources文件夹 主要有几个关键的js,比如: Interaction.js,交互用的js,比如是实

MapXtreme 2005 学习心得 关于地图投影坐标问题的解决方式(十四)

前言: 昨日一大早上级和工程部的来电夺命追魂Call. 说甘肃联通的车载测试在地图上显示不出来数据. 那边只有内网,这边没法直接查问题,后来那边把自己的上网卡往服务器里插,然后用了个TeamViewer远程工具. 那边太冲动,话没说完就拔卡,弄的我只好用短信通信,浪费不少短信费,还顶上一个星期天. 经过那卡的不能再卡的网速折腾一下之后. 发现那边局方给的地图经纬度取出来是非正常坐标.[其实就是其它坐标系了,经纬度都几万几万的说的那种] 不过自己电脑没装MapXtreme这工具,也没地图,加上这网

MapXtreme 2005 学习心得 在地图上创建点/线并显示标注(五)

新建示例   1:新建项目 新建一个网站,选择MapXtreme 6.7.1 Web Application 在App_Code中,我们新建一个类,起名叫:LayerManager.cs   2:把上节函数放到类LayerManager中 把上一节的函数代码全copy过来,还有using的名称空间   3:打开MapForm.cs,在Page_Load代码里,添加如下代码  string tableName = "tableName", layerName = "layerN

MapXtreme 2005 学习心得 一些基础函数代码(四)

网上看到的基本上代码都大同小异,经过本人小小修改或未修改的代码如下:  一:先创建图层 1:创建图层函数代码:CreateLayer  /// <summary>    /// 创建临时图层    /// by 路过秋天    /// <param name="tableName">表名</param>    /// <param name="layerName">图层名</param>    /// &l

MapXtreme 2005 学习心得 道路区域选择(十三)

事实上,在选择道路的时候,出了点问题. 问题一:之前在显示道路的时候,每取两个点就画了一条线显示,以至于选择道路时,只选中了两点间的一线,事实上,一条路可能是多个点组成的,所以选择路时,应该是选中整条路. 经过折腾,把画线的代码改成如下,多点组合成一线.    FeatureGeometry pt = new MultiCurve(Layer.CoordSys, CurveSegmentType.Linear,点数组);             SimpleLineStyle lineStyle