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(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) |
int |
getAdjNode() |
int |
getBaseNode()
Returns the node used to instantiate the EdgeIterator.
|
boolean |
getBwdAccess() |
double |
getDistance() |
int |
getEdge() |
IntsRef |
getFlags()
Returns edge properties stored in direction of the raw database layout.
|
boolean |
getFwdAccess() |
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 |
setDistance(double dist) |
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 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 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 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 <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 String getName()
getName
in interface EdgeIteratorState
public EdgeIteratorState setName(String name)
setName
in interface EdgeIteratorState
public void setUnfavored(boolean unfavored)
public boolean isShortcut()
isShortcut
in interface CHEdgeIteratorState
public boolean getFwdAccess()
getFwdAccess
in interface CHEdgeIteratorState
CHEdgeIteratorState.isShortcut()
is falsepublic boolean getBwdAccess()
getBwdAccess
in interface CHEdgeIteratorState
CHEdgeIteratorState.getFwdAccess()
public int getMergeStatus(int flags)
CHEdgeIteratorState
getMergeStatus
in interface CHEdgeIteratorState
PrepareEncoder.getScMergeStatus(int, int)
public int getSkippedEdge1()
getSkippedEdge1
in interface CHEdgeIteratorState
public int getSkippedEdge2()
getSkippedEdge2
in interface CHEdgeIteratorState
public CHEdgeIteratorState setSkippedEdges(int edge1, int edge2)
CHEdgeIteratorState
setSkippedEdges
in interface CHEdgeIteratorState
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 CHEdgeIteratorState setWeight(double weight)
CHEdgeIteratorState
setWeight
in interface CHEdgeIteratorState
public void setFlagsAndWeight(int flags, double weight)
setFlagsAndWeight
in interface CHEdgeIteratorState
public double getWeight()
CHEdgeIteratorState
getWeight
in interface CHEdgeIteratorState
public void setReverseEdge(EdgeIteratorState reverseEdge)
Copyright © 2012–2020. All rights reserved.