de.cm.osm2po.routing
Class OverlayEdge

java.lang.Object
  extended by de.cm.osm2po.routing.OverlayEdge

public class OverlayEdge
extends java.lang.Object

Eine Verbindung zwischen zwei Vertices innerhalb eine OverlayGraph-Instanz.

Wichtig:
Als Source und Target werden lediglich IDs verwaltet. Diese duerfen jedoch sowohl auf echte Vertices aus dem Original-Graphen als auch auf virtuelle aus dem Overlay verweisen.

Author:
(c) 2014 - Carsten Moeller - info@osm2po.de

Constructor Summary
protected OverlayEdge(int edgeIdx)
          Erstellt eine kuenstlich OverlayEdge mit einer Referenz auf eine echte Edge als Platzhalter fuer das Routing mit nicht OverlayGraph-faehigen Routern.
  OverlayEdge(int sourceId, int targetId, float km, float h, de.cm.osm2po.model.LatLons geometry)
          Erstellt eine kuenstliche Edge.
protected OverlayEdge(int edgeIdx, int sourceId, int targetId, float km, float h, de.cm.osm2po.model.LatLons geometry)
          Erstellt eine kuenstliche Edge, die eine Original-Edge aus dem statischen Graphen ganz oder teilweise ueberlagert.
 
Method Summary
static double calcPathLength(Graph graph, OverlayEdge[] overlayEdges)
          Berechnet die Strecke einer Route.
static double calcPathTime(Graph graph, OverlayEdge[] overlayEdges)
          Berechnet die Fahrzeit einer Route.
 OverlayEdge copyReversed(Graph graph)
          Erstellt die Rueckwaerts-Variante.
 int getEdgeIdx()
           
 de.cm.osm2po.model.LatLons getGeometry()
           
 float getH()
           
 int getIdx()
           
 float getKm()
           
 int getSourceId()
           
 int getTargetId()
           
static OverlayEdge[] makePath(Graph graph, int[] edgeIdxs)
          Wandelt eine Liste von EdgeIdx aus dem statischen Original Graphen Graph in eine Liste von OverlayEdge mit Geometry null.
protected  void setIdx(int idx)
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

OverlayEdge

public OverlayEdge(int sourceId,
                   int targetId,
                   float km,
                   float h,
                   de.cm.osm2po.model.LatLons geometry)
Erstellt eine kuenstliche Edge. Ruft intern
OverlayEdge(int, int, int, float, float, LatLons)
mit edgeIdx = 0.

Parameters:
sourceId - int Id des StartVertex
targetId - int Id des ZielVertex
km - Laenge in Kilometern
h - Fahrzeit in Stunden
geometry - LatLons

OverlayEdge

protected OverlayEdge(int edgeIdx)
Erstellt eine kuenstlich OverlayEdge mit einer Referenz auf eine echte Edge als Platzhalter fuer das Routing mit nicht OverlayGraph-faehigen Routern.

Parameters:
edgeIdx - int Index der Edge im Original-Graphen.

OverlayEdge

protected OverlayEdge(int edgeIdx,
                      int sourceId,
                      int targetId,
                      float km,
                      float h,
                      de.cm.osm2po.model.LatLons geometry)
Erstellt eine kuenstliche Edge, die eine Original-Edge aus dem statischen Graphen ganz oder teilweise ueberlagert.

Parameters:
edgeIdx - int Index der Edge im Original-Graphen, oder 0 wenn rein virtuell.
sourceId - int Id des StartVertex
targetId - int Id des ZielVertex
km - Laenge in Kilometern
h - Fahrzeit in Stunden
geometry - LatLons
Method Detail

setIdx

protected void setIdx(int idx)

getIdx

public int getIdx()

getEdgeIdx

public int getEdgeIdx()

getSourceId

public int getSourceId()

getTargetId

public int getTargetId()

getKm

public float getKm()

getH

public float getH()

getGeometry

public de.cm.osm2po.model.LatLons getGeometry()

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

copyReversed

public OverlayEdge copyReversed(Graph graph)
Erstellt die Rueckwaerts-Variante.

Parameters:
graph - Graph NULLABLE (dann rein virtuell).
Returns:
OverlayEdge oder NULL, wenn nicht erstellbar.

makePath

public static OverlayEdge[] makePath(Graph graph,
                                     int[] edgeIdxs)
Wandelt eine Liste von EdgeIdx aus dem statischen Original Graphen Graph in eine Liste von OverlayEdge mit Geometry null.

Parameters:
graph - OverlayGraph static graph.
edgeIdxs - int[] Array von Referenzen auf Edges.
Returns:
OverlayEdge[] Array oder null, wenn null uebergeben.

calcPathLength

public static double calcPathLength(Graph graph,
                                    OverlayEdge[] overlayEdges)
Berechnet die Strecke einer Route.

Parameters:
graph - Graph
overlayEdges - (Route) Array of OverlayEdge
Returns:
double Strecke

calcPathTime

public static double calcPathTime(Graph graph,
                                  OverlayEdge[] overlayEdges)
Berechnet die Fahrzeit einer Route.

Parameters:
graph - Graph
overlayEdges - (Route) Array of OverlayEdge
Returns:
double Fahrzeit

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