public class InfrastructureLaneChangeInfo extends Object implements Comparable<InfrastructureLaneChangeInfo>, Serializable
 Copyright (c) 2013-2019 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved. 
 BSD-style license. See OpenTrafficSim License.
 
| Modifier | Constructor and Description | 
|---|---|
protected  | 
InfrastructureLaneChangeInfo(int requiredNumberOfLaneChanges,
                            boolean deadEnd)
Constructor for subclasses. 
 | 
  | 
InfrastructureLaneChangeInfo(int requiredNumberOfLaneChanges,
                            LaneStructureRecord record,
                            RelativePosition relativePosition,
                            boolean deadEnd,
                            LateralDirectionality lat)
Constructor. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
int | 
compareTo(InfrastructureLaneChangeInfo infrastructureLaneChangeInfo) | 
static InfrastructureLaneChangeInfo | 
fromInaccessibleLane(boolean deadEnd)
Returns an instance for the case the entire lane is inaccessible. 
 | 
LateralDirectionality | 
getLateralDirectionality()
Returns the lateral directionality of the required lane changes. 
 | 
Length | 
getRemainingDistance()  | 
int | 
getRequiredNumberOfLaneChanges()  | 
boolean | 
isDeadEnd()  | 
InfrastructureLaneChangeInfo | 
left(LaneStructureRecord rec,
    RelativePosition rel,
    boolean dead)
Returns lane change info for one lane towards the left. 
 | 
InfrastructureLaneChangeInfo | 
right(LaneStructureRecord rec,
     RelativePosition rel,
     boolean dead)
Returns lane change info for one lane towards the right. 
 | 
void | 
setDeadEnd(boolean deadEnd)
Sets whether this reason to change lane is due to a dead-end. 
 | 
String | 
toString() | 
protected InfrastructureLaneChangeInfo(int requiredNumberOfLaneChanges,
                                       boolean deadEnd)
requiredNumberOfLaneChanges - int; required number of lane changesdeadEnd - boolean; whether the need to change lane comes from a dead-endpublic InfrastructureLaneChangeInfo(int requiredNumberOfLaneChanges,
                                    LaneStructureRecord record,
                                    RelativePosition relativePosition,
                                    boolean deadEnd,
                                    LateralDirectionality lat)
requiredNumberOfLaneChanges - int; required number of lane changesrecord - LaneStructureRecord; record who's end defines the remaining distancerelativePosition - RelativePosition; critical relative position (i.e. nose when driving forward)deadEnd - boolean; whether the need to change lane comes from a dead-endlat - LateralDirectionality; lateral directionality of required lane changesIllegalArgumentException - if required number of lane changes or remaining distance is negativeNullPointerException - if remaining distance is nullpublic final int getRequiredNumberOfLaneChanges()
public Length getRemainingDistance()
public final boolean isDeadEnd()
public final void setDeadEnd(boolean deadEnd)
deadEnd - boolean; whether the need to change lane comes from a dead-endpublic final LateralDirectionality getLateralDirectionality()
public final int compareTo(InfrastructureLaneChangeInfo infrastructureLaneChangeInfo)
compareTo in interface Comparable<InfrastructureLaneChangeInfo>public final InfrastructureLaneChangeInfo left(LaneStructureRecord rec, RelativePosition rel, boolean dead)
rec - LaneStructureRecord; record who's end defines the remaining distancerel - RelativePosition; critical relative position (i.e. nose when driving forward)dead - boolean; whether the need to change lane comes from a dead-endpublic final InfrastructureLaneChangeInfo right(LaneStructureRecord rec, RelativePosition rel, boolean dead)
rec - LaneStructureRecord; record who's end defines the remaining distancerel - RelativePosition; critical relative position (i.e. nose when driving forward)dead - boolean; whether the need to change lane comes from a dead-endpublic static InfrastructureLaneChangeInfo fromInaccessibleLane(boolean deadEnd)
deadEnd - boolean; dead endCopyright © 2014–2019 Delft University of Technology. All rights reserved.