public class VirtualEdgeIteratorState extends Object implements EdgeIteratorState, CHEdgeIteratorState
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 edgeId,
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(int mode)
For road network data like OSM a way is nearly always a curve not just a straight line.
|
boolean |
get(BooleanEncodedValue property) |
double |
get(DecimalEncodedValue property) |
<T extends Enum> |
get(EnumEncodedValue<T> property) |
int |
get(IntEncodedValue property) |
int |
getAdditionalField() |
int |
getAdjNode() |
int |
getBaseNode()
Returns the node used to instantiate the EdgeIterator.
|
double |
getDistance() |
int |
getEdge() |
IntsRef |
getFlags()
Returns edge properties stored in direction of the raw database layout.
|
int |
getMergeStatus(int flags)
This method is only used on preparation.
|
String |
getName() |
int |
getOrigEdgeFirst() |
int |
getOrigEdgeLast() |
int |
getOriginalEdgeKey()
This method returns the original edge via its key.
|
boolean |
getReverse(BooleanEncodedValue property) |
double |
getReverse(DecimalEncodedValue property) |
<T extends Enum> |
getReverse(EnumEncodedValue<T> property) |
int |
getReverse(IntEncodedValue property) |
int |
getSkippedEdge1() |
int |
getSkippedEdge2() |
double |
getWeight()
Returns the weight of this shortcut.
|
boolean |
isShortcut() |
EdgeIteratorState |
set(BooleanEncodedValue property,
boolean value) |
EdgeIteratorState |
set(DecimalEncodedValue property,
double value) |
<T extends Enum> |
set(EnumEncodedValue<T> property,
T value) |
EdgeIteratorState |
set(IntEncodedValue property,
int value) |
EdgeIteratorState |
setAdditionalField(int value)
Updates the additional field value for this edge
|
EdgeIteratorState |
setDistance(double dist) |
CHEdgeIteratorState |
setFirstAndLastOrigEdges(int firstOrigEdge,
int lastOrigEdge)
Sets the first and last original edges that are skipped by this shortcut.
|
EdgeIteratorState |
setFlags(IntsRef flags)
Stores the specified edgeFlags down to the DataAccess
|
void |
setFlagsAndWeight(int flags,
double weight) |
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) |
void |
setReverseEdge(EdgeIteratorState reverseEdge) |
CHEdgeIteratorState |
setSkippedEdges(int edge1,
int edge2)
Sets the edges that this shortcut skips.
|
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) |
CHEdgeIteratorState |
setWeight(double weight)
Sets the weight calculated from Weighting.calcWeight, only applicable if isShortcut is true.
|
String |
toString() |
public int getOriginalEdgeKey()
public int getEdge()
getEdge in interface EdgeIteratorStatepublic int getBaseNode()
EdgeIteratorStategetBaseNode in interface EdgeIteratorStateEdgeIteratorpublic int getAdjNode()
getAdjNode in interface EdgeIteratorStateEdgeIteratorpublic PointList fetchWayGeometry(int mode)
EdgeIteratorStatefetchWayGeometry in interface EdgeIteratorStatemode - can be public EdgeIteratorState setWayGeometry(PointList list)
setWayGeometry in interface EdgeIteratorStatelist - is a sorted collection of nodes 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 EdgeIteratorStatepublic EdgeIteratorState setDistance(double dist)
setDistance in interface EdgeIteratorStatepublic IntsRef getFlags()
EdgeIteratorStategetFlags in interface EdgeIteratorStatepublic EdgeIteratorState setFlags(IntsRef flags)
EdgeIteratorStatesetFlags in interface EdgeIteratorStatepublic boolean get(BooleanEncodedValue property)
get in interface EdgeIteratorStatepublic EdgeIteratorState set(BooleanEncodedValue property, boolean value)
set in interface EdgeIteratorStatepublic boolean getReverse(BooleanEncodedValue property)
getReverse in interface EdgeIteratorStatepublic EdgeIteratorState setReverse(BooleanEncodedValue property, boolean value)
setReverse in interface EdgeIteratorStatepublic int get(IntEncodedValue property)
get in interface EdgeIteratorStatepublic EdgeIteratorState set(IntEncodedValue property, int value)
set in interface EdgeIteratorStatepublic int getReverse(IntEncodedValue property)
getReverse in interface EdgeIteratorStatepublic EdgeIteratorState setReverse(IntEncodedValue property, int value)
setReverse in interface EdgeIteratorStatepublic double get(DecimalEncodedValue property)
get in interface EdgeIteratorStatepublic EdgeIteratorState set(DecimalEncodedValue property, double value)
set in interface EdgeIteratorStatepublic double getReverse(DecimalEncodedValue property)
getReverse in interface EdgeIteratorStatepublic EdgeIteratorState setReverse(DecimalEncodedValue property, double value)
setReverse in interface EdgeIteratorStatepublic <T extends Enum> T get(EnumEncodedValue<T> property)
get in interface EdgeIteratorStatepublic <T extends Enum> EdgeIteratorState set(EnumEncodedValue<T> property, T value)
set in interface EdgeIteratorStatepublic <T extends Enum> T getReverse(EnumEncodedValue<T> property)
getReverse in interface EdgeIteratorStatepublic <T extends Enum> EdgeIteratorState setReverse(EnumEncodedValue<T> property, T value)
setReverse in interface EdgeIteratorStatepublic String getName()
getName in interface EdgeIteratorStatepublic EdgeIteratorState setName(String name)
setName in interface EdgeIteratorStatepublic void setUnfavored(boolean unfavored)
public boolean isShortcut()
isShortcut in interface CHEdgeIteratorStatepublic int getAdditionalField()
getAdditionalField in interface EdgeIteratorStatepublic int getMergeStatus(int flags)
CHEdgeIteratorStategetMergeStatus in interface CHEdgeIteratorStatePrepareEncoder.getScMergeStatus(int, int)public int getSkippedEdge1()
getSkippedEdge1 in interface CHEdgeIteratorStatepublic int getSkippedEdge2()
getSkippedEdge2 in interface CHEdgeIteratorStatepublic CHEdgeIteratorState setSkippedEdges(int edge1, int edge2)
CHEdgeIteratorStatesetSkippedEdges in interface CHEdgeIteratorStatepublic CHEdgeIteratorState setFirstAndLastOrigEdges(int firstOrigEdge, int lastOrigEdge)
CHEdgeIteratorStatex --> u --> v --> w --> y
setFirstAndLastOrigEdges in interface CHEdgeIteratorStatepublic int getOrigEdgeFirst()
getOrigEdgeFirst in interface EdgeIteratorStatepublic int getOrigEdgeLast()
getOrigEdgeLast in interface EdgeIteratorStateEdgeIteratorState.getOrigEdgeFirst()public EdgeIteratorState detach(boolean reverse)
EdgeIteratorStatedetach in interface EdgeIteratorStatereverse - 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 setAdditionalField(int value)
EdgeIteratorStatesetAdditionalField in interface EdgeIteratorStatepublic EdgeIteratorState copyPropertiesFrom(EdgeIteratorState fromEdge)
EdgeIteratorStatecopyPropertiesFrom in interface EdgeIteratorStatepublic CHEdgeIteratorState setWeight(double weight)
CHEdgeIteratorStatesetWeight in interface CHEdgeIteratorStatepublic void setFlagsAndWeight(int flags,
double weight)
setFlagsAndWeight in interface CHEdgeIteratorStatepublic double getWeight()
CHEdgeIteratorStategetWeight in interface CHEdgeIteratorStatepublic void setReverseEdge(EdgeIteratorState reverseEdge)
Copyright © 2012–2019. All rights reserved.