public class LaneBasedIndividualCar extends AbstractLaneBasedIndividualGTU
Copyright (c) 2013-2015 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
BSD-style license. See OpenTrafficSim License.
Modifier and Type | Class and Description |
---|---|
static class |
LaneBasedIndividualCar.LaneBasedIndividualCarBuilder
Build an individual car and use easy setter methods to instantiate the car.
|
Constructor and Description |
---|
LaneBasedIndividualCar(String id,
GTUType gtuType,
GTUFollowingModel gtuFollowingModel,
LaneChangeModel laneChangeModel,
Map<Lane,org.djunits.value.vdouble.scalar.DoubleScalar.Rel<org.djunits.unit.LengthUnit>> initialLongitudinalPositions,
org.djunits.value.vdouble.scalar.DoubleScalar.Abs<org.djunits.unit.SpeedUnit> initialSpeed,
org.djunits.value.vdouble.scalar.DoubleScalar.Rel<org.djunits.unit.LengthUnit> length,
org.djunits.value.vdouble.scalar.DoubleScalar.Rel<org.djunits.unit.LengthUnit> width,
org.djunits.value.vdouble.scalar.DoubleScalar.Abs<org.djunits.unit.SpeedUnit> maximumVelocity,
LaneBasedRouteNavigator routeNavigator,
OTSDEVSSimulatorInterface simulator) |
LaneBasedIndividualCar(String id,
GTUType gtuType,
GTUFollowingModel gtuFollowingModel,
LaneChangeModel laneChangeModel,
Map<Lane,org.djunits.value.vdouble.scalar.DoubleScalar.Rel<org.djunits.unit.LengthUnit>> initialLongitudinalPositions,
org.djunits.value.vdouble.scalar.DoubleScalar.Abs<org.djunits.unit.SpeedUnit> initialSpeed,
org.djunits.value.vdouble.scalar.DoubleScalar.Rel<org.djunits.unit.LengthUnit> length,
org.djunits.value.vdouble.scalar.DoubleScalar.Rel<org.djunits.unit.LengthUnit> width,
org.djunits.value.vdouble.scalar.DoubleScalar.Abs<org.djunits.unit.SpeedUnit> maximumVelocity,
LaneBasedRouteNavigator routeNavigator,
OTSDEVSSimulatorInterface simulator,
Class<? extends nl.tudelft.simulation.dsol.animation.D2.Renderable2D> animationClass,
GTUColorer gtuColorer)
Construct a new LaneBasedIndividualCar.
|
Modifier and Type | Method and Description |
---|---|
void |
destroy()
destroy the vehicle from the simulation and animation.
|
RelativePosition |
getFront() |
RelativePosition |
getRear() |
Map<RelativePosition.TYPE,RelativePosition> |
getRelativePositions() |
String |
toString() |
getLength, getMaximumVelocity, getSimulator, getWidth
bestAccessibleAdjacentLane, deltaTimeForDistance, enterLane, fractionalPosition, fractionalPosition, fractionalPositions, fractionalPositions, getAcceleration, getAcceleration, getBounds, getGTUFollowingModel, getLaneChangeDistanceAndDirection, getLanes, getLastEvaluationTime, getLateralVelocity, getLocation, getLongitudinalVelocity, getLongitudinalVelocity, getNextEvaluationTime, getOdometer, getVelocity, headway, headway, leaveLane, leaveLane, move, parallel, parallel, position, position, positions, positions, projectedPosition, timeAtDistance, toString
getGTUType, getId, getReference, getRouteNavigator, setRouteNavigator
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getGTUType, getId, getReference
public LaneBasedIndividualCar(String id, GTUType gtuType, GTUFollowingModel gtuFollowingModel, LaneChangeModel laneChangeModel, Map<Lane,org.djunits.value.vdouble.scalar.DoubleScalar.Rel<org.djunits.unit.LengthUnit>> initialLongitudinalPositions, org.djunits.value.vdouble.scalar.DoubleScalar.Abs<org.djunits.unit.SpeedUnit> initialSpeed, org.djunits.value.vdouble.scalar.DoubleScalar.Rel<org.djunits.unit.LengthUnit> length, org.djunits.value.vdouble.scalar.DoubleScalar.Rel<org.djunits.unit.LengthUnit> width, org.djunits.value.vdouble.scalar.DoubleScalar.Abs<org.djunits.unit.SpeedUnit> maximumVelocity, LaneBasedRouteNavigator routeNavigator, OTSDEVSSimulatorInterface simulator) throws NamingException, RemoteException, NetworkException, nl.tudelft.simulation.dsol.SimRuntimeException, GTUException
id
- ID; the id of the GTUgtuType
- GTUType; the type of GTU, e.g. TruckType, CarType, BusTypegtuFollowingModel
- GTUFollowingModel; the following model, including a reference to the simulatorlaneChangeModel
- LaneChangeModel; the lane change modelinitialLongitudinalPositions
- Map<Lane, DoubleScalar.Rel<LengthUnit>>; the initial positions of the car
on one or more lanesinitialSpeed
- DoubleScalar.Abs<SpeedUnit>; the initial speed of the car on the lanelength
- DoubleScalar.Rel<LengthUnit>; the maximum length of the GTU (parallel with driving direction)width
- DoubleScalar.Rel<LengthUnit>; the maximum width of the GTU (perpendicular to driving direction)maximumVelocity
- DoubleScalar.Abs<SpeedUnit>;the maximum speed of the GTU (in the driving direction)routeNavigator
- Route; the route that the GTU will followsimulator
- OTSDEVSSimulatorInterface; the simulatorNamingException
- if an error occurs when adding the animation handlerRemoteException
- when the simulator cannot be reachedNetworkException
- when the GTU cannot be placed on the given lanenl.tudelft.simulation.dsol.SimRuntimeException
- when the move method cannot be scheduledGTUException
- when a parameter is invalidpublic LaneBasedIndividualCar(String id, GTUType gtuType, GTUFollowingModel gtuFollowingModel, LaneChangeModel laneChangeModel, Map<Lane,org.djunits.value.vdouble.scalar.DoubleScalar.Rel<org.djunits.unit.LengthUnit>> initialLongitudinalPositions, org.djunits.value.vdouble.scalar.DoubleScalar.Abs<org.djunits.unit.SpeedUnit> initialSpeed, org.djunits.value.vdouble.scalar.DoubleScalar.Rel<org.djunits.unit.LengthUnit> length, org.djunits.value.vdouble.scalar.DoubleScalar.Rel<org.djunits.unit.LengthUnit> width, org.djunits.value.vdouble.scalar.DoubleScalar.Abs<org.djunits.unit.SpeedUnit> maximumVelocity, LaneBasedRouteNavigator routeNavigator, OTSDEVSSimulatorInterface simulator, Class<? extends nl.tudelft.simulation.dsol.animation.D2.Renderable2D> animationClass, GTUColorer gtuColorer) throws NamingException, RemoteException, NetworkException, nl.tudelft.simulation.dsol.SimRuntimeException, GTUException
id
- ID; the id of the GTUgtuType
- GTUTYpe; the type of GTU, e.g. TruckType, CarType, BusTypegtuFollowingModel
- GTUFollowingModel; the following model, including a reference to the simulatorlaneChangeModel
- LaneChangeModel; the lane change modelinitialLongitudinalPositions
- Map<Lane, DoubleScalar.Rel<LengthUnit>>; the initial positions of the car
on one or more lanesinitialSpeed
- DoubleScalar.Abs<SpeedUnit>; the initial speed of the car on the lanelength
- DoubleScalar.Rel<LengthUnit>; the maximum length of the GTU (parallel with driving direction)width
- DoubleScalar.Rel<LengthUnit>; the maximum width of the GTU (perpendicular to driving direction)maximumVelocity
- DoubleScalar.Abs<SpeedUnit>;the maximum speed of the GTU (in the driving direction)routeNavigator
- Route the route that the GTU will followsimulator
- OTSDEVSSimulatorInterface; the simulatoranimationClass
- Class<? extends Renderable2D>; the class for animation or null if no animationgtuColorer
- GTUColorer; the GTUColorer that will be linked from the animation to determine the color (may be null
in which case a default will be used)NamingException
- if an error occurs when adding the animation handlerRemoteException
- when the simulator cannot be reachedNetworkException
- when the GTU cannot be placed on the given lanenl.tudelft.simulation.dsol.SimRuntimeException
- when the move method cannot be scheduledGTUException
- when a parameter is invalidpublic RelativePosition getFront()
public RelativePosition getRear()
public final Map<RelativePosition.TYPE,RelativePosition> getRelativePositions()
public final void destroy()
destroy
in interface GTU
destroy
in class AbstractLaneBasedGTU
Copyright © 2014–2015 Delft University of Technology. All rights reserved.