| Report of the route |
EMAPI allows for the final route report and then displays it in a DIV element. It's also possible to create your own representation of the route (EMAPI.Router.RouteRepresentation class).
Example of using the final route report::
var router = new EMAPI.Router( //create a new instance of the EMAPI.Router class
{
map: mapa, //map on which routes are to be visualized
reportPointsHandlerPointsName: 'punkty_id' //DIV element, which sets the list of waypoints
reporResultHandlerName: 'raport_id' //DIV element, which sets the route report
}
);
<div id="points_id"></div> //DIV element that contains added waypoints
<div id="report_id"></div> //DIV element that contains the final route
The list of added waypoints:
Raport trasy:
EMAPI.Router.RouteRepresentation - parameters and representation class of the route. Representation includes a report of the route divided into sections (sections) designated by the waypoints.
var rr = router.routeRepresentation;
Available parameters:
| routeFrom | {String} Location of the starting point of the route. |
| routeTo | {String} Location of the final point of the route. |
| routeDescription | {String} Name of the route. |
| routeItems | {EMAPI.ArrayObjects} List of segments of the route between pairs of another points. |
| tollRoadLength | {Float} Length of toll roads are included in the route (in km). |
| tollRoadTime | {String} Length of toll roads are included in the route. |
| totalFuelCost | {Float} Total cost of the fuel. |
| totalRouteCost | {Float} The total cost of the route traveled. |
| totalRouteLenght | {Float} The total length of the route (in km). |
| totalRouteTime | {String} Total travel time route. |
| unreachableEntry | {Integer} The index of the waypoint which it wasn't impossible to determine the drive. ( starting from 1 for the second waypoint). |
var div = document.getElementById('raport'); //DIV element, which sets the route report
var rr = router.routeRepresentation;
div.innerHTML = 'Name: '+ rr.routeDescription //
+ '
Starting point: ' + rr.routeFrom //information contained in the route report
+ '
Final point: ' + rr.routeTo //
+ '
The length of the route: ' + rr.totalRouteLength; //
<div id="raport"></div> //DIV element contained the route report
EMAPI.Router.RouteRepresentationSection - parameters and representation class section (section) route between two points of the route.
Available parameters:
| sectionFrom | {String} Location of the starting point of the route section. |
| sectionTo | {String} Location of the final point of the route section. |
| sectionCost | {Float} The total cost of the section traveled route. |
| sectionDistance | {Float} The total length of the section of route (in km). |
| sectionTime | {String} Total travel time of the section route |
| routeItems | {EMAPI.ArrayObjects} The list of characteristic points of the section route ( report of the route). |
var div = document.getElementById('raport_id2');
var rr = router.routeRepresentation;
var raport='';
for(var i=0; i<rr.routeItems.length; i++) //search all sections
{
var sekcje = rr.routeItems[i]; //getting information from all sections of the route
raport = raport + '<tr><th width="300" style="border:1 solid #DB700F;background-color:#FFE8B5">'
+ sekcje.sectionFrom + ' - ' + sekcje.sectionTo //starting point - the final point of the section
+ '<th width="60">km' + '<th width="60">czas' + '</tr>';
}
EMAPI.Router.RouteRepresentationItem - the class of the route characteristic point (entry in the report of the route).
Available parameters:
| entryCost | {Float} The current cost of the route starting from the beginning up to this point. |
| entryDistance | {Float} Distance along the route starting from the beginning up to this point (in km). |
| entryPosition | {EMAPI.LonLat} The coordinates of the chracteristic point of the route.v |
| entryTime | {String} Journey time to the point from the beginning of the route. |
| entryDescription | {String} A description of the characteristic point that inform about the event in the course of the route. |
| entryType | {String} The type of event at this point. |
Example of creating a route report:
var div = document.getElementById('raport_id2');
var rr = router.routeRepresentation;
var raport='';
for(var i=0; i<rr.routeItems.length; i++) //search all sections
{
var sekcje = rr.routeItems[i]; //downloading information from all sections of the route
raport = raport + '<tr><th width="300" style="border:1 solid #DB700F;background-color:#FFE8B5">'
+ sekcje.sectionFrom + ' - ' + sekcje.sectionTo //starting point - the final point of the section
+ '<th width="60">km' + '<th width="60">czas' + '</tr>';
for(var j=0;j<sekcje.routeItems.length;j++) //search all the points in the section
{
var punkty = sekcje.routeItems[j]; //downloading information from all points of the section
raport = raport + '<tr><td style="color:#8e8e8e;padding-left:10px;">'
+ punkty.entryDescription //a description of the point
+ '<td>' + punkty.entryDistance //distance to the point
+ '<td>' + punkty.entryTime + '</tr>'; //time to reach the point
}
}
<div id="raport_id2"></div> //DIV element that contains the report of the route