com.azalient.api.sim.agents
Interface IVehicle

All Superinterfaces:
IAgent, IBlocker, IChangingDrawable, IDrawable, ILoopOccupier, IMotor, IObstacle, IRecord, IRouteFinder, IUserData, RecordR, RecordRW, RecordW, SortableData, StoreRecordRW

public interface IVehicle
extends IMotor

A private vehicle, used for self-driving and parking, drop-off and pick-up trips, and for taxi trips


Field Summary
 
Fields inherited from interface com.azalient.api.sim.agents.IMotor
ZERO
 
Fields inherited from interface com.azalient.api.sim.agents.IObstacle
ZERO_OBSTACLES
 
Fields inherited from interface com.azalient.api.a.tables.IRecord
DELETED, KEY_SEP, KEY_SEP_CHAR
 
Method Summary
 boolean isEmergency()
          Returns true if this is an emergency vehicle.
 boolean isParking()
          Returns true if this vehicle is parking (and has an IParkingVehicle object defined)
 boolean isTaxi()
          Returns true if this is a taxi
 void newDestination(IZone zone)
          Set a new destination for this vehicle - this is called when a person gets into a vehicle and it is reassigned to drive to a new parking zone or drop-off zone
 IOccupant occupant()
          Returns the occupant object for this vehicle, or null if it is unoccupied
 IParkingVehicle parkingVehicle()
          Returns a parking vehicle object if this vehicle is in the process of parking, or un-parking
 IVehicleTrip trip()
          [Return type specialisation] Returns the vehicle trip
 IVehicleType type()
          [Return type specialisation] Returns the type of the vehicle
 
Methods inherited from interface com.azalient.api.sim.agents.IMotor
allowStandingLaneChange, changeLane, colour, destinationIndex, exitChoice, exitLaneIndex, exitLaneIndex, extraPeople, followingModel, headFromPathStart, headToPathEnd, intersectionExit, isCycle, isTransport, kill, lane, laneHigh, laneHigh, laneIndex, laneK, laneLow, laneLow, laneLowHigh, laneM, laneOrderIndex, leaderMotor, link, nextLink, nextSurface, occupy, originIndex, people, reselectExit, routeExists, speed, startTime, stopped, stopped, stops, stream, streamOrderIndex, surface, type, unoccupy, uturn
 
Methods inherited from interface com.azalient.api.sim.agents.IAgent
acceleration, age, age, agentVision, arrived, attached, basePolygon, behaviour, blockedBy, blocker, centre, creationTime, emissionGrams, exclude, finished, followingAlgorithm, forward, freeMovingAlgorithm, frozen, gradient, halfLength, halfLengthHead, halfLengthTail, halfWidth, halted, halted, head, headDistance, headGroup, height, include, isAttached, keepSide, keepSide, leader, length, maxAcceleration, maxDeceleration, maxSpeedMPS, minimumGap, next, nextPathway, nextPathwayForward, pathPosition, pathway, pathwayFarthest, pathwayForward, perceivedHalfLengthHead, perceivedHalfWidth, reactionTime, selected, selected, specialMaxSpeed, speedMPS, steerFunction, steerToPathNow, stoppingDistance, tail, tailDistance, tailGroup, targetSpeedMPS, timeOnPathway, totalDistanceTravelled, totalTravelDistanceMetres, totalTravelStopsCount, totalTravelTimeSeconds, trackingMe, tripDetailRecord, twig, unblock, uniqueID, velocity, weightKG, width, zombie
 
Methods inherited from interface com.azalient.api.sim.detection.ILoopOccupier
loops
 
Methods inherited from interface com.azalient.api.sim.agents.IObstacle
annotationPoint
 
Methods inherited from interface com.azalient.api.a.IUserData
userData, userData, userDataHashCode
 
Methods inherited from interface com.azalient.api.file.StoreRecordRW
canRename, rename, store
 
Methods inherited from interface com.azalient.api.file.RecordR
extraSet, finished, isApplicable, isEditable, set
 
Methods inherited from interface com.azalient.api.a.tables.IRecord
name
 
Methods inherited from interface com.azalient.api.file.RecordW
extraCols, extraGet, extraGetB, extraGetD, extraGetI, extraGetS, extraGetT, get, isVolatile
 
Methods inherited from interface com.azalient.api.sim.agents.IBlocker
blocked, blockerDescription, blockPointDistance, doneBlocking, nowBlocking
 
Methods inherited from interface com.azalient.api.draw.IChangingDrawable
drawChangeables
 
Methods inherited from interface com.azalient.api.draw.IDrawable
canExplode, centroid, destroy, draw, isTransparent, name, remove, removed
 
Methods inherited from interface com.azalient.api.sim.agents.IRouteFinder
arrivesHere, routeExitIndex
 

Method Detail

type

IVehicleType type()
[Return type specialisation] Returns the type of the vehicle

Specified by:
type in interface IAgent
Specified by:
type in interface IMotor

trip

IVehicleTrip trip()
[Return type specialisation] Returns the vehicle trip

Specified by:
trip in interface IAgent

newDestination

void newDestination(IZone zone)
Set a new destination for this vehicle - this is called when a person gets into a vehicle and it is reassigned to drive to a new parking zone or drop-off zone


isEmergency

boolean isEmergency()
Returns true if this is an emergency vehicle. Emergency vehicles, such as ambulances, cause other vehicles to change lane out of the lane they are in, to give them a clear path


isTaxi

boolean isTaxi()
Returns true if this is a taxi


isParking

boolean isParking()
Returns true if this vehicle is parking (and has an IParkingVehicle object defined)


parkingVehicle

IParkingVehicle parkingVehicle()
Returns a parking vehicle object if this vehicle is in the process of parking, or un-parking


occupant

IOccupant occupant()
Returns the occupant object for this vehicle, or null if it is unoccupied