因为找不到相应版面,就发到这里来了。
假设用GPS和GIS做车辆监控,用Oracle数据库做后来数据库。用MapInfo组织GIS相关文件。
请问:当一辆车进入监控范围,系统如何将其显示在地图上,执行流程是怎样的?
     当车辆移动时,程序又如何处理以使其在地图上移动,系统和程序的执行流程是怎样的?

解决方案 »

  1.   

    在做之前先在DELPHI中安装MAPX控件首先,得到GPS的坐标,转换成经纬度。注意:度后面的小数表示不同,一个是六十进制,一个是100进制,这个错了会偏差好几公里。我忘了具体是哪个了,为了这个我以前搞了好几天其次,只要在电子地图上根据标准经纬度显示就行了,有现成函数的。
    地图上的标示越少越好,否则刷新会很慢,你也可以通过添加元素来实现(在地图上的标示什么的都是一个元素)具体多看看MAPX的帮助,很全的,我去年写的相似软件,现在忘的差不多了,手头也没源程序,帮不了你更多了
      

  2.   

    GPS得到的信息中有三条包含了经纬度信息,一般只选其中一条,除了经纬度还有标准时间(和北京时间相差8小时),运动速度(单位是节),运动方向(360度表示)等信息。这些对车辆监控也很重要,你只需把车辆上得到GPS信息转换一下存到数据库里就行了,不要存MAPX信息,GPS每秒一条,只有十几个字节,MAPX描点后就大了,300点都要好几M。显示时从数据库中读取再实时生成MAPX图层。
      

  3.   

    问: 
      1. GPS跟数据库之间是如何关联?即如何将GPS接收机的数据存到数据库,难道采用轮询的方式读取每个接收机数据,然后手动写数据库吗? 
      2. 为了在地图上动态显示,方法是设置一个定时器,单位时间读取一个数据库,然后用MapX更新地图吗?
      

  4.   

    回答:
    1. GPS得到的信息是一条十几字节的字符串。你有两个选择,一是直接把信息存入数据库,在使用时在分成经纬度,速度等信息,但这种方式用在过后回放车辆行驶记录时才有用,我的软件就是这样的;第二是先处理得到的GPS信息,把它转换成经纬度,速度,方向等具体信息,再存入数据库。恐怕GPS信息数据要存入数据库只有自己写代码了,没有现成的可以用。2.为了在地图上动态显示,用MAPX更新地图图层恐怕不行,我的城市地图在P4,512M的机器上可以每秒刷新一次,差点的机器要近十秒才刷新一遍,肯定达不到要求,但是可以在图层上一个一个添加点。具体我也记不清了,你看一下MAPX的帮助文档,有函数可以用的。我想问一下,你的软件是过后回放还是实时监测?
    是在车辆上安装GPS接受卫星信息的方式吗?
      

  5.   

    1.数据库要了解oracle spatialware2.地图要了解MapX的动态图层3.GPS俺也不了解
      

  6.   

    mapx好象实现大的地图很慢啊!建议不复杂的情况下自己画