Giter Club home page Giter Club logo

map's Introduction

Map support for Automated Driving

Table of contents

  1. Introduction
  2. License
  3. Releases
  4. Getting Started
    1. Supported Systems
  5. Building the libraries
  6. Contributing

Introduction

This repository provides a set of libraries and tools to support the handling of maps for Automated Driving. This includes the following:

  • C++ library for automated driving physics data types (ad_physics)
  • C++ library for reading OpenDRIVE XML data (ad_map_opendrive_reader)
  • C++ library for accessing automated driving maps (ad_map_access)
  • MapMaker tools for basic offline conversion from OpenStreetMap data into the internal ad_map_access binary format.
  • A a plugin for the free QGIS tool to visualize and inspect the ad map data

License

This software library is provided under the MIT open-source license: https://opensource.org/licenses/MIT.

In addition, the terms in the following apply: RELEASE NOTES AND DISCLAIMERS.

Documentation

Visit the project's Documentation page to access the online version of the full documentation of this library.

Releases

General release notes and changes can be found in the Changelog

Release 2.0.0

Improved route and especially connected route handling.

Release 1.1.0

Added python bindings.

Release 1.0.0

The initial release of the map C++ software libraries.

Getting started

Installation of dependencies

Currently, the focused operating system is Ubuntu 16.04. Nevertheless, the library should work in a similar way for any other Linux OS. To install the dependencies for Ubuntu 16.04 execute the following command:

 user$> sudo apt-get install git build-essential cmake

If you want to use doxygen for API documentation, please also install:

 user$> sudo apt-get install doxygen graphviz

Get the library

To download the library, you may run:

 user$> git clone https://github.com/carla-simulator/map.git
 user$> cd map

Supported systems

Development systems are Ubuntu 16.04 and Ubuntu 18.04. Following compiler combinations are tested continously:

Ubuntu 16.04 Ubuntu 18.04
Clang 5.0 x
Clang 6.0 x
Clang 7 x
Clang 8 x
GCC 5 x
GCC 6 x
GCC 7 x
GCC 8 x
GCC 9 x

Important: cmake is required to be at least version 3.5!

Building the library

See the detailed Build instructions.

Contributing

Contibutions are very welcome!

Before submitting a pull request, please ensure that your code compiles successfully and that the tests run successfully. Please also check that your code formatting complies to the provided clang style. To do so, you can run:

map$> sudo apt-get install clang-format-3.9
map$> find -iname *.cpp -o -iname *.hpp | xargs clang-format-3.9 -style=file -i

This command will automatically update the code formatting to be compliant with our style.

In addition, please perform a static code analysis, if possible.

map$> sudo apt-get install clang-tidy
map$> cmake -DBUILD_STATIC_ANALYSIS=ON
map$> make clang-tidy

This may provide a list of possible improvements that you would like to consider in your pull request.

map's People

Contributors

berndgassmann avatar fabianoboril avatar germanros1987 avatar johannesquast avatar sm-azure avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.