GPS交换格式(GPX)

GPX(GPS交换格式)是一种包含GPS数据(航路点、路线和航迹)的轻型XML数据格式。有关更多信息,请参见官方 GPX site .

文件列表

所有的航路点、路线和航迹都存储在一个.gpx文件中。

数据访问/连接方法

  • 可通过OGR访问GPX。看OGR driver page 有关特定的驱动程序信息。

  • 可以在mapfile层的连接字符串中使用.gpx文件的相对路径。

  • 在数据参数中指定了功能类型
    • “轨道”特征类型通常是轨道线。

    • “轨道点”特征类型通常是构成轨道线的点。

Ogrinfo示例

首先,您应该确保您的GDAL/OGR构建包含“gpx”驱动程序,方法是使用“--formats”命令:

>ogrinfo --formats

   Loaded OGR Format Drivers:
   ...
   -> "CSV" (read/write)
   -> "GML" (read/write)
   -> "GPX" (read/write)
   -> "KML" (read/write)
   ...

如果你没有司机,你可能想试试 FWToolsMS4W 包,其中包括驱动程序。

一旦您有了GPX驱动程序,就可以尝试对文件使用ogrinfo命令来获取功能类型列表:

>ogrinfo test.gpx

   INFO: Open of `test.gpx'
         using driver `GPX' successful.
   1: waypoints (Point)
   2: routes (Line String)
   3: tracks (Multi Line String)
   4: route_points (Point)
   5: track_points (Point)

现在使用ogrinfo获取有关以下功能类型之一的信息:

>ogrinfo test.gpx track_points -summary

   INFO: Open of `test.gpx'
         using driver `GPX' successful.

   Layer name: track_points
   Geometry: Point
   Feature Count: 661
   Extent: (-66.694270, 47.985570) - (-66.675222, 47.990791)
   Layer SRS WKT:
   GEOGCS["WGS 84",
       DATUM["WGS_1984",
           SPHEROID["WGS 84",6378137,298.257223563,
               AUTHORITY["EPSG","7030"]],
           AUTHORITY["EPSG","6326"]],
       PRIMEM["Greenwich",0,
           AUTHORITY["EPSG","8901"]],
       UNIT["degree",0.01745329251994328,
           AUTHORITY["EPSG","9122"]],
       AUTHORITY["EPSG","4326"]]
   track_fid: Integer (0.0)
   track_seg_id: Integer (0.0)
   track_seg_point_id: Integer (0.0)
   ele: Real (0.0)
   time: DateTime (0.0)
   magvar: Real (0.0)
   geoidheight: Real (0.0)
   name: String (0.0)
   cmt: String (0.0)
   desc: String (0.0)
   src: String (0.0)
   ...

Mapfile 示例

既然您已经确认了ogr可以读取您的gpx文件,现在您可以创建一个mapserver层:

LAYER
  NAME "gpx"
  TYPE POINT
  STATUS ON
  CONNECTIONTYPE OGR
  CONNECTION test.gpx
  DATA "track_points"
  CLASS
    NAME "gpx"
    STYLE
      SYMBOL 'circle'
      COLOR 0 119 255
      SIZE 2
    END
  END
END # layer