Class LaneChange.LaneChangePath.InterpolatedLaneChangePath
- java.lang.Object
-
- org.opentrafficsim.road.gtu.lane.plan.operational.LaneChange.LaneChangePath.InterpolatedLaneChangePath
-
- All Implemented Interfaces:
LaneChange.LaneChangePath
- Enclosing interface:
- LaneChange.LaneChangePath
public abstract static class LaneChange.LaneChangePath.InterpolatedLaneChangePath extends Object implements LaneChange.LaneChangePath
Helper class for interpolation between the from and to center lines.Copyright (c) 2013-2020 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
BSD-style license. See OpenTrafficSim License.- Version:
- $Revision$, $LastChangedDate$, by $Author$, initial version May 3, 2019
- Author:
- Alexander Verbraeck, Peter Knoppers, Wouter Schakel
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.opentrafficsim.road.gtu.lane.plan.operational.LaneChange.LaneChangePath
LaneChange.LaneChangePath.InterpolatedLaneChangePath, LaneChange.LaneChangePath.SequentialLaneChangePath
-
-
Field Summary
-
Fields inherited from interface org.opentrafficsim.road.gtu.lane.plan.operational.LaneChange.LaneChangePath
BEZIER, LINEAR, POLY3, SINE, SINE_INTERP
-
-
Constructor Summary
Constructors Constructor Description InterpolatedLaneChangePath()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description OTSLine3D
getPath(Duration timeStep, Length planDistance, Speed meanSpeed, DirectedLanePosition from, DirectedPoint startPosition, LateralDirectionality laneChangeDirection, OTSLine3D fromLine, OTSLine3D toLine, Duration laneChangeDuration, double lcFraction)
Returns a (partial) path for a lane change.
-
-
-
Method Detail
-
getPath
public OTSLine3D getPath(Duration timeStep, Length planDistance, Speed meanSpeed, DirectedLanePosition from, DirectedPoint startPosition, LateralDirectionality laneChangeDirection, OTSLine3D fromLine, OTSLine3D toLine, Duration laneChangeDuration, double lcFraction) throws OTSGeometryException
Returns a (partial) path for a lane change. The method is called both at the start and during a lane change, and should return a valid path. This path should at least have a length ofplanDistance
, unless the lane change will be finished during the coming time step. In that case, the caller of this method is to lengthen the path along the center line of the target lane.- Specified by:
getPath
in interfaceLaneChange.LaneChangePath
- Parameters:
timeStep
- Duration; time stepplanDistance
- Length; distance covered during the operational planmeanSpeed
- Speed; mean speed during time stepfrom
- DirectedLanePosition; current position on the from-lanesstartPosition
- DirectedPoint; current 2D positionlaneChangeDirection
- LateralDirectionality; lane change directionfromLine
- OTSLine3D; from linetoLine
- OTSLine3D; to linelaneChangeDuration
- Duration; current considered duration of the entire lane changelcFraction
- double; fraction of lane change done so far- Returns:
- OTSLine3D a (partial) path for a lane change
- Throws:
OTSGeometryException
- on wrong fractional position
-
-