com.azalient.api.b.parameters
Interface IType

All Superinterfaces:
IActionable, IAssociate, IDescribed, IDraggable, IPastable, IRecord, RecordR, RecordRW, RecordW, SortableData, StoreRecordRW
All Known Subinterfaces:
IMotorType, IPersonType, ITransportType, IVehicleType

public interface IType
extends IDescribed, StoreRecordRW, IPastable

The base agent type


Field Summary
static IType[] ZERO
          A static zero-length array, created for convenience, and to save memory
 
Fields inherited from interface com.azalient.api.ui.clipboard.IAssociate
scratch
 
Fields inherited from interface com.azalient.api.a.tables.IRecord
DELETED, KEY_SEP, KEY_SEP_CHAR
 
Method Summary
 IType attachedType()
          Returns the type of agent attached directly to this one.
 void attachedType(IType type)
          Sets the type of agent attached directly to this one.
 IAngle attachmentAngle()
          Returns the angle at which any attachment is attached.
 void attachmentAngle(IAngle a)
          Sets the angle at which any attachment is attached.
 int attachmentCount()
          Returns the number of attachments to this type.
 double attachmentDistance()
          Returns the distance (metres) at which any attachment is attached
 void attachmentDistance(double d)
          Sets the distance (metres) at which any attachment is attached
 IBehaviour behaviour()
          The behaviour for agents of this type
 NamedColour colour()
          The colour of the type
 double height()
          Dimension: height
 int index()
          A unique numeric index for the type
 boolean isAttached()
          Returns true if this agent is attached to another.
 int keepSide()
          Keep to one side of pathway: -1 == left, +1 = right, 0 == no preference.
 double length()
          Dimension: length
 double maxAcceleration(double speed, double gradient)
          Maximum acceleration in m/s/s at given speed in m/s, fractional gradient.
 double maxDeceleration(double speed, double gradient)
          (POSITIVE VALUE) Maximum deceleration in m/s/s at given speed in m/s.
 TripMode mode()
          The trip mode for agents of this type (PEOPLE, VEHICLE, TRANSPORT)
 String name()
          The name of the type (based on the index), which is unique amongst all types
 int rgb()
          The colour of the type, as RGB integer
 IShapeGroup shapeGroup()
          Returns the shape group for this type, used to select a shape for detailed rendering
 double sizeVariation()
          Specification of one standard deviation of length, width, height, weight and space, expressed as a proportion of the mean value.
 double space()
          the distance allowed beyond the physical length and width of the agent; for persons the preferred "personal space"
 IUnitShape unitShape()
          Returns the unit shape object for this type, used to draw solid and outline rendering
 boolean used()
          A type may be defined in a network, but never used.
 double weightKG()
          Dimension: weight
 double width()
          Dimension: width
 
Methods inherited from interface com.azalient.api.a.tables.IDescribed
description
 
Methods inherited from interface com.azalient.api.ui.clipboard.IPastable
finish, pickables
 
Methods inherited from interface com.azalient.api.ui.clipboard.IAssociate
clip, proxy, selected
 
Methods inherited from interface com.azalient.api.ui.clipboard.IDraggable
selected, selectedForDraggingDraw
 
Methods inherited from interface com.azalient.api.ui.clipboard.IActionable
action
 
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.file.RecordW
extraCols, extraGet, extraGetB, extraGetD, extraGetI, extraGetS, extraGetT, get, isVolatile
 

Field Detail

ZERO

static final IType[] ZERO
A static zero-length array, created for convenience, and to save memory

Method Detail

index

int index()
A unique numeric index for the type


name

String name()
The name of the type (based on the index), which is unique amongst all types

Specified by:
name in interface IAssociate
Specified by:
name in interface IRecord

used

boolean used()
A type may be defined in a network, but never used. This information can be used a performance enhancement when iterating over all types


width

double width()
Dimension: width


length

double length()
Dimension: length


height

double height()
Dimension: height


weightKG

double weightKG()
Dimension: weight


sizeVariation

double sizeVariation()
Specification of one standard deviation of length, width, height, weight and space, expressed as a proportion of the mean value. For example, if mean height is 2.0 m, and size variation is 0.1 (10%), then the standard deviation of the height is 0.2 m


keepSide

int keepSide()
Keep to one side of pathway: -1 == left, +1 = right, 0 == no preference. Used in the absence of other agents, when pathway is wide enough


space

double space()
the distance allowed beyond the physical length and width of the agent; for persons the preferred "personal space"


colour

NamedColour colour()
The colour of the type


rgb

int rgb()
The colour of the type, as RGB integer


maxAcceleration

double maxAcceleration(double speed,
                       double gradient)
Maximum acceleration in m/s/s at given speed in m/s, fractional gradient.


maxDeceleration

double maxDeceleration(double speed,
                       double gradient)
(POSITIVE VALUE) Maximum deceleration in m/s/s at given speed in m/s. fractional gradient


unitShape

IUnitShape unitShape()
Returns the unit shape object for this type, used to draw solid and outline rendering


shapeGroup

IShapeGroup shapeGroup()
Returns the shape group for this type, used to select a shape for detailed rendering


mode

TripMode mode()
The trip mode for agents of this type (PEOPLE, VEHICLE, TRANSPORT)


behaviour

IBehaviour behaviour()
The behaviour for agents of this type


isAttached

boolean isAttached()
Returns true if this agent is attached to another. It is the trailing, controlled agents that have this set to true


attachmentCount

int attachmentCount()
Returns the number of attachments to this type. A non-zero number does not mean this is the prime mover.


attachedType

IType attachedType()
Returns the type of agent attached directly to this one. IN larger groups, another type may be attached to the attachment, ans so on


attachmentAngle

IAngle attachmentAngle()
Returns the angle at which any attachment is attached. 0 is directly ahead, 90 is to the right, 180 is directly behind, 270 is to the left


attachmentDistance

double attachmentDistance()
Returns the distance (metres) at which any attachment is attached


attachedType

void attachedType(IType type)
Sets the type of agent attached directly to this one. In larger groups, another type may be attached to the attachment, ans so on


attachmentAngle

void attachmentAngle(IAngle a)
Sets the angle at which any attachment is attached. 0 is directly ahead, 90 is to the right, 180 is directly behind, 270 is to the left


attachmentDistance

void attachmentDistance(double d)
Sets the distance (metres) at which any attachment is attached