public class VirtualEdgeIteratorState extends Object implements EdgeIteratorState
Note, this class is not suited for public use and can change with minor releases unexpectedly or even gets removed.
REVERSE_STATE, UNFAVORED_EDGE
Constructor and Description |
---|
VirtualEdgeIteratorState(int originalEdgeKey,
int edgeKey,
int baseNode,
int adjNode,
double distance,
IntsRef edgeFlags,
String name,
PointList pointList,
boolean reverse) |
Modifier and Type | Method and Description |
---|---|
EdgeIteratorState |
copyPropertiesFrom(EdgeIteratorState fromEdge)
Copies the properties of the specified edge into this edge.
|
EdgeIteratorState |
detach(boolean reverse)
Clones this EdgeIteratorState.
|
PointList |
fetchWayGeometry(FetchMode mode)
For road network data like OSM a way is often not just a straight line.
|
boolean |
get(BooleanEncodedValue property) |
double |
get(DecimalEncodedValue property) |
<T extends Enum<?>> |
get(EnumEncodedValue<T> property) |
int |
get(IntEncodedValue property) |
String |
get(StringEncodedValue property) |
int |
getAdjNode() |
int |
getBaseNode()
Returns the node used to instantiate the EdgeIterator.
|
double |
getDistance() |
int |
getEdge() |
int |
getEdgeKey()
Returns the edge key of the current edge.
|
IntsRef |
getFlags()
Returns edge properties stored in direction of the raw database layout.
|
String |
getName() |
int |
getOrigEdgeFirst() |
int |
getOrigEdgeLast() |
int |
getOriginalEdgeKey()
This method returns the original (not virtual!) edge key.
|
boolean |
getReverse(BooleanEncodedValue property) |
double |
getReverse(DecimalEncodedValue property) |
<T extends Enum<?>> |
getReverse(EnumEncodedValue<T> property) |
int |
getReverse(IntEncodedValue property) |
String |
getReverse(StringEncodedValue property) |
EdgeIteratorState |
set(BooleanEncodedValue property,
boolean value) |
EdgeIteratorState |
set(BooleanEncodedValue property,
boolean fwd,
boolean bwd) |
EdgeIteratorState |
set(DecimalEncodedValue property,
double value) |
EdgeIteratorState |
set(DecimalEncodedValue property,
double fwd,
double bwd) |
<T extends Enum<?>> |
set(EnumEncodedValue<T> property,
T value) |
<T extends Enum<?>> |
set(EnumEncodedValue<T> property,
T fwd,
T bwd) |
EdgeIteratorState |
set(IntEncodedValue property,
int value) |
EdgeIteratorState |
set(IntEncodedValue property,
int fwd,
int bwd) |
EdgeIteratorState |
set(StringEncodedValue property,
String value) |
EdgeIteratorState |
set(StringEncodedValue property,
String fwd,
String bwd) |
EdgeIteratorState |
setDistance(double dist) |
EdgeIteratorState |
setFlags(IntsRef flags)
Stores the specified edgeFlags down to the DataAccess
|
EdgeIteratorState |
setName(String name) |
EdgeIteratorState |
setReverse(BooleanEncodedValue property,
boolean value) |
EdgeIteratorState |
setReverse(DecimalEncodedValue property,
double value) |
<T extends Enum<?>> |
setReverse(EnumEncodedValue<T> property,
T value) |
EdgeIteratorState |
setReverse(IntEncodedValue property,
int value) |
EdgeIteratorState |
setReverse(StringEncodedValue property,
String value) |
void |
setReverseEdge(EdgeIteratorState reverseEdge) |
void |
setUnfavored(boolean unfavored)
This method sets edge to unfavored status for routing from the start or to the stop location.
|
EdgeIteratorState |
setWayGeometry(PointList list) |
String |
toString() |
public int getOriginalEdgeKey()
EdgeIteratorState.getEdgeKey()
public int getEdge()
getEdge
in interface EdgeIteratorState
public int getEdgeKey()
EdgeIteratorState
GHUtility.getEdgeFromEdgeKey(int)
, but the edge key also contains information about the
direction of the edge. The edge key is even when the edge is oriented in storage direction and odd
otherwise. You can use the edge key to retrieve an edge state in the associated direction using
Graph.getEdgeIteratorStateForKey(int)
. Loop edges are always returned in 'forward' direction even when
you use an odd edge key.getEdgeKey
in interface EdgeIteratorState
public int getBaseNode()
EdgeIteratorState
getBaseNode
in interface EdgeIteratorState
EdgeIterator
public int getAdjNode()
getAdjNode
in interface EdgeIteratorState
EdgeIterator
public PointList fetchWayGeometry(FetchMode mode)
EdgeIteratorState
fetchWayGeometry
in interface EdgeIteratorState
mode
- FetchMode
public EdgeIteratorState setWayGeometry(PointList list)
setWayGeometry
in interface EdgeIteratorState
list
- is a sorted collection of coordinates between the base node and the current adjacent node. Specify
the list without the adjacent and base node. This method can be called multiple times, but if the
distance changes, the setDistance method is not called automatically.public double getDistance()
getDistance
in interface EdgeIteratorState
public EdgeIteratorState setDistance(double dist)
setDistance
in interface EdgeIteratorState
public IntsRef getFlags()
EdgeIteratorState
getFlags
in interface EdgeIteratorState
public EdgeIteratorState setFlags(IntsRef flags)
EdgeIteratorState
setFlags
in interface EdgeIteratorState
public boolean get(BooleanEncodedValue property)
get
in interface EdgeIteratorState
public EdgeIteratorState set(BooleanEncodedValue property, boolean value)
set
in interface EdgeIteratorState
public boolean getReverse(BooleanEncodedValue property)
getReverse
in interface EdgeIteratorState
public EdgeIteratorState setReverse(BooleanEncodedValue property, boolean value)
setReverse
in interface EdgeIteratorState
public EdgeIteratorState set(BooleanEncodedValue property, boolean fwd, boolean bwd)
set
in interface EdgeIteratorState
public int get(IntEncodedValue property)
get
in interface EdgeIteratorState
public EdgeIteratorState set(IntEncodedValue property, int value)
set
in interface EdgeIteratorState
public int getReverse(IntEncodedValue property)
getReverse
in interface EdgeIteratorState
public EdgeIteratorState setReverse(IntEncodedValue property, int value)
setReverse
in interface EdgeIteratorState
public EdgeIteratorState set(IntEncodedValue property, int fwd, int bwd)
set
in interface EdgeIteratorState
public double get(DecimalEncodedValue property)
get
in interface EdgeIteratorState
public EdgeIteratorState set(DecimalEncodedValue property, double value)
set
in interface EdgeIteratorState
public double getReverse(DecimalEncodedValue property)
getReverse
in interface EdgeIteratorState
public EdgeIteratorState setReverse(DecimalEncodedValue property, double value)
setReverse
in interface EdgeIteratorState
public EdgeIteratorState set(DecimalEncodedValue property, double fwd, double bwd)
set
in interface EdgeIteratorState
public <T extends Enum<?>> T get(EnumEncodedValue<T> property)
get
in interface EdgeIteratorState
public <T extends Enum<?>> EdgeIteratorState set(EnumEncodedValue<T> property, T value)
set
in interface EdgeIteratorState
public <T extends Enum<?>> T getReverse(EnumEncodedValue<T> property)
getReverse
in interface EdgeIteratorState
public <T extends Enum<?>> EdgeIteratorState setReverse(EnumEncodedValue<T> property, T value)
setReverse
in interface EdgeIteratorState
public <T extends Enum<?>> EdgeIteratorState set(EnumEncodedValue<T> property, T fwd, T bwd)
set
in interface EdgeIteratorState
public String get(StringEncodedValue property)
get
in interface EdgeIteratorState
public EdgeIteratorState set(StringEncodedValue property, String value)
set
in interface EdgeIteratorState
public String getReverse(StringEncodedValue property)
getReverse
in interface EdgeIteratorState
public EdgeIteratorState setReverse(StringEncodedValue property, String value)
setReverse
in interface EdgeIteratorState
public EdgeIteratorState set(StringEncodedValue property, String fwd, String bwd)
set
in interface EdgeIteratorState
public String getName()
getName
in interface EdgeIteratorState
public EdgeIteratorState setName(String name)
setName
in interface EdgeIteratorState
public void setUnfavored(boolean unfavored)
public int getOrigEdgeFirst()
getOrigEdgeFirst
in interface EdgeIteratorState
public int getOrigEdgeLast()
getOrigEdgeLast
in interface EdgeIteratorState
EdgeIteratorState.getOrigEdgeFirst()
public EdgeIteratorState detach(boolean reverse)
EdgeIteratorState
detach
in interface EdgeIteratorState
reverse
- if true a detached edgeState with reversed properties is created where base
and adjacent nodes, flags and wayGeometry are in reversed order. See #162 for more details
about why we need the reverse parameter.public EdgeIteratorState copyPropertiesFrom(EdgeIteratorState fromEdge)
EdgeIteratorState
copyPropertiesFrom
in interface EdgeIteratorState
public void setReverseEdge(EdgeIteratorState reverseEdge)
Copyright © 2012–2022. All rights reserved.