de.cm.osm2po.routing
Class TouchPoint

java.lang.Object
  extended by de.cm.osm2po.routing.TouchPoint
All Implemented Interfaces:
java.lang.Comparable<TouchPoint>

public class TouchPoint
extends java.lang.Object
implements java.lang.Comparable<TouchPoint>

Diese Klasse repraesentiert einen geografischen Punkt auf dem Graphen. Dies kann sowohl ein Vertex als auch ein beliebiger Punkt auf einer Linie einer Edge sein.

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

Constructor Summary
protected TouchPoint(int id, int edgeIdx, long coord, int pointIdx)
          Interner Hilfskonstruktor.
 
Method Summary
 int compareTo(TouchPoint that)
           
static TouchPoint create(Graph graph, float lat, float lon)
          Findet die dichteste Edge zu einer Koordinate und liefert diese als TouchPoint-Objekt zurueck.
static TouchPoint create(Graph graph, float lat, float lon, int minCount)
          Findet die dichteste Edge zu einer Koordinate und liefert diese als TouchPoint-Objekt zurueck.
static TouchPoint create(Graph graph, int vertexId)
          Erstellt einen kuenstlichen TouchPoint aufgrund eines bereits bekannten, uebergebenen Vertex.
static TouchPoint create(Graph graph, de.cm.osm2po.model.LatLon latLon)
          Findet die dichteste Edge zu einer Koordinate und liefert diese als TouchPoint-Objekt zurueck.
 java.util.Map<java.lang.Integer,Section> findIncomingEdges(Graph graph)
          Liefert die ankommenden Sektionen / Kanten eines Touchpoints.
 java.util.Map<java.lang.Integer,Section> findOutgoingEdges(Graph graph)
          Liefert die abgehenden Sektionen / Kanten eines Touchpoints.
 int getEdgeIdx()
           
 int getEdgePointIdx()
           
 de.cm.osm2po.model.LatLons getGeometryIn()
           
 de.cm.osm2po.model.LatLons getGeometryOut()
           
 int getId()
           
 double getLat()
           
 double getLon()
           
 double getRatio()
           
 int getVertexId()
           
 boolean isPoint()
           
 boolean isVertex()
           
 void setId(int id)
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

TouchPoint

protected TouchPoint(int id,
                     int edgeIdx,
                     long coord,
                     int pointIdx)
Interner Hilfskonstruktor. Erstellt fuer das Splitting einen virtuellen Stuetzpunkt, der kein Vertex ist.

Parameters:
edgeIdx - int Index der Original-Edge.
coord - long Koordinate in gepackter Form.
pointIdx - Index des virtuellen Stuetzpunktes.
Method Detail

setId

public void setId(int id)

getId

public int getId()

isVertex

public boolean isVertex()

getVertexId

public int getVertexId()

getEdgeIdx

public int getEdgeIdx()

getEdgePointIdx

public int getEdgePointIdx()

isPoint

public boolean isPoint()

getLat

public double getLat()

getLon

public double getLon()

getRatio

public double getRatio()

getGeometryIn

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

getGeometryOut

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

compareTo

public int compareTo(TouchPoint that)
Specified by:
compareTo in interface java.lang.Comparable<TouchPoint>

create

public static TouchPoint create(Graph graph,
                                float lat,
                                float lon,
                                int minCount)
Findet die dichteste Edge zu einer Koordinate und liefert diese als TouchPoint-Objekt zurueck.

Parameters:
graph - Graph
lat - float Latitude (Breitengrad)
lon - float Longitude (Laengengrad)
minCount - grobe minimale Anzahl zurueckgelieferter Edges.
Returns:
new TouchPoint oder null.

create

public static TouchPoint create(Graph graph,
                                float lat,
                                float lon)
Findet die dichteste Edge zu einer Koordinate und liefert diese als TouchPoint-Objekt zurueck. Ruft intern create(Graph, float, float, int) mit einer Minimalanzahl von 100.

Parameters:
graph - Graph
lat - float Latitude (Breitengrad)
lon - float Longitude (Laengengrad)
Returns:
new TouchPoint oder null.

create

public static TouchPoint create(Graph graph,
                                de.cm.osm2po.model.LatLon latLon)
Findet die dichteste Edge zu einer Koordinate und liefert diese als TouchPoint-Objekt zurueck. Ruft intern create(Graph, float, float) auf.

Parameters:
graph - Graph
latLon - LatLon
Returns:
new TouchPoint oder null.

create

public static TouchPoint create(Graph graph,
                                int vertexId)
Erstellt einen kuenstlichen TouchPoint aufgrund eines bereits bekannten, uebergebenen Vertex.

Parameters:
graph - Graph
vertexId - int Id des Vertex >= 0
Returns:
new TouchPoint oder null.

findOutgoingEdges

public java.util.Map<java.lang.Integer,Section> findOutgoingEdges(Graph graph)
Liefert die abgehenden Sektionen / Kanten eines Touchpoints.

Parameters:
graph - Graph
Returns:
Map of (EdgeIdx / EdgeRoutingResultEdge)

findIncomingEdges

public java.util.Map<java.lang.Integer,Section> findIncomingEdges(Graph graph)
Liefert die ankommenden Sektionen / Kanten eines Touchpoints.

Parameters:
graph - Graph
Returns:
Map of (EdgeIdx / EdgeRoutingResultEdge)

toString

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

osm2po-core-4.8.8 (c) 2012 Carsten Moeller - info@osm2po.de