我现在有了GPS回传的某一点的经度和纬度,还有带坐标的地图,怎么知道这一点所对应的路的名称?地图上所有道路都有标明的,谢谢!

解决方案 »

  1.   


    使用MapX +VB开发农村配电网管理地理信息系统转载 李素,李亚敏(河北农业大学 机电工程学院,河北保定 071001) 2003-3-14 0 引言电力工业是国民经济的重要支柱,电力工业的发展水平代表着一个国家的发达程度。根据我国国情,我国是一个幅员辽阔的农业大国,农村人口占我国总人口的80%以上,农村电网的覆盖范围在我国六大电网中占相当大的比例。因此,农业电力在我国电力事业发展中占据举足轻重的位置,它关系到国民经济的发展,影响着农业现代化发展的进程。在当前正在进行的农村电网改造中,农村配电网的安全、高效管理是一项重要任务。 根据我国农村配电网的特点,配电管理的对象在空间上呈现典型的点、线、面的分布,并且相互之间还存在着地理上和逻辑上的密切关系。因此,使用近几年来逐渐发展并广泛应用起来的GIS技术能够高效地对这些空间信息进行管理和分析。1 地理信息系统:1.1 地理信息系统简介:地理信息系统(Geographic Information Systems---GIS)是在计算机软、硬件支持下,对现实世界各类空间数据及描述这些空间数据特性的属性进行采集、储存、管理、运算、分析、显示和描述的技术系统。它将地理对象的空间位置和相关属性有机结合,从空间和属性2个方面对现实对象进行查询、检索和分析,并将结果以形象、直观的形式表达出来,辅助用户决策。地理信息系统根据其内容可分为两大基本类型:一是应用型地理信息系统,二是工具型地理信息系统。本系统的开发属于应用型GIS的开发。1.2 组件式地理信息系统:组件式软件技术已经成为当今软件技术的潮流之一。组件式GIS软件平台是国际上最近几年发展起来的新型GIS软件,具有二次开发方便、易于集成、无限扩展等特点。它带来了GIS应用系统开发方式的变革,有利于提高二次开发的效率,增强GIS系统中各子系统之间的亲合能力。组件式GIS的基本思想是把GIS的各大功能模块划分为几个控件,每个控件完成不同的功能。各个GIS控件之间,以及GIS控件与其它非GIS控件之间,可以方便地通过可视化的软件开发工具集成起来,形成最终的GIS应用。控件如同各式各样的积木,它们分别实现不同的功能(包括GIS功能 和非GIS功能),根据需要把实现各种功能的“积木”搭建起来,就构成应用系统。1.3 开发工具简介:  基于组件式GIS的上述特点,本系统在GIS的几种开发方式当中,选择了基于GIS组件的集成二次开发方法,GIS组件选用MapX,高级语言选用VB。MapX简介:MapX是MapInfo公司向用户提供的具有强大地图分析功能的ActiveX控件产品。它是一种基于Windows操作系统的标准控件,能支持绝大多数标准的可视化开发环境如Visual Basic、 Visual C++、Delphi、PowerBuilder等。编程人员在开发过程中可以选用自己最熟悉的开发语言,轻松地将地图功能嵌入到应用中,并且可以脱离MapInfo的软件平台运行。本系统所使用的MapX是MapInfo公司于2000年发布的4.5版本,该软件共有1个控件,56个对象,581个接口。采用基于MapInfo Professional的相同的地图化技术,可以实现MapInfo Professional具有的绝大部分地图编辑和空间分析功能。VB简介:VB是Microsift公司推出的功能强大的可视化快速软件开发工具,它的可视化程序设计能力和语言功能及面向对象的特点,可与其它流行的高级语言相媲美,且使用VB开发应用系统,开发周期短,见效快。2 系统功能:农村配电网管理GIS是适用于县级电力局的GIS系统,主要应用于农村配电网中配电线路、设备等信息的显示和维护。配电网中配电线路及设备地理上分布的广泛性和复杂性给各种设备信息显示、检索以及对设备的检修、管理带来了很多不便,为了有一个统一的界面来显示、管理县、乡级线路和设备。我们以某县电力局为例,设计了农村配电网管理地理信息系统。该系统的功能如下:(1) 能够在县地图上,创建全县范围内的变电站及分层逐级创建配电网的线路线杆及线杆上相应设备分布的平面地图。(2) 能够在地图上完成对全县各变电站管辖范围内的线路、线杆及线杆上各种设备信息的显示、维护和查询。(3)实现对全县范围内各级线路、线杆及线杆上设备的定位、统计、分析功能。(4) 能够对指定的各级线路进行线损(理论和实际)计算并绘制线损分布图。(5) 打印输出属性和图形信息,可以指定图层打印输出,可以通过面积图、直方图、折线图、饼图、X-Y图等专题图来形象直观的表述信息。(6) 系统维护。(7) 系统帮助。3 系统总体结构
    4 系统实现本系统使用MapX4.5+VB6.0模式编程,使用MapX4.5来绘制、显示、维护和管理地理信息;使用VB,通过ADO控件或ODBC连接数据库来完成用户界面设计和属性数据管理。(1) 数据库的实现:该系统的数据分为空间数据和属性数据两种,空间数据主要指与线路、线杆位置相关的数据:如线杆的位置(坐标值)、唯一标示号等。属性数据指的是设备的属性信息:如设备的类型、型号、生产日期、检修状况等。对于与地理信息有关的数据,可以用MapX提供的图层表示存储,使之便于地理信息与地图对象的紧密结合,对于属性信息使用关系型数据库SQL SERVER进行存储。(2) 地图图层的划分:使用MapX提供的Geoset Manger管理器生成Power图层组,该图层组有5个图层组成,分别为:变电站层、线路层、线杆层、道路层、跨越物层。对于每一个图层都可以控制其是否可显示、可编辑、可选择、可自动标注。GeoSet Manger 使用名为power..gst的文件记录各个图层的各种属性值。(3) 地理信息增、删、改功能的实现:本系统使用MapX提供的各种图形工具来实现地理信息的增、删、改,下面是向图层中增加一个直线对象的实现语句。Private Sub Command1_Click()Map1.CreateCustomTool 22, miToolTypeLine, miArrowCursorMap1.CurrentTool = 22End SubPrivate Sub Map1_ToolUsed(ByVal ToolNum As Integer, ByVal X1 As Double, ByVal Y1 As Double, ByVal X2 As Double, ByVal Y2 As Double, ByVal Distance As Double, ByVal Shift As Boolean, ByVal Ctrl As Boolean, EnableDefault As Boolean)If ToolNum = 22 ThenDim pts As New PointsDim ftr As Feature pts. AddXY X1, Y1pts4. AddXY X2, Y2Set ftr= Map1.FeatureFactory.CreateLine(pts)ftr.Style.PickLineMap1.Layers("my_temp_layer").AddFeature ftrEnd IfEnd sub(4)地理信息查询和分析功能的实现:使用MapX提供的信息工具显示并查询和地理信息有关的数据。示例代码略。(5) 对于非地理信息数据,我们使用VB中的ADO控件或ODBC数据源连接数据库,进行信息显示、查询和管理。