Ⅰ mapx是什么和mapinfo什么关系
mapinfo操作软件是美国Mapinfo公司的主打产品。Mapinfo Professional 7.0是目前世界上最为完备,功能强回大的桌面地图信息答系统。
mapx是一个方便快捷功能强大的ActiveX控件。MapX具有Mapinfo Professiona的绝大部分的地图功能,支持多种高级语言。
mapinfo Professionl和mapx都是mapinfo公司的产品。
所以区别就是mapinfo professional是软件而mapx是控件。
本人现在也正在学习mapinfo和mapx如果你有兴趣咱们可以共同探讨!
Ⅱ MapX是免费的吗
MapX是商业软件,收费的,做项目的话还是要买正版。我也是做MapX开发的,有空到我网络空间交流一下。
Ⅲ C++中MapX开发地图遇到的问题
不是map.h和map.cpp而是mapx.h和mapx.cpp.在Mapx文件夹里
把mapx.h和mapx.cpp复制到项目目录,打开项目在头文件添加现有项mapX.h,在Cpp里添加现有项mapX.cpp
在stdafx.h里加上#include "mapx.h"
在项目的view视图头文件(如:Mapxview.h)里添加变量(如:CMapX m_ctrlMapX),当然也可以在stdafx.cpp里定义CMapX m_ctrlMapX
在资源视图Menu或Toolbar里分别添加地图缩放、平移命令,右键添加事件处理程序,在程序里添加缩放、平移的语句
Ⅳ MapX 工具的使用
MapX 自带的工具有:
miAddLineTool: 新增线图元;
miAddPointTool: 新增点图元;
miAddPolylineTool: 新增折线图元;
miAddRegionTool: 新增面图元;
miArrowTool: 箭头,将鼠标形状设置为 default;
miCenterTool: 将当前点居中地图;
miLabelTool: 为鼠标下方图元添加标注;
miPanTool: 在地图上漫游;
miPolygonSelectTool: 通过多边形在地图上选择图元;
miRadiusSelectTool: 通过椭圆在地图上选择图元;
miRectSelectTool: 通过矩形在地图上选择图元;
miSelectTool: 通过点击在地图上选择图元;
miSymbolTool: 在地图上添加符号注释;
miTextTool: 在地图上添加文字注释;
miZoomInTool: 放大;
miZoomOutTool: 缩小。
MapX 自带工具共 16 个,提供了大部分需要的功能,但是如果实现一些特殊的功能,仍然需要扩充 ( 牛聚粉等,2007) 。MapX 也预留了扩充的接口,如下:
Sub CreateCustomTool( ToolNumber As Integer,Type As ToolTypeConstants,Cursor,[Shift-Cursor],[CtrlCursor],[bInfoTips]) Member of MapXLib. Map。
实现直尺测量的功能 先定义扩展工具: Map1. CreateCustomTool CUSTOM_ TOOL_RULE,miToolTypeLine,miCrossCursor,然后再记录鼠标的移动距离,在地图的 map1 _MouseMove 事件中通过 Map1. Distance 方法将屏幕坐标转换为地理坐标即可。
实现热链接功能 在地图的 map1_ MouseMove 事件中,通过 Map1. Layers. Item( 1) .SearchWithinDistance 方法来不断地搜索,查看地物的属性库中是否链接了文件,如果查找到,则鼠标变形提示。
Ⅳ mapinfo和mapx的区别
mapinfo操作软件是美国来Mapinfo公司的主打产品自。Mapinfo Professional 7.0是目前世界上最为完备,功能强大的桌面地图信息系统。
mapx是一个方便快捷功能强大的ActiveX控件。MapX具有Mapinfo Professiona的绝大部分的地图功能,支持多种高级语言。
mapinfo Professionl和mapx都是mapinfo公司的产品。
所以区别就是mapinfo professional是软件而mapx是控件。
本人现在也正在学习mapinfo和mapx如果你有兴趣咱们可以共同探讨!
Ⅵ MAPX可以用JAVA开发电子地图把它用在andriod中开发电子地图!急求
mark
Ⅶ MapX 与MapInfo 二次开发的重点
( 1) 图层控制
1) 图层显示。对图层控制功能主要是图层显示、空间图层即 map1. layers. item ( i)对象,是图元空间数据的集合,具有以下几个重要属性:
· Visible,设置图层是否可见;
·Selectable,设置图层上的图元是否可选择;
·Editable,设置是否可编辑;
·AutoLabel,设置是否自动标注出图元的名称。
每个属性的值都为布尔型,即 True 或者 False。图层的 Selectable 属性设置为 False时,通过选择工具将不能选择该图层上的图元,在进行图层编辑时,可以将欲编辑的图层设置为 Selectable = True,Editable = True,然后将其他的图层设置为 Selectable = False,Ed-itable = False,以起到数据保护的作用 ( 王瑞珍,2004) 。图层控制界面如图 7. 6 所示。
图 7. 6 图层控制界面
2) 向空间数据库中动态添加数据。在 MapX 中,通过代码,可在地图上指定坐标点,添加自定义图形数据,如此一来,数据的精度可以得到很好的保证,可以在图中实现图中图功能。如下代码可以实现:
Dim ftr As MapXLib. Feature
Dim ftrs As MapXLib. Features
Dim rctMap As MapXLib. Rectangle
Dim pnts As New MapXLib. Points
Dim pnt1 As New MapXLib. Point
Dim pnt2 As New MapXLib. Point
Dim pnt3 As New MapXLib. Point
Dim pnt4 As New MapXLib. Point
Set rctMap = frmmain. Map1. Bounds
pnt1. Set rctMap. XMin,rctMap. YMax
pnt2. Set rctMap. XMax,rctMap. YMax
pnt3. Set rctMap. XMax,rctMap. YMin
pnt4. Set rctMap. XMin,rctMap. YMin
pnts. Add pnt1
pnts. Add pnt2
pnts. Add pnt3
pnts. Add pnt4
pnts. Add pnt1
Set ftr = Map1. FeatureFactory. CreateLine( pnts,styLine)
Set Map1. Layers. InsertionLayer = Map1. Layers. Item( " eagle" )
Map1. Layers. Item( " eagle" ) . AddFeature ftr
Map1. Refresh
3) 更新属性库。首先,需要根据图元 ( 空间数据) 来找到属性库中对应的记录,并在窗体中列出,与用户交互,具体代码实现如下:
Dim ftr As MapXLib. Feature
Set ftr = Map1. Layers( i) . Selection. Item( 1)
Dim mydata As MapXLib. Dataset
Set mydata = Map1. DataSets. Add( miDataSetLayer,lyr)
For j = 1 To mydata. Fields. Count
If VarType( mydata. RowValues( ftr. FeatureID) . Item( j) . value) < > vbNull Then
Grid1. TextMatrix( j + 1,1) = mydata. RowValues( ftr. FeatureID) . Item( j) . value
End If
Next j
当对属性值做了修改,需要更新到属性库时,则可通过如下代码实现:
ftr. Layer. KeyField = Grid1. TextMatrix( i + 1,0)
ftr. KeyValue = Grid1. TextMatrix( i + 1,1)
ftr. Update
4) 实现对空间数据的复制粘贴。空间对象不同于普通的文本或文件等数据,所以复制粘贴也有其特殊性,通过选择工具选择了一个或多个图元后,将其复制到粘贴板上时,需要通过中间对象暂时存储,实现代码如下:
将空间对象存储在 oExchangeFtrs 中,当需要粘贴时,则将 oExchangeFtrs 中的对象添加到空间库和属性库中,实现代码如下:
If m_oExchangeFtrs Is Nothing Then Exit Sub
For Each oFtr In m_oExchangeFtrs
iFtrCount = iFtrCount + 1
Next oFtr
If iFtrCount = 0 Then Exit Sub
For Each oFtr In m_oExchangeFtrs
oLayer. Selection. Add oLayer. AddFeature( oFtr)
Next oFtr
oLayer. Refresh
Set m_oExchangeFtrs = oLayer. Selection
( 2) 基本功能
本系统中实现的功能有选择、漫游、放大、缩小、标注、直尺、链接、框选、编辑地图、打印地图、报表、存为图片等。这些功能将通过 MapX 自带的工具来完成。本系统用到了如下工具: miAddLineTool: 新增值线图元; miAddPointTool: 新增点图元; miAddRe-gionTool: 新增面图元; miArrowTool: 箭头,将鼠标形状设置为 default; miLabelTool: 为鼠标下方图元添加标注; miPanTool: 在地图上漫游; miPolygonSelectTool: 通过多边形在地图上选择图元; miRadiusSelectTool: 通过椭圆在地图上选择图元; miRectSelectTool: 通过矩形框在地图上选择图元; miSelectTool: 通过点击在地图上选择图元; miSymbolTool:在地图上添加符号注释; miTextTool: 在地图上添加文字注释; miZoomInTool: 放大;miZoomOutTool: 缩小。
对于没有提供工具的直尺测量功能,可以通过以下方式建立接口来实现测量功能:
Sub CreateCustomTool ( ToolNumber As Integer,Type As Tool Type Constants,Cursor,[ShiftCursor],[CtrlCursor],[bInfoTips]) Member of MapXLib. Map Map1. CreateCustomTool CUSTOM_ TOOL_ RULE,miToolTypeLine,miCrossCursor,然后再记录鼠标的移动距离,在地图的 map1_ MouseMove 事件中通过 Map1. Distance 方法将屏幕坐标转换为地理坐标即可实现测量功能。
热链接功能实现可以使用这种方式: 在地图的 MouseMove 事件中通过 Map1. Layers.Item ( 1) . SearchWithinDistance 方法来不断地搜索,查看地物的属性库中是否链接了文件,如果查找到,则鼠标变形提示。图 7. 7 显示的是地图中所用到的功能及对应的图标。
( 3) 地图颜色显示
为了实现评价结果直观可视化,各作业场所的评价结果将依据风险分级原则进行颜色显示。在 MapInfo 中颜色显示是调用 mbapplications 来实现的,图7. 8 是颜色方案及颜色显示示意图。以下代码运用 mbapplications 的 do 方法,实现改变当前选中地图对象的颜色:
图 7. 7 地图处理基本功能及对应图标
图 7 -8 风险可视化示意图
/ / 要求将当前指定地图对象的颜色改为蓝色
mbappoleobject. do( " blue" )
mapinfo 将自动调用 remotemsghandler( ) 过程:
sub remotemsghandler( )
dim myobject as object
”获取并分析 do 方法的参数
cmdinfostr = commandinfo( cmd_info_msg)
”改变地图对象的颜色
if cmdstr = " blue" then
myobject = selection. obj
alter object myobject info 2,makecustomsymbol ( " towe1 - 32. bmp" ,rgb( 0,0,255) ,18,2)
update selection set obj = myobject where rowid = 1
end if
end sub
mbapplications 的 eval 方法的调用与 do 方法的类似, 只不过 mapinfo 将自动调用remotequeryhandler ( ) 过程,并要求返回一个结果。
Ⅷ MapX 功能
随着 GIS 技术的发展,美国环境资源研究所 ( ESRI) 推出 GIS 控件 MapObjects; 美国MapInfo 公司推出了控件 MapX。合理选择和运用好这些控件 ( 张英迪等,1999) ,可大大减少开发者的编程工作量,从而避开某些应用程序的具体编程; 直接调用控件,不仅可缩短程序开发周期,使编程过程简洁,用户界面更友好,还可以使程序更加灵活、简便( 牛聚粉,2008) 。对比主要功能,MapX 功能与 MapObjects 相比功能略强。同时由于MapX 数据格式通用,开发成本低等特点,得到了广泛应用。
MapX 控件具有强大的地图分析功能,它是一种标准的 Windows 平台的控件,因而可以支持大部分的 Windows 平台的开发环境,编程人员可以在开发环境中嵌入地图功能,并且可以脱离 MapInfo 的平台而运行 ( 刘晓宇,2005) 。利用 MapX 控件技术可以简单、快速地在应用中嵌入地图化功能,增强其应用的空间分析能力,实现应用的增值。
同传统的 GIS 开发相比,控件技术开发方式具有以下特点。
( 1) 高效无缝的系统集成
一个系统的建立往往需要对数据、空间处理功能与各种应用模型进行集成。不同的应用领域、不同的应用开发者所采用的系统集成方案往往不同,系统集成方案在很大程度上决定了系统的适用性和效率。传统 GIS 软件难以实现与应用模型之间的无缝集成 ( 牛聚粉,2008) 。控件式 GIS 为以上问题提供了理想的解决方案 ( May et al. ,2002) 。
( 2) 无须专门 GIS 开发语言,直接嵌入 MIS 开发工具
目前流行的各种开发工具都可以在标准的控件上使用。这样 VB,VC,Delphi 等都可以直接成为 GIS 的开发工具,它们各自的优点都能够得到充分发挥 ( 牛聚粉,2008) 。
( 3) 小巧灵活、价格便宜
控件式 GIS 平台集中提供空间数据管理能力,并且能以灵活的方式与数据库系统连接。在保证功能前提下,系统表现得小巧灵活,具有良好的性价比。
( 4) 更加大众化
控件式技术已经成为业界标准,用户可以像使用其他 ActiveX 控件一样使用 GIS 控件,使非专业的普通用户也能够开发和集成 GIS 应用系统 ( 牛聚粉,2008) 。
( 5) 可扩展性好
在控件式软件技术背后,有一个十分庞大的控件资源库,用户可以从大量的控件中挑选需要的控件与 ComGIS 一起集成应用系统,极大地扩展了 GIS 的功能。
MapX 控件具有如下主要功能。
( 1) 专题地图
将数据库表中的特定值赋给地图对象的颜色、图案或符号从而创建不同的专题地图;可创建范围值、等级符号、点密度、独立值、直方图和饼图六种方式的专题地图。
( 2) 可深入的地图
通过简单点击方式可浏览与地图对象相连的数据信息。
( 3) 数据绑定
地图可通过嵌入 OCX 的容器与数据库相连,并提供了几种不同的数据绑定方式,包括 ZIP Code-level 地理编码法。
( 4) 注解
可提供方向、高亮显示特殊数据,还可加入文本、符号、表格,使地图信息更加丰富直观。
( 5) 图层
显示和控制图层的缩放,使用或创建无缝地图,还可支持一些特殊的应用,比如实时捕捉活动图层,绘制特殊图形的用户自定义图层 ( 牛聚粉,2008) 。
( 6) 栅格图像
采用栅格图像作为地图的基础图层,可使其他图层有一个更细致的背景。
( 7) 选择
可在地图上拖动鼠标以在圆、矩形或特定的点上选择一个或多个对象或记录以供分析。
( 8) 地图编辑
允许用户添加、修改、删除地图上的文本、编辑区域、点等特殊对象 ( 牛聚粉,2008) 。
MapX 作为一个控件,与 VB 等集成开发环境的关系可以图 5. 1 来表示。
图 5. 1 MapX 与集成开发环境的关系
通过 MapX 提供的各种事件、属性和方法,实现 GIS 的基本功能是容易的,特定的功能需要程序员自己设计算法编码实现。
Ⅸ 关系VS2013 和 Mapx 问题。
还是建议装成32bit或者降为32bit的系统。我之前也是64bit的系统,试了好久,也没有办法使用MapX控件。
Ⅹ Microsoft的.mapx是什么东东呀
据猜测,就是ASPX改了个名字。你也可以在你的IIS里做设置来改变文件扩展名。比如我的网站就是用ASP编写的,但是你看到的却是PHP的结尾。可以迷惑一部分黑客。