研究了一段时间的MapXtreme2005 v6.6, 实现了个简单的鹰眼,放出来与大家分享,转载请注明出处。设计思路为设置两个MapControl ,map1和map2,map1为主地图,map2为索引图,将map1.Bounds的矩形在map2上转换为System.Drawing.Rectangle,之后将这个Rectangle的左上坐标和width,height传到客户端,应用JS在客户端绘图。 同理移动客户端索引图上的Rectangle,则将Rectangle的中心坐标传回转换后设置map1的中心坐标。
一、打开VS2005新建一个网站,选择“MapXtreme 6.6 Web Application”模板(当然也可以建一个空模板,然后自己拖控件,配置web..config);
二、把界面的上MapControl1命名为MainMap,MapAlias为Map1,再拖一个MapContol到界面上(自己排版),命名为IndexMap(作为导航地图),MapAlias为Map2;
三、下面为源码:
MapForm.aspx
复制内容到剪贴板
代码:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="MapForm.aspx.cs" Inherits="IndexMap.IndexPage" %>
<%@ Register Assembly="MapInfo.WebControls, Version=4.0.0.428, Culture=neutral, PublicKeyToken=0a9556cc66c0af57"
Namespace="MapInfo.WebControls" TagPrefix="cc1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN " "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd " >
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
<script type="text/javascript" language="JavaScript">...
var currentMoveObj = null;
var relLeft;
var relTop;
function f_mdown(obj)
{
currentMoveObj = obj;
currentMoveObj.style.position = "absolute";
relLeft = event.x - currentMoveObj.style.pixelLeft;
relTop = event.y - currentMoveObj.style.pixelTop;
}
window.document.onmouseup = function()
{
currentMoveObj = null;
}
window.document.onmousemove=function()
{
if(currentMoveObj != null)
{
currentMoveObj.style.pixelLeft=event.x-relLeft;
currentMoveObj.style.pixelTop=event.y-relTop;
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<script type="text/javascript" src="js/JScript.js"></script>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td valign="top">
<img src="images/mi_logo.gif" alt="MapInfo" /></td>
<td background="images/header_bg.gif" width="100%">
<img src="images/header_bg.gif" alt="" /></td>
<td>
<img src="images/mapxtreme_logo.gif" alt="MapXtreme" /></td>
</tr>
</table>
<table style="position:absolute;left: 10px; top: 90px;" border="1" cellpadding="0" cellspacing="0">
<tr>
<td style="width: 200px">
<table>
<tr>
<td style="width: 200px; height: 200px;">
<cc1:MapControl ID="IndexMap" runat="server" Height="200px" Width="200px" MapAlias="Map2" />
</td>
</tr>
<tr>
<td style="width: 200px; height: 400px;"></td>
</tr>
</table>
</td>
<td style="display:block;position:relative; width: 597px;">
<cc1:MapControl ID="MainMap" runat="server" Height="600px" Width="600px" MapAlias="Map1"/></td><td></td></tr>
<tr><td style="width: 143px"></td><td style="width: 597px">
<cc1:ZoomInTool ID="ZoomInTool1" runat="server" MapControlID="MainMap" />
<cc1:ZoomOutTool ID="ZoomOutTool1" runat="server" MapControlID="MainMap" />
<cc1anTool ID="anTool1" runat="server" MapControlID="MainMap" />
</td><td></td></tr>
</table>
<div id = "indexDiv" style="position:absolute;left:14px;top:94px;height:200px;width:200px;background:transparent;"></div>
<script language="javascript" type="text/javascript">
function bindevent()
{
var mapimage = document.getElementById("MainMap_Image");
mapimage.attachEvent('onload', getZoomValue);
}
bindevent();
</script>
</form>
</body>
</html>
MapForm.cs
复制内容到剪贴板
代码:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using MapInfo.WebControls;
using ApplicationStateManager;
namespace IndexMap
{
public partial class IndexPage : System.Web.UI.Page
{
private void Page_Load(object sender, System.EventArgs e)
{
// If the StateManager doesn't exist in the session put it else get it.
if (StateManager.GetStateManagerFromSession() == null)
StateManager.PutStateManagerInSession(new AppStateManager());
if (!IsPostBack)
{
MapControlModel model = MapControlModel.SetDefaultModelInSession();
model.Commands.Add(new IndexMap.ZoomValue());
model.Commands.Add(new IndexMap.MoveMainMap());
}
// Now Restore State
StateManager.GetStateManagerFromSession().ParamsDictionary[StateManager.ActiveMapAliasKey] = MainMap.MapAlias;
StateManager.GetStateManagerFromSession().RestoreState();
}
// At the time of unloading the page, save the state
private void Page_UnLoad(object sender, System.EventArgs e)
{
StateManager.GetStateManagerFromSession().SaveState();
}
protected MapInfo.Mapping.Map GetMapObj(string mapAlias)
{
MapInfo.Mapping.Map myMap = MapInfo.Engine.Session.Current.MapFactory[mapAlias];
if(myMap == null)
{
myMap = MapInfo.Engine.Session.Current.MapFactory[0];
}
return myMap;
}
}
}
CustomerCommand.cs
复制内容到剪贴板
代码:
using System;
using System.Data;
using System.IO;
using System.Drawing;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using MapInfo.Web;
using MapInfo.WebControls;
using MapInfo.Data;
using MapInfo.Geometry;
namespace IndexMap
{
[Serializable]
public class ZoomValue : MapInfo.WebControls.MapBaseCommand
{
public ZoomValue()
{
Name = "ZoomValue";
}
public override void Process()
{
MapControlModel model = MapControlModel.GetModelFromSession();
MapInfo.Mapping.Map map1 = model.GetMapObj("Map1");
MapInfo.Mapping.Map map2 = model.GetMapObj("Map2");
System.Drawing.Rectangle rectNew;
map2.DisplayTransform.ToDisplay(map1.Bounds, out rectNew);
HttpContext.Current.Response.Output.Write(rectNew.X + "," + rectNew.Y + "," + rectNew.Height + "," + rectNew.Width);
}
}
[Serializable]
public class MoveMainMap : MapInfo.WebControls.MapBaseCommand
{
public MoveMainMap()
{
Name = "MoveMainMap";
}
public override void Process()
{
int x = System.Convert.ToInt32(HttpContext.Current.Request["CenterX"]);
int y = System.Convert.ToInt32(HttpContext.Current.Request["CenterY"]);
MapControlModel model = MapControlModel.GetModelFromSession();
MapInfo.Mapping.Map map1 = model.GetMapObj("Map1");
MapInfo.Mapping.Map map2 = model.GetMapObj("Map2");
System.Drawing.Point spoint = new System.Drawing.Point(x,y);
MapInfo.Geometry.DPoint point;
map2.DisplayTransform.FromDisplay(spoint, out point);
map1.Center = point;
MemoryStream ms = model.GetMap(MapAlias, MapWidth, MapHeight, ExportFormat);
StreamImageToClient(ms);
}
}
}
JScript.js
复制内容到剪贴板
代码:
// JScript 文件
function getZoomValue()
{
var MapImage = document.getElementById("MainMap_Image");
var url = "MapController.ashx?Command=ZoomValue&Width=" + MapImage.width + "&height=" + MapImage.height + "&ExportFormat=" + MapImage.exportFormat + "&Ran=" + Math.random();
if(MapImage.mapAlias)
url += "&MapAlias" + MapImage.mapAlias;
var xmlHttp = CreateXMLHttp();
xmlHttp.open("GET",url,false);
xmlHttp.send(null);
var result = xmlHttp.responseText;
var htmlContent = new Array();
htmlContent = result.split(',');
var div = document.getElementById("indexDiv");
var left = 1*htmlContent[0] ;
var top = 1*htmlContent[1] ;
var height = 1*htmlContent[2] ;
var width = 1*htmlContent[3] ;
if (left < 0) left = 0;
if (top < 0) top = 0;
if (width > 200) width = 200;
if (height > 200) height = 200;
div.innerHTML="<div id = 'indexRect' style='border:3px solid red;position:absolute;left:" + left + ";top:" + top +";height:" + height +"px;width:"+ width +"px;cursor:move' onmousedown='f_mdown(this)' onmouseup='MoveMainMap()'></div>";
}
function MoveMainMap()
{
var mapImage = document.getElementById("MainMap_Image");
var indexRect = document.getElementById("indexRect");
var w = indexRect.clientWidth /2;
var h = indexRect.clientHeight /2;
var x = parseInt((parseInt(indexRect.style.left) + w));
var y = parseInt((parseInt(indexRect.style.top) + h));
var url = "MapController.ashx?Command=MoveMainMap&Width=" + mapImage.width +
"&Height=" + mapImage.height +
"&ExportFormat=" + mapImage.exportFormat + "&Ran=" + Math.random();
url += "&CenterX=" + x;
url += "&CenterY=" + y;
if (mapImage.mapAlias)
url += "&MapAlias=" + mapImage.mapAlias;
var xmlHttp = CreateXMLHttp();
xmlHttp.open("GET", url, false);
xmlHttp.send(null);
try {
mapImage.src = url;
} catch(e){ alert("ll"); }
}
注意在配置文件中,要加载2个工作空间。
如下:
<add key="MapInfo.Engine.Session.Workspace" value="D:\test\web\china.mws;D:\test\web\china.mws" />
一、打开VS2005新建一个网站,选择“MapXtreme 6.6 Web Application”模板(当然也可以建一个空模板,然后自己拖控件,配置web..config);
二、把界面的上MapControl1命名为MainMap,MapAlias为Map1,再拖一个MapContol到界面上(自己排版),命名为IndexMap(作为导航地图),MapAlias为Map2;
三、下面为源码:
MapForm.aspx
复制内容到剪贴板
代码:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="MapForm.aspx.cs" Inherits="IndexMap.IndexPage" %>
<%@ Register Assembly="MapInfo.WebControls, Version=4.0.0.428, Culture=neutral, PublicKeyToken=0a9556cc66c0af57"
Namespace="MapInfo.WebControls" TagPrefix="cc1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN " "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd " >
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
<script type="text/javascript" language="JavaScript">...
var currentMoveObj = null;
var relLeft;
var relTop;
function f_mdown(obj)
{
currentMoveObj = obj;
currentMoveObj.style.position = "absolute";
relLeft = event.x - currentMoveObj.style.pixelLeft;
relTop = event.y - currentMoveObj.style.pixelTop;
}
window.document.onmouseup = function()
{
currentMoveObj = null;
}
window.document.onmousemove=function()
{
if(currentMoveObj != null)
{
currentMoveObj.style.pixelLeft=event.x-relLeft;
currentMoveObj.style.pixelTop=event.y-relTop;
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<script type="text/javascript" src="js/JScript.js"></script>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td valign="top">
<img src="images/mi_logo.gif" alt="MapInfo" /></td>
<td background="images/header_bg.gif" width="100%">
<img src="images/header_bg.gif" alt="" /></td>
<td>
<img src="images/mapxtreme_logo.gif" alt="MapXtreme" /></td>
</tr>
</table>
<table style="position:absolute;left: 10px; top: 90px;" border="1" cellpadding="0" cellspacing="0">
<tr>
<td style="width: 200px">
<table>
<tr>
<td style="width: 200px; height: 200px;">
<cc1:MapControl ID="IndexMap" runat="server" Height="200px" Width="200px" MapAlias="Map2" />
</td>
</tr>
<tr>
<td style="width: 200px; height: 400px;"></td>
</tr>
</table>
</td>
<td style="display:block;position:relative; width: 597px;">
<cc1:MapControl ID="MainMap" runat="server" Height="600px" Width="600px" MapAlias="Map1"/></td><td></td></tr>
<tr><td style="width: 143px"></td><td style="width: 597px">
<cc1:ZoomInTool ID="ZoomInTool1" runat="server" MapControlID="MainMap" />
<cc1:ZoomOutTool ID="ZoomOutTool1" runat="server" MapControlID="MainMap" />
<cc1anTool ID="anTool1" runat="server" MapControlID="MainMap" />
</td><td></td></tr>
</table>
<div id = "indexDiv" style="position:absolute;left:14px;top:94px;height:200px;width:200px;background:transparent;"></div>
<script language="javascript" type="text/javascript">
function bindevent()
{
var mapimage = document.getElementById("MainMap_Image");
mapimage.attachEvent('onload', getZoomValue);
}
bindevent();
</script>
</form>
</body>
</html>
MapForm.cs
复制内容到剪贴板
代码:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using MapInfo.WebControls;
using ApplicationStateManager;
namespace IndexMap
{
public partial class IndexPage : System.Web.UI.Page
{
private void Page_Load(object sender, System.EventArgs e)
{
// If the StateManager doesn't exist in the session put it else get it.
if (StateManager.GetStateManagerFromSession() == null)
StateManager.PutStateManagerInSession(new AppStateManager());
if (!IsPostBack)
{
MapControlModel model = MapControlModel.SetDefaultModelInSession();
model.Commands.Add(new IndexMap.ZoomValue());
model.Commands.Add(new IndexMap.MoveMainMap());
}
// Now Restore State
StateManager.GetStateManagerFromSession().ParamsDictionary[StateManager.ActiveMapAliasKey] = MainMap.MapAlias;
StateManager.GetStateManagerFromSession().RestoreState();
}
// At the time of unloading the page, save the state
private void Page_UnLoad(object sender, System.EventArgs e)
{
StateManager.GetStateManagerFromSession().SaveState();
}
protected MapInfo.Mapping.Map GetMapObj(string mapAlias)
{
MapInfo.Mapping.Map myMap = MapInfo.Engine.Session.Current.MapFactory[mapAlias];
if(myMap == null)
{
myMap = MapInfo.Engine.Session.Current.MapFactory[0];
}
return myMap;
}
}
}
CustomerCommand.cs
复制内容到剪贴板
代码:
using System;
using System.Data;
using System.IO;
using System.Drawing;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using MapInfo.Web;
using MapInfo.WebControls;
using MapInfo.Data;
using MapInfo.Geometry;
namespace IndexMap
{
[Serializable]
public class ZoomValue : MapInfo.WebControls.MapBaseCommand
{
public ZoomValue()
{
Name = "ZoomValue";
}
public override void Process()
{
MapControlModel model = MapControlModel.GetModelFromSession();
MapInfo.Mapping.Map map1 = model.GetMapObj("Map1");
MapInfo.Mapping.Map map2 = model.GetMapObj("Map2");
System.Drawing.Rectangle rectNew;
map2.DisplayTransform.ToDisplay(map1.Bounds, out rectNew);
HttpContext.Current.Response.Output.Write(rectNew.X + "," + rectNew.Y + "," + rectNew.Height + "," + rectNew.Width);
}
}
[Serializable]
public class MoveMainMap : MapInfo.WebControls.MapBaseCommand
{
public MoveMainMap()
{
Name = "MoveMainMap";
}
public override void Process()
{
int x = System.Convert.ToInt32(HttpContext.Current.Request["CenterX"]);
int y = System.Convert.ToInt32(HttpContext.Current.Request["CenterY"]);
MapControlModel model = MapControlModel.GetModelFromSession();
MapInfo.Mapping.Map map1 = model.GetMapObj("Map1");
MapInfo.Mapping.Map map2 = model.GetMapObj("Map2");
System.Drawing.Point spoint = new System.Drawing.Point(x,y);
MapInfo.Geometry.DPoint point;
map2.DisplayTransform.FromDisplay(spoint, out point);
map1.Center = point;
MemoryStream ms = model.GetMap(MapAlias, MapWidth, MapHeight, ExportFormat);
StreamImageToClient(ms);
}
}
}
JScript.js
复制内容到剪贴板
代码:
// JScript 文件
function getZoomValue()
{
var MapImage = document.getElementById("MainMap_Image");
var url = "MapController.ashx?Command=ZoomValue&Width=" + MapImage.width + "&height=" + MapImage.height + "&ExportFormat=" + MapImage.exportFormat + "&Ran=" + Math.random();
if(MapImage.mapAlias)
url += "&MapAlias" + MapImage.mapAlias;
var xmlHttp = CreateXMLHttp();
xmlHttp.open("GET",url,false);
xmlHttp.send(null);
var result = xmlHttp.responseText;
var htmlContent = new Array();
htmlContent = result.split(',');
var div = document.getElementById("indexDiv");
var left = 1*htmlContent[0] ;
var top = 1*htmlContent[1] ;
var height = 1*htmlContent[2] ;
var width = 1*htmlContent[3] ;
if (left < 0) left = 0;
if (top < 0) top = 0;
if (width > 200) width = 200;
if (height > 200) height = 200;
div.innerHTML="<div id = 'indexRect' style='border:3px solid red;position:absolute;left:" + left + ";top:" + top +";height:" + height +"px;width:"+ width +"px;cursor:move' onmousedown='f_mdown(this)' onmouseup='MoveMainMap()'></div>";
}
function MoveMainMap()
{
var mapImage = document.getElementById("MainMap_Image");
var indexRect = document.getElementById("indexRect");
var w = indexRect.clientWidth /2;
var h = indexRect.clientHeight /2;
var x = parseInt((parseInt(indexRect.style.left) + w));
var y = parseInt((parseInt(indexRect.style.top) + h));
var url = "MapController.ashx?Command=MoveMainMap&Width=" + mapImage.width +
"&Height=" + mapImage.height +
"&ExportFormat=" + mapImage.exportFormat + "&Ran=" + Math.random();
url += "&CenterX=" + x;
url += "&CenterY=" + y;
if (mapImage.mapAlias)
url += "&MapAlias=" + mapImage.mapAlias;
var xmlHttp = CreateXMLHttp();
xmlHttp.open("GET", url, false);
xmlHttp.send(null);
try {
mapImage.src = url;
} catch(e){ alert("ll"); }
}
注意在配置文件中,要加载2个工作空间。
如下:
<add key="MapInfo.Engine.Session.Workspace" value="D:\test\web\china.mws;D:\test\web\china.mws" />
发表评论
-
mapxtreme添加标记和删除标记
2009-03-30 16:23 1820新增2个pointselectiontool, clientc ... -
添加数据库中的经纬度信息
2009-03-30 16:22 1780C# Code: 复制内容到剪贴板 代码: MapInfo ... -
MapXtreme 2005自定义图层控制代码(WEB)
2009-03-30 16:21 1582虽然MapXtreme 2005 6.7.1提供了图层控制的控 ... -
MapxTreme测试:绘制图标和文字标注
2009-03-30 16:19 3700代码: using System; using System ... -
mapxtreme 2004 改变feature颜色
2009-03-30 16:18 15861.C# code: 复制内容到剪贴板 代码: MapI ... -
MapxTreme2005地图打印
2009-03-30 16:18 1227MapxTreme2005地图打印 一、语言: c# net2 ... -
在C#应用中如何读取存在ORACLE(或SQL Server)中的MapInfo表
2009-03-30 16:17 1244using MapInfo.Data; ... -
MapXtreme 2005查找图元方法,web的
2009-03-30 16:16 1795先添加一个TextBox和 DropDownList控件 复 ... -
MapXtreme点取地图获得信息
2009-03-30 16:15 1897拖一个pointselectiontool到页面, 修改属性 ... -
MapXtreme查看整个地图的代码
2009-03-30 16:14 938Map map = mapControl1.Map; IMap ... -
实现手动画线
2009-03-30 16:12 1247为了实现在地图上手动画线的功能,煞费了一翻苦心,不过最后实现的 ... -
Web页面中实现鼠标中键缩放
2009-03-30 16:11 1543在MapXtreme 2005中,在Windows应用程序中自 ... -
两种方法实现动态轨迹
2009-03-30 16:11 1387在GIS中,动态轨迹的实现是非常有用的,可用GPS定位,热点跟 ... -
总结查找图元的三种方法
2009-03-30 16:10 1259在MapXtreme 2005中,查找图元提供了非常多的方法, ... -
添加标注图层
2009-03-30 16:08 1183在MapXtreme 2005中添加标注图层是非常容易的,只要 ... -
向图层中添加线段
2009-03-30 16:07 945向图层中添加线段和向图层中添加点是一样的,其本质都是向图层中添 ... -
向图层中添加点
2009-03-30 16:06 1038在添加点之前先要在地图上创建一个临时图层,创建临时图层请参考《 ... -
mapxtreme2005 改变选中的图元样式
2009-03-30 16:05 1090MapInfo.Styles.CompositeStyle c ... -
Mapxtreme2005 两点之间画直线
2009-03-30 16:04 1155private void DrawLine(MapInfo.D ... -
mapxtreme2005 创建各种样式
2009-03-30 16:04 1138public MapInfo.Styles.Composite ...
相关推荐
压缩包中的"培训(自定义工具&鹰眼)"可能包含了详细的教程文档、示例代码和演示应用程序,这些都是学习如何在MapXtreme中实现自定义工具和鹰眼功能的重要资源。通过这些资料,开发者可以了解到具体的编程接口、配置...
“prjTest”这个文件可能是项目测试文件,可能包含了实现这些功能的源代码、配置文件或是测试数据。通过分析和运行这个文件,开发者可以深入理解MapXtreme 2005如何处理地图数据、响应用户交互,并实现这些高级功能...
在VS2005 C#环境中构建MapXtreme 2008鹰眼项目,开发者可以充分利用.NET Framework的强大功能,包括面向对象编程、丰富的类库支持以及高效的代码编写环境。C#语言的类型安全性和内存管理使得开发过程更为稳定和高效...
在开发MapXtreme应用时,VS2005可以提供代码编辑、调试、版本控制等全套开发工具,帮助开发者快速构建和测试GIS应用。 标签中多次提到了"web鹰眼",强调了我们关注的重点是Web应用中的地图缩略视图功能。MapXtreme...
### MapXtreme2005开发指南 #### MapXtreme2005概述 MapXtreme2005是一款由PBMapInfoCorporation开发的地图制作和地理信息系统(GIS)应用软件,该软件提供了强大的地图绘制、地理编码、路径规划等功能,适用于Web与...
- **样例应用程序与代码示例**:MapXtreme2005附带了一系列样例应用程序和代码片段,涵盖了各种常见应用场景,比如如何使用IN/ANY/ALL操作符和子查询、StyleFactory类的用法、ISession.Reload方法的介绍、持久化机制...
mapxtreme2005 DevelopmentReference mapxtreme2005 开发帮助手册中文版
这个小项目的源代码提供了学习和理解MapXtreme功能和用法的机会,尤其适合初学者。以下将详细介绍MapXtreme for Java的核心概念和关键知识点。 1. **MapXtreme介绍**:MapXtreme是Intergraph公司的产品,它允许...
- 实践编写代码,通过调试和修改源程序,提升对Mapxtreme 2004及其鹰眼控件的理解。 - 学习GIS和地图服务的最佳实践,优化地图加载速度,提高用户体验。 总之,Mapxtreme 2004的鹰眼控件是GIS应用中增强用户导航...
为了帮助开发者尽快上手,MapXtreme2005提供了丰富的学习资料,包括在线文档、教程、示例代码和社区论坛,这些资源可以帮助开发者深入了解软件的各个功能模块,提高开发效率。 ### 安装与配置 在安装MapXtreme2005...
这个“mapxtreme2005-map-demo.rar”压缩包提供了一个基于 Visual Studio 2005 和 MapXtreme 2005 的小型演示程序,旨在帮助初学者理解和探索 WebGIS 的基本功能。 首先,让我们详细了解一下 MapXtreme 2005。这是...
在数据访问方面,MapXtreme 2005支持多种数据源,包括空间和非空间的关系型数据库(RDBMS)、MS Access、dBase、ASCII以及MapInfo特有的.Table格式。此外,.NET Dataset Provider使得任何ADO.NET数据集可以作为...
在提供的文件"C#+mapXtreme2005鹰眼的问题.txt"中,可能包含了具体的代码示例或问题描述,通过分析和理解这些内容,我们可以更深入地探讨和解决实际遇到的问题。如果你能分享这个文件的内容,将有助于进一步提供针对...
### MapXtreme2005开发人员指南 #### 概述 《MapXtreme 2005 开发人员指南》是一本详细介绍MapXtreme 2005开发环境及其命名空间的手册。它旨在帮助开发人员了解如何使用MapXtreme 2005来开发与MapInfo强大的地图...
1. 地图渲染:MapXtreme 2005可以高效地渲染地图,包括多层、多种数据源的地图,支持各种地图样式和符号化。 2. 地图操作:提供了平移、缩放、旋转等基本地图操作,以及测量距离、面积,搜索地址等功能。 3. 数据...
MapXtreme2005_DevGuide中文版
本资源包含的是MapXtreme内置控件的源代码,这对于深入理解和自定义MapXtreme的应用是非常有价值的。 MapXtreme的核心特性包括地图渲染、地理编码、空间分析以及数据管理等。其内置控件是预先封装好的功能模块,...
### MapXtreme 2005 技术手册知识点概览 #### 一、MapXtreme 2005 概述 - **版本信息**:MapXtreme 2005,版本号为6.7,是PB MapInfo Corporation发布的一款用于地理信息系统(GIS)开发的专业软件。 - **版权信息*...
仅供个人学习使用,一切法律后果本人概不负责!