gdal-opendrive-how-to

OpenDRIVE vector driver for GDAL

Currently, this driver is being reviewed in order to be integrated as optional plugin of GDAL.

Getting hands on

For now, clone our DLR development branch libopendrive-pr:

git clone https://github.com/DLR-TS/gdal.git --branch libopendrive-pr --single-branch

Build the custom Docker image as described in the XODR driver documentation:

cd gdal/docker/ubuntu-full/
docker build -t gdal/xodr -f Dockerfile .

Verify availability of the driver. Calling ogrinfo --formats should list the XODR driver as first item:

docker run --rm -it gdal/xodr ogrinfo --formats

Supported Formats:
  XODR -vector- (rov): OpenDRIVE - Open Dynamic Road Information for Vehicle Environment
  PCIDSK -raster,vector- (rw+v): PCIDSK Database File       
  PDS4 -raster,vector- (rw+vs): NASA Planetary Data System 4
  ...

You can use the new driver functions through the Docker container. For example, use ogr2ogr to convert a local .xodr file into any other supported OGR output format:

docker run --rm -v ${PWD}:/home -it gdal/xodr ogr2ogr -f "GPKG" /home/<file>.gpkg /home/<file>.xodr

Our goal is to make these functions conveniently usable through the official GDAL distribution in future, also enabling drag-and-drop of XODR into QGIS, for example.

QGIS Demo

Context references