de.cm.osm2po.routing
Interface MultiPathRouter

All Superinterfaces:
SingleTargetRouter
All Known Subinterfaces:
GradualRouter, MultiTargetRouter
All Known Implementing Classes:
DefaultRouter, MlgRevRouter, MlgRouter, PoiRouter

public interface MultiPathRouter
extends SingleTargetRouter

Erweitert den SingleTargetRouter um die Moeglichkeit, nachgelagert weitere Routen ohne Neuberechnung abzufragen. Eine Eingrenzung auf einen Suchraum, z.B. fuer Driving-Circle-Distance ist ebenfalls enthalten.

Author:
(c) 2012 - Carsten Moeller - info@osm2po
See Also:
DefaultRouter, MultiTargetRouter

Method Summary
 boolean isVisited(int vertexId)
          Liefert true, wenn sich ein Vertex nach der Traversierung in der BlackList (ClosedList) befindet, also besucht bzw. erreicht wurde.
 int[] makePath(int toTargetId)
          Erstellt den Pfad nach erfolgreichem traverse(Graph, int, int, float, Properties) Dabei werden vom Ziel die Kanten rueckwaerts durchfahren, die Reihenfolge umgedreht und vorwaers sortiert zurueckgeliefert.
 void traverse(Graph graph, int sourceId, int targetId, float maxCost, java.util.Properties params)
          Traversiert den Graphen und bricht ab, sobald der Ziel-Vertex besucht wurde oder die maxCost ueberschritten wurde.
 
Methods inherited from interface de.cm.osm2po.routing.SingleTargetRouter
findPath, getVisited, reset, setLog
 

Method Detail

traverse

void traverse(Graph graph,
              int sourceId,
              int targetId,
              float maxCost,
              java.util.Properties params)
Traversiert den Graphen und bricht ab, sobald der Ziel-Vertex besucht wurde oder die maxCost ueberschritten wurde.

Parameters:
graph - Graph
sourceId - Vertex Start Id
targetId - Vertex Ziel Id
maxCost - Maximal zulaessige Wegkosten. Abbruchkriterium.
params - Properties weitere Einstellungen (NULLABLE).
See Also:
makePath(int), SingleTargetRouter.getVisited()

makePath

int[] makePath(int toTargetId)
Erstellt den Pfad nach erfolgreichem traverse(Graph, int, int, float, Properties) Dabei werden vom Ziel die Kanten rueckwaerts durchfahren, die Reihenfolge umgedreht und vorwaers sortiert zurueckgeliefert.

Parameters:
toTargetId - Id des ZielVertex. Dies muss nicht zwangslaeufig der Ziel-Knoten, sein. Es kann auch ein beliebiger Vertex aus SingleTargetRouter.getVisited() uebergeben werden, um so weitere Pfade zu finden.
Returns:
Indizes (nicht die IDs!) der Edge-Objekte vom Start zum Ziel oder null, wenn kein Pfad vorhanden.

isVisited

boolean isVisited(int vertexId)
Liefert true, wenn sich ein Vertex nach der Traversierung in der BlackList (ClosedList) befindet, also besucht bzw. erreicht wurde.

Parameters:
vertexId - int Id des Vertex > 0.
Returns:
wurde besucht, ja/nein.

osm2po-core-5.0.0 (c) December 24 2014 Carsten Moeller - info@osm2po.de