public class RoadCrossingInstruction extends Instruction<RoadCrossingInstruction>
For the simple case just switching the side of a road see
RoadInstruction.SubType.SWITCH_SIDE_OF_ROAD.
This instruction deliberately has no continue-part as it only covers a more
or less complex crossing and should directly be followed by a
RoadInstruction which then explains where to turn / continue after
the crossing.
Examples:
In its minimal form it consists of a position and a turn direction.
Exemplary EBNF of how this instruction can be transformed into human-readable text and what's mandatory / optional. Elements ending with STRING are terminal (not defined any further).
ROAD_CROSSING_INSTRUCTION = [LANDMARK_PART], DIRECTION, "over the", [ROAD_CROSSING];
LANDMARK_PART = PREPOSITION, "the", LANDMARK_STRING;
PREPOSITION = "before" | "at" | "after";
DIRECTION = STRAIGHT | ("turn", TURN_DIRECTION);
STRAIGHT = "go straight";
TURN_DIRECTION = ["slight"], ("left" | "right");
ROAD_CROSSING = "crossing" | "zebra crossing" | "traffic light";
| Constructor and Description |
|---|
RoadCrossingInstruction() |
| Modifier and Type | Method and Description |
|---|---|
static RoadCrossingInstruction |
createMinimal(GeoJSONCoordinate position,
Constants.TurnDirection turnDirection) |
boolean |
equals(Object obj) |
Optional<Landmark> |
getLandmark() |
Optional<Constants.RoadCrossing> |
getRoadCrossing() |
Constants.TurnDirection |
getTurnDirection() |
int |
hashCode() |
RoadCrossingInstruction |
setLandmark(Landmark landmark) |
RoadCrossingInstruction |
setRoadCrossing(Constants.RoadCrossing roadCrossing) |
RoadCrossingInstruction |
setTurnDirection(Constants.TurnDirection turnDirection) |
String |
toString() |
void |
validate()
Checks if the instance is in a valid / useful state.
|
getAdditionalInfo, getConfirmationTriggerPosition, getPosition, getPreviewTriggerPosition, getText, setAdditionalInfo, setConfirmationTriggerPosition, setConfirmationTriggerPosition, setPosition, setPosition, setPreviewTriggerPosition, setPreviewTriggerPosition, setTextpublic Constants.TurnDirection getTurnDirection()
public Optional<Constants.RoadCrossing> getRoadCrossing()
public RoadCrossingInstruction setTurnDirection(Constants.TurnDirection turnDirection)
public RoadCrossingInstruction setLandmark(Landmark landmark)
public RoadCrossingInstruction setRoadCrossing(Constants.RoadCrossing roadCrossing)
public static RoadCrossingInstruction createMinimal(GeoJSONCoordinate position, Constants.TurnDirection turnDirection)
public void validate()
ValidatableIllegalArgumentException including a description of the
invalid state is thrown.validate in interface Validatablevalidate in class Instruction<RoadCrossingInstruction>public int hashCode()
hashCode in class Instruction<RoadCrossingInstruction>public boolean equals(Object obj)
equals in class Instruction<RoadCrossingInstruction>public String toString()
toString in class Instruction<RoadCrossingInstruction>Copyright © 2018. All rights reserved.