This class encapsulates the Routing API v8 as a service stub.
It's not allowed to call the constructor directly (an IllegalOperationError is thrown).
Instead an instance of this Service can be retrieved by calling the factory method
H.service.Platform#getRoutingService on a platform instance.
| Name | Type | Description |
|---|---|---|
opt_options |
H.service.Options |
optional
Configuration options for routing service |
Throws:
-
-
in case of invalid specified options
-
-
-
when trying to create an instance using constructor
-
Example
// Assumption: the platform is instantiated
let router = platform.getRoutingService(null, 8);
router.calculateRoute({
'origin': '48.86,2.31',
'destination': '48.86,2.35',
// defines multiple waypoints
'via': new H.service.Url.MultiValueQueryParameter(['48.8664,2.3234', '48.8703,2.3499']),
// returns route shape as a polyline in response
'return': 'polyline',
'transportMode': 'car'
}, (result) => {
const sections = result.routes[0].sections;
const lineStrings = [];
sections.forEach((section) => {
// convert Flexible Polyline encoded string to geometry
lineStrings.push(H.geo.LineString.fromFlexiblePolyline(section.polyline));
});
const multiLineString = new H.geo.MultiLineString(lineStrings);
const bounds = multiLineString.getBoundingBox();
// render route on the map
map.addObject(new H.map.Polyline(multiLineString, {style: {lineWidth: 5}}));
// zoom to polyline
map.getViewModel().setLookAtData({bounds});
}, console.error);
Extends
Members
-
The property name to use when specifying options for this service within the
H.service.Platform.Options#servicesConfig.
Methods
-
addEventListener (type, handler, opt_capture, opt_scope) inherited
-
This method adds a listener for a specific event.
Note that to prevent potential memory leaks, you must either call
removeEventListenerordisposeon the given object when you no longer need it.Name Type Description typestring The name of the event
handlerfunction An event handler function
opt_captureboolean optional trueindicates that the method should listen in the capture phase (bubble otherwise)opt_scopeObject optional An object defining the scope for the handler function
-
addOnDisposeCallback (callback, opt_scope) inherited
-
This method adds a callback which is triggered when the
EventTargetobject is being disposed.Name Type Description callbackfunction The callback function.
opt_scopeObject optional An optional scope for the callback function
-
calculateIsoline (params, onResult, onError)H.util.ICancelable
-
This method sends a "Calculate Isoline" request to the HERE Isoline Routing API v8 and calls the
onResultcallback function once the service response becomes available (providing aH.service.ServiceResultobject) or theonErrorcallback if a communication error occurred.Please refer to the HERE Isoline Routing API v8 documentation for information on available parameters and the response object structure.
Name Type Description paramsH.service.ServiceParameters Contains service parameters to be sent with the request.
onResultfunction(H.service.ServiceResult) A callback function to be called once the API provides a response to the request.
onErrorfunction(Error) A callback function to be called if a communication error occurs during the request.
Returns:
Type Description H.util.ICancelable a handle that allows to cancel the request. Example
let routingParams = { 'routingMode': 'fast', 'transportMode': 'car', 'origin':'52.5,13.4', 'range[type]': 'time', 'range[values]': '900', }; // Define a callback function to process the routing response let onResult = function(result) { if (result.isolines.length) { result.isolines[0].polygons.forEach((polygon) => { // Create a linestring to use as a point source for the isoline const linestring = H.geo.LineString.fromFlexiblePolyline(polygon.outer); // Create a polygon and a marker representing the isoline const isolinePolygon = new H.map.Polygon(linestring, { style: { strokeColor: 'blue', lineWidth: 3 } }); // Create a marker for the start point const isolineCenter = new H.map.Marker(result.departure.place.location); // Add the polygon and marker to the map map.addObjects([isolinePolygon, isolineCenter]); // Center and zoom the map so that the whole isoline polygon is // in the viewport map.getViewModel().setLookAtData({bounds: isolinePolygon.getBoundingBox()}); }); } }; // Assumption: the platform is instantiated. // Get an instance of the routing service let router = platform.getRoutingService(null, 8); // Call the Isoline Routing API to calculate an isoline router.calculateIsoline( routingParams, onResult, console.error ); -
calculateRoute (params, onResult, onError)H.util.ICancelable
-
This method sends a request to the Routing API v8 to calculate a route and calls the
onResultcallback function once the service response becomes available (providing aH.service.ServiceResultobject) or theonErrorcallback if a communication error occurred.Please refer to the Routing API v8 documentation for information on available parameters and the response object structure.
Name Type Description paramsH.service.ServiceParameters Contains service parameters to be sent with the request.
onResultfunction(H.service.ServiceResult) A callback function to be called once the API provides a response to the request.
onErrorfunction(Error) A callback function to be called if a communication error occurs during the request.
Returns:
Type Description H.util.ICancelable a handle that allows to cancel the request. -
dispatchEvent (evt) inherited
-
This method dispatches an event on the
EventTargetobject.Name Type Description evtH.util.Event | string An object representing the event or a string with the event name
-
dispose () inherited
-
This method removes listeners from the given object. Classes that extend
EventTargetmay need to override this method in order to remove references to DOM Elements and additional listeners. -
getUrl ()H.service.Url inherited
-
This method returns the configured service URL.
Returns:
Type Description H.service.Url -
removeEventListener (type, handler, opt_capture, opt_scope) inherited
-
This method removes a previously added listener from the
EventTargetinstance.Name Type Description typestring The name of the event
handlerfunction A previously added event handler
opt_captureboolean optional trueindicates that the method should listen in the capture phase (bubble otherwise)opt_scopeObject optional An object defining the scope for the handler function