Package org.opentrafficsim.road.gtu.lane
Class AbstractLaneBasedIndividualGTU
java.lang.Object
org.djutils.event.EventProducer
org.opentrafficsim.core.gtu.AbstractGTU
org.opentrafficsim.road.gtu.lane.AbstractLaneBasedGTU2
org.opentrafficsim.road.gtu.lane.AbstractLaneBasedIndividualGTU
- All Implemented Interfaces:
java.io.Serializable,Locatable,EventProducerInterface,Identifiable,Drawable,GTU,LaneBasedGTU
- Direct Known Subclasses:
LaneBasedIndividualGTU
public abstract class AbstractLaneBasedIndividualGTU extends AbstractLaneBasedGTU2
Specific type of LaneBasedGTU. This class adds length, width, maximum speed and a reference to the simulator to the
AbstractLaneBasedGTU.
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: 1401 $, $LastChangedDate: 2015-09-14 01:33:02 +0200 (Mon, 14 Sep 2015) $, by $Author: averbraeck $,
initial version Jan 1, 2015
- Author:
- Alexander Verbraeck, Peter Knoppers
- See Also:
- Serialized Form
-
Field Summary
Fields inherited from class org.opentrafficsim.road.gtu.lane.AbstractLaneBasedGTU2
CACHED_POSITION, CACHING, eventMargin, initialLocationThresholdDifference, NON_CACHED_POSITIONFields inherited from class org.opentrafficsim.core.gtu.AbstractGTU
ALIGN_COUNT, ALIGNED, operationalPlanFields inherited from interface org.djutils.event.EventProducerInterface
FIRST_POSITION, LAST_POSITIONFields inherited from interface org.opentrafficsim.core.gtu.GTU
DESTROY_EVENT, INIT_EVENT, MOVE_EVENTFields inherited from interface org.opentrafficsim.road.gtu.lane.LaneBasedGTU
LANE_CHANGE_EVENT, LANE_ENTER_EVENT, LANE_EXIT_EVENT, LANEBASED_DESTROY_EVENT, LANEBASED_INIT_EVENT, LANEBASED_MOVE_EVENT, LINK_ENTER_EVENT, LINK_EXIT_EVENT -
Constructor Summary
Constructors Constructor Description AbstractLaneBasedIndividualGTU(java.lang.String id, GTUType gtuType, Length length, Length width, Speed maximumSpeed, OTSSimulatorInterface simulator, OTSRoadNetwork network)Construct a new AbstractLaneBasedIndividualGTU. -
Method Summary
Modifier and Type Method Description LengthgetLength()SpeedgetMaximumSpeed()LengthgetWidth()booleanlaneChangeAllowed()Returns whether a lane change is allowed.voidsetNoLaneChangeDistance(Length distance)Set distance over which the GTU should not change lane after being created.Methods inherited from class org.opentrafficsim.road.gtu.lane.AbstractLaneBasedGTU2
addTrigger, changeLaneInstantaneously, destroy, enterCrossSection, finalizeLaneChange, fractionalPosition, fractionalPosition, fractionalPositions, fractionalPositions, getBounds, getCarFollowingAcceleration, getDesiredSpeed, getDirection, getLateralPosition, getNetwork, getReferencePosition, getStrategicalPlanner, getStrategicalPlanner, getTurnIndicatorStatus, getTurnIndicatorStatus, getVehicleModel, init, initLaneChange, isInstantaneousLaneChange, leaveCrossSection, move, position, position, positions, positions, reinit, scheduleEnterEvent, scheduleLeaveEvent, scheduleTriggers, setFinalizeLaneChangeEvent, setInstantaneousLaneChange, setParent, setTurnIndicatorStatus, setVehicleModel, toStringMethods inherited from class org.opentrafficsim.core.gtu.AbstractGTU
addGtu, equals, getAcceleration, getAcceleration, getChildren, getErrorHandler, getGTUType, getId, getLocation, getMaximumAcceleration, getMaximumDeceleration, getNextMoveEvent, getOdometer, getOdometer, getOperationalPlan, getOperationalPlan, getParameters, getParent, getPerceivableContext, getReference, getSimulator, getSourceId, getSpeed, getSpeed, hashCode, init, interruptMove, isDestroyed, removeGtu, setErrorHandler, setMaximumAcceleration, setMaximumDeceleration, setParametersMethods inherited from class org.djutils.event.EventProducer
addListener, addListener, addListener, addListener, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, getEventTypesWithListeners, hasListeners, numberOfListeners, removeAllListeners, removeAllListeners, removeListenerMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.djutils.event.EventProducerInterface
addListener, addListener, addListener, addListener, getEventTypesWithListeners, getSourceId, hasListeners, numberOfListeners, removeListenerMethods inherited from interface org.opentrafficsim.core.gtu.GTU
addGtu, getAcceleration, getAcceleration, getCenter, getChildren, getContourPoints, getFront, getGTUType, getId, getMaximumAcceleration, getMaximumDeceleration, getOdometer, getOdometer, getOperationalPlan, getOperationalPlan, getParameters, getParent, getPerceivableContext, getRear, getReference, getRelativePositions, getSimulator, getSpeed, getSpeed, isDestroyed, removeGtu, setErrorHandler, setParametersMethods inherited from interface org.opentrafficsim.road.gtu.lane.LaneBasedGTU
getLocation, getProjectedLength, getTacticalPlanner, getTacticalPlanner, isBrakingLightsOn, isBrakingLightsOn
-
Constructor Details
-
AbstractLaneBasedIndividualGTU
public AbstractLaneBasedIndividualGTU(java.lang.String id, GTUType gtuType, Length length, Length width, Speed maximumSpeed, OTSSimulatorInterface simulator, OTSRoadNetwork network) throws GTUExceptionConstruct a new AbstractLaneBasedIndividualGTU.- Parameters:
id- String; the id of the GTUgtuType- GTUType; the type of GTU, e.g. TruckType, CarType, BusTypelength- Length; the maximum length of the GTU (parallel with driving direction)width- Length; the maximum width of the GTU (perpendicular to driving direction)maximumSpeed- Speed; the maximum speed of the GTU (in the driving direction)simulator- OTSSimulatorInterface; the simulatornetwork- OTSRoadNetwork; the network that the GTU is initially registered in- Throws:
GTUException- when a parameter is invalid
-
-
Method Details
-
getLength
-
getWidth
-
getMaximumSpeed
-
setNoLaneChangeDistance
Set distance over which the GTU should not change lane after being created.- Parameters:
distance- Length; distance over which the GTU should not change lane after being created
-
laneChangeAllowed
public final boolean laneChangeAllowed()Returns whether a lane change is allowed.- Returns:
- whether a lane change is allowed
-