The integration of a map into an application often requires more interaction possibilities than zooming and panning. Therefore the PTV xMap services provide additional textual information about the drawn Feature Layer items, for example additional attributes of road segments, which may influence the result of routeA route corresponds to a path of a vehicle through the underlying transport network. The main attributes of a route are the distance and the time that the vehicle travels along the path. calculation.
The more information a map has to visualize, the more difficult it becomes to find a reasonable way to display it. User interaction provides several approaches to solve this problem:
Check if the following prerequisites are fulfilled before you start with the integration sample:
Feature Layers provide additional content to enrich PTV maps, such as vehicleIn this context the term vehicle is used to describe what is being routed for. Commonly this will be a motorized vehicle like a truck including its trailer or a car. However also a bike or a pedestrian are included in this definition.-dependent restrictions on roads, or even live traffic information. It may help to improve routingA route corresponds to a path of a vehicle through the underlying transport network. The main attributes of a route are the distance and the time that the vehicle travels along the path. results, for example.
Various Feature Layer themes providing different kinds of content are available. Several Feature Layer themes may be used in combination.
In xMap2 API the rendering of geographical objects can be combined with the additional content of Feature Layers.
Via RESTREST (Representational state transfer) represents a World Wide Web paradigm, consisting of constraints to the design of components which results in a better performance and maintainability. operation tile
, the returned object
can be extended to contain both the image and additional info. The corresponding RESTREST (Representational State Transfer) represents a World Wide Web paradigm, consisting of constraints to the design of components which results in a better performance and maintainability. request looks like this:
http://hostname:50000/services/rest/XMap/tile/{z}/{x}/{y}?storedProfile=silkysand&layers=labels,transport,background,PTV_TruckAttributes&contentType=JSONJSON (JavaScript Object Notation) is an open standard format for which human-readable text is used to transmit information consisting of attribute–value pairs. It is the first-address data format used for asynchronous browser/server communication (AJAX).
Refer to the API Documentation to learn more about the supported URL schema. This is the information you must supply to your framework to have it display tiles from PTV xMap.
In Leaflet, the predefined TileLayer class is commonly used for generating tile images, which are placed (and cached) according to an internal mechanism.
Unfortunately, only images are returned to the client by this tiled rendering approach, no specifications exist how to include additional data. To retrieve
Feature Layer object information additionally, the L.TileLayer
class is extended by a PTV-specific implementation called
L.tileLayer.xserver
. This extension is part of the leaflet-xserver.js
library which is used throughout the code samples.
As its major feature, the TileLayer.xserver extends internally the response by an additional collection of textual information. Besides the original tile bitmap, for all rendered Feature Layer attributes inside this tile, their textual description is also requested from xMap service. These texts are shown in in a popup when a feature is clicked with the left mouse button. All these GUI relevant parts are also handled by this layer.
In the following sample, PTV TruckAttributes and its textual descriptions are shown. Furthermore, this layer is parameterized for time consideration of time-restricted attributes:
When Feature Layers are drawn on the map the road segments concerned by the Feature Layers are filled and icons are drawn. By default, the icons are rendered on the server side which implies they are drawn into the tile image. With server-side icon rendering the client can only interact by retrieving the attributes and displaying them in a tooltip. The switch drawIcons disables the server-side rendering and the switch iconReference provides icon references for each included Feature Layer icon. With the icon reference it is possible to retrieve the corresponding icon image via xRuntime.
Client-side rendering of icons provides some possibilities:
The following topics might be relevant for this use case: