PTV Navigation SDK

Introduction

The PTV Navigation SDK is a library of functions to build standalone navigation applications containing all major features of a modern navigation system.

       

Supported platforms

Structure

The SDK has two tiers, the native and the platform specific side like Android and iOS.

The native side has a C interface and works on almost all major platforms which can address native code like WindowsCE, Win32, Win64, Android, Linux, MacOS, iOS and the Universal Windows Platform (ARM and X86 platforms are supported). Above this native tier the platform specific language SDKs are settled. Until now we have a Java version for the Android platform and a Objective-C/Swift interface for iOS. The Universal Windows C++/CX support will follow.
In this documentation, we will show how to use the SDK in your project, ranging from initialization of the SDK to advanced topics.
In this version of the documentation, you will find for now the complete Android, iOS and the native tutorials.

For the beginning, let's have a short view on the major functions of the SDK:

Rendering / Map Interaction

  • Map rendering (2D/3D)
  • Zooming, panning, rotation
  • POI (Point of Interest) rendering
  • Day/Night mode, Grey mode
  • Changing the map rendering style
  • Adding and removing traces
  • Adding and removing arbitrary images on the map
  • Setting a map marker (position of the car)

Searching

  • Address search (Town, Street, House Number, Crossings, Postcode)
  • Geocoding and inverse geocoding (get a coordinate from a complete address or vice versa)
  • POI search, integration of own data possible

Route calculation

  • Calculation of routes with alternatives
  • Tour calculation with arbitrary stop off points
  • User profiles (with many restriction parameters)
  • Truck restrictions
  • Toll support
  • Guided navigation (on- and offroad)
  • Via area routing
  • Loading and saving of routes
  • Position on route, course, road type, road category, country id, dist from start, time from start, crossing maneuvers, turn orientations and many many more
  • Signpost info (target road name, exit numbers, colors of the signs)
  • Junction View info (type of the junction)
  • Speed Limits
  • Truck warnings
  • Maneuver text generation for TTS output

Traffic Information

  • Retrieve newest traffic information around the current position or route with the type of the incident, position, delay times and message
  • Show traffic traces on map
  • Get traffic delay times on route
  • Consider traffic for route calculation
  • Traffic prediction (only count traffic delays for jams which will be reachable)
  • In development: automatically rerouting when a jam on route appears or changes

What you get

  • SDK tutorials
    A set of tutorials which describe step by step how to use the SDK, from simple SDK initialization to a navigation example with gps, maneuver announcements, traffic information and more. All tutorials are available as source code.
  • SDK documentation
    An html documentation for all tutorials, which describes in detail every single tutorial.
  • Javadoc
    The SDK also comes along with a Java documentation of the SDK interface functions. Take a look at this documentation to get knowledge about the details of each available function.
  • iOS API Reference
    The documentation describes the Objective-C API of the SDK. Furthermore the Swift interface on every function is described.
  • Digital map data
    To use the demo application or to use the Navigation SDK in any other way you need digital map data. The digital map data of the Navigation SDK can be obtained from PTV. For each country this map data consists of a set of files which need to be installed on the device running a Navigation SDK driven application.
  • SDK library

How to install the tutorials

Installation of the SDK is platform dependent. Take a look at the specific platform tutorials, where the procedure is decribed in detail.