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.
Structure
The SDK has two tiers, first the native and second 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 a set of Android, iOS and the native tutorials.
For the beginning, let's have a short look on the major functions of the SDK:
Rendering / Map Interaction
- Map rendering in 2D and 3D
- Map interaction like zooming, panning and 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 (towns, streets, housenumbers, crossings, postcodes)
- Geocoding and inverse geocoding (get a coordinate from an address or vice versa)
- POI search, integration of own data
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
Navigation
- Position on route, course, road type, road category, country id, distance and time from start, crossing maneuvers, turn orientations and many many more
- Signpost information (target road names, exit numbers, colors of the signs)
- Junction view information
- 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 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 described in detail.