Package com.anylogic.engine.markup
- Field Summary
- Constructor Summary
- Method Summary
- Methods inherited from class com.anylogic.engine.markup.NetworkMarkupElement
- Methods inherited from class com.anylogic.engine.markup.MarkupShape
- Methods inherited from class com.anylogic.engine.markup.AbstractMarkup
- Methods inherited from class java.lang.Object
- Methods inherited from interface com.anylogic.engine.markup.AggregatableAnimationElement
- Methods inherited from interface com.anylogic.engine.markup.HasLevel
- Methods inherited from interface com.anylogic.engine.markup.INetworkMarkupElement
- Methods inherited from interface com.anylogic.engine.markup.LevelElement
- Field Details
- Constructor Details
- Method Details
- isObstacle
- setObstacle
- postInitialize
- setType
- getType
- numberOfRows
- setNumberOfPositions
- numberOfPositions
- setNumberOfLevels
- numberOfLevels
- numberOfDeepPositions
- setNumberOfDeepPositions
- setCellWidth
- getCellWidth
- getX
- setX
- getY
- setY
- getZ
- setZ
- getLength
- setLength
- getDepth
- setDepth
- getDepthRight
- setDepthRight
- getAisleDepth
- setAisleDepth
- getAisleRightDepth
- setAisleRightDepth
- getRotation
- setRotation
- getLevelHeight
- setLevelHeight
- capacity
- randomPointInside
- getNearestPoint
- getNearestPoint
- getPositionAtCell
- getPositionAtCellEntry
- getPositionInAisle
- setLineColor
- getLineColor
- setFillColor
- setFillColor
- getFillColor
- contains
- setConnectedSystem_xjal
- size
- hasSpace
- contains
- reserved
- get
- getByIndex
- randomEntity
- randomAgent
- isFree
- nFree
- getCellOf
- getApproachDirection
- getFreeCell
- put
- removeFromCell
- removeFromCell
- remove
- reserve
- release
- nReserved
- resetStats
- updateSVGProperties
- resetSVGState
- findSVGElement
- getBoundingRectangle
- updateColorMap
- java.lang.Object
- com.anylogic.engine.markup.AbstractMarkup
- com.anylogic.engine.markup.MarkupShape
- com.anylogic.engine.markup.NetworkMarkupElement
- com.anylogic.engine.markup.PalletRack
- All Implemented Interfaces:
AggregatableAnimationElement
,HasLevel
,INetworkMarkupElement
,LevelElement
,LevelMarkup
,PalletRackAccess<Agent>
,SVGElement
,Serializable
public class PalletRack extends NetworkMarkupElement implements PalletRackAccess<Agent>, LevelMarkup
- See Also:
- Serialized Form
Modifier and Type | Field | Description |
---|---|---|
static final PalletRackDirection | PALLET_RACK_LEFT_TO_RIGHT | |
static final PalletRackDirection | PALLET_RACK_NO_DIRECTION | |
static final PalletRackDirection | PALLET_RACK_RIGHT_TO_LEFT | |
static final PalletRackType | PALLET_RACK_SINGLE_AISLE_LEFT | |
static final PalletRackType | PALLET_RACK_SINGLE_AISLE_RIGHT | |
static final PalletRackType | PALLET_RACK_TWO_AISLES | |
static final PalletRackType | PALLET_RACK_TWO_PALLET_RACKS |
Constructor | Description |
---|---|
PalletRack() | |
PalletRack | |
PalletRack |
/**
This method is internal and shouldn't be called by user.
it may be removed/renamed in future. It is public due to technical reasons. |
Modifier and Type | Method | Description |
---|---|---|
int | capacity() |
Returns the total number of cell positions (all the levels and all racks, if there
are two racks), which is
(1 or 2) * number of positions along row * number of deep positions * number of levels |
boolean | contains |
Test if the shape contains the point with the given coordinates (relative
to this shape's container, i.e.
|
boolean | contains |
Returns
true if the given agent is contained within this object |
SVGElement | findSVGElement |
This method is internal and shouldn't be called by user.
it may be removed/renamed in future. |
Agent | get |
Returns the agent stored at the specified cell [row,position,level,deepPosition], or
null if the cell is reserved or free. |
double | getAisleDepth() | |
double | getAisleRightDepth() | |
PalletRackApproachDirection | getApproachDirection |
Return the approach direction to the given agent or
null
if agent is unreachable (lies deep in the cell, behind other entities) |
BoundingRectangle | getBoundingRectangle() | |
Agent | getByIndex |
Returns the stored agent with a given index.
|
PalletRackLocation | getCellOf |
Returns the coordinates of a cell with a given agent [row,position,level], or null if the agent is not stored here.
|
double | getCellWidth() |
Returns the width of cell
|
double | getDepth() | |
double | getDepthRight() | |
Color | getFillColor() |
Returns the fill color of the markup element, or
null if markup element has no fill color or
has textured fill (in this case #getFillTexture() should be used instead) |
PalletRackLocation | getFreeCell |
Returns the array [row,position,level] with the coordinates of a free
cell that is closest to either front of back of the rack system,
depending on the parameter infront.
|
double | getLength() | |
double | getLevelHeight() | |
Color | getLineColor() |
Returns the line color of the markup element, or
null if markup element has no line color |
double | getNearestPoint |
Calculates (using the
output object) the point in this space markup element
nearest to the given (x, y, z) point. |
double | getNearestPoint |
Calculates (using the
output object) the point in this space markup element
nearest to the given (x, y) point. |
Position | getPositionAtCell |
Returns the position at the given cell
|
Position | getPositionAtCellEntry |
Returns the position at the given cell
|
Position | getPositionInAisle |
Returns the position in the given aisle at the given cell
|
double | getRotation() | |
PalletRackType | getType() |
Returns the type of this pallet rack
|
double | getX() | |
double | getY() | |
double | getZ() | |
boolean | hasSpace() |
Returns
true if there is enough space for at least one more agents |
boolean | isFree |
Tests if a given cell [row,position,level] is free, i.e.
|
boolean | isObstacle() | |
int | nFree |
Tests if a given cell [row,position,level] is free, i.e.
|
int | nReserved |
Tests if a given cell [row,position,level] is reserved.
|
int | numberOfDeepPositions() |
Returns the number of positions in the depth of each cell
|
int | numberOfLevels() |
Returns the number of levels in this pallet rack
|
int | numberOfPositions() |
Returns the number of positions (cells) in one shelf.
|
int | numberOfRows() |
Returns the number of rows (pallet racks).
To set this number, please use setType(PalletRackType) |
void | postInitialize() |
This method is internal and shouldn't be called by user.
it may be removed/renamed in future. |
void | put |
Puts the agent into the cell with the specified coordinates [row,position,level].
|
Agent | randomAgent() |
Returns a random agent in the rack system, or
null if the rack system is empty. |
Agent | randomEntity() |
Deprecated.
|
Point | randomPointInside |
Returns the randomly chosen point inside/along the given space markup element.
|
void | release |
Discards a reservation of a given cell [row,position,level].
|
Agent | remove |
Removes a given agent from the rack system and returns it.
|
Agent | removeFromCell |
Removes the agent stored in a given cell [row,position,level] from the rack system and returns it.
|
Agent | removeFromCell |
Removes the agent stored in a given cell [row,position,level] from the rack system and returns it.
|
void | reserve |
Marks a given cell [row,position,level] as reserved.
|
int | reserved() |
Returns the number of reserved cells in the pallet rack(s).
|
void | resetStats() |
Resets the statistics collected for this object.
|
void | resetSVGState() |
This method is internal and shouldn't be called by user.
it may be removed/renamed in future. |
void | setAisleDepth | |
void | setAisleRightDepth | |
void | setCellWidth |
Sets the width of cell
|
void | setConnectedSystem_xjal | |
void | setDepth | |
void | setDepthRight | |
void | setFillColor |
Sets the fill color of the markup element.
|
void | setFillColor |
Sets the fill color (or
Texture ) of the markup element. |
void | setLength | |
void | setLevelHeight | |
void | setLineColor |
Sets the line color of the markup element.
|
void | setNumberOfDeepPositions | |
void | setNumberOfLevels |
Sets the number of levels in this pallet rack
|
void | setNumberOfPositions |
Sets the number of positions (cells) in one shelf.
|
void | setObstacle | |
void | setRotation | |
void | setType |
Sets the type of this pallet rack
|
void | setX | |
void | setY | |
void | setZ | |
int | size() |
Returns the number of entities inside
|
void | updateColorMap |
This method is internal and shouldn't be called by user.
it may be removed/renamed in future. |
SVGElement | updateSVGProperties |
This method is internal and shouldn't be called by user.
it may be removed/renamed in future. Updates SVG properties of the element that are then sent to the rendering client. |
error, getFullName, getOutsideLevelZ, getPresentable, getSpace, initialize, isClickHandled, isPublic, onClick, remove, setDrawMode, setOwner
discardOwner, executeUserAction, getName, getSVGId, initializeInternal, isVisible, onAggregatorInitialized, onAggregatorVisibilityChanged, removeSVGFromOwner, setVisible, updateDynamicProperties, updateDynamicPropertiesStructural
public static final PalletRackType PALLET_RACK_SINGLE_AISLE_LEFT
public static final PalletRackType PALLET_RACK_SINGLE_AISLE_RIGHT
public static final PalletRackType PALLET_RACK_TWO_AISLES
public static final PalletRackType PALLET_RACK_TWO_PALLET_RACKS
public static final PalletRackDirection PALLET_RACK_NO_DIRECTION
public static final PalletRackDirection PALLET_RACK_LEFT_TO_RIGHT
public static final PalletRackDirection PALLET_RACK_RIGHT_TO_LEFT
public PalletRack()
public PalletRack(Agent owner)
@AnyLogicInternalCodegenAPI public PalletRack(Agent owner, ShapeDrawMode drawMode, boolean isPublic, boolean isObstacle, double x, double y, double z, double length, double depth, double depthR, double levelHeight, double rotation, PalletRackType type, PalletRackDirection direction, double aisleDepth, double aisleRDepth, double cellWidth, int nPositions, int nLevels, int nDeep, Paint fillColor, Color lineColor, int cellsBetweenLegs)
/**
This method is internal and shouldn't be called by user.
it may be removed/renamed in future. It is public due to technical reasons.
it may be removed/renamed in future. It is public due to technical reasons.
- Parameters:
owner
-drawMode
-isPublic
-x
-y
-z
-length
-depth
-depthR
-levelHeight
-rotation
-type
-direction
- (for two-aisle racks only) the direction of contents flowaisleDepth
-aisleRDepth
-cellWidth
-nPositions
-nLevels
-nDeep
- the number of positions in the depth of each cellfillColor
-lineColor
-cellsBetweenLegs
- the number of cells between legs (drawn in 3D), or0
, for not to draw legs
public boolean isObstacle()
public void setObstacle(boolean isObstacle)
public void postInitialize()
Description copied from interface:
AggregatableAnimationElement
This method is internal and shouldn't be called by user.
it may be removed/renamed in future.
it may be removed/renamed in future.
- Specified by:
postInitialize
in interfaceAggregatableAnimationElement
public void setType(PalletRackType type)
Sets the type of this pallet rack
- Parameters:
type
- the type of this pallet rack
public PalletRackType getType()
Returns the type of this pallet rack
- Returns:
- the type of this pallet rack
public int numberOfRows()
Returns the number of rows (pallet racks).
To set this number, please use
To set this number, please use
setType(PalletRackType)
- Returns:
- the number of rows (1 or 2)
public void setNumberOfPositions(int nPositions)
Sets the number of positions (cells) in one shelf.
The total number of positions may be calculated by multiplying
this number by number of deep positions
and by number of levels
and number of rows.
- Parameters:
nPositions
- the number of cells in one shelf
public int numberOfPositions()
Returns the number of positions (cells) in one shelf.
The total number of positions may be calculated by multiplying
this number by number of deep positions
and by number of levels
and by two, if this object contains two pallet racks.
- Returns:
- the number of cells in one shelf
public void setNumberOfLevels(int nLevels)
Sets the number of levels in this pallet rack
- Parameters:
nLevels
- the number of levels in this pallet rack
public int numberOfLevels()
Returns the number of levels in this pallet rack
- Returns:
- the number of levels in this pallet rack
public int numberOfDeepPositions()
Returns the number of positions in the depth of each cell
- Returns:
- the number of positions in the depth of each cell
public void setNumberOfDeepPositions(int nDeep)
public void setCellWidth(double cellWidth)
Sets the width of cell
- Parameters:
cellWidth
- the width of cell
public double getCellWidth()
Returns the width of cell
- Returns:
- the width of cell
public double getX()
public void setX(double x)
public double getY()
public void setY(double y)
public double getZ()
public void setZ(double z)
public double getLength()
public void setLength(double length)
public double getDepth()
public void setDepth(double depth)
public double getDepthRight()
public void setDepthRight(double depthR)
public double getAisleDepth()
public void setAisleDepth(double aisleDepth)
public double getAisleRightDepth()
public void setAisleRightDepth(double aisleRDepth)
public double getRotation()
public void setRotation(double rotation)
public double getLevelHeight()
public void setLevelHeight(double levelHeight)
public int capacity()
Returns the total number of cell positions (all the levels and all racks, if there
are two racks), which is
(1 or 2) * number of positions along row * number of deep positions * number of levels
- Specified by:
capacity
in interfacePalletRackAccess<Agent>
- Returns:
- the total number of cells
public Point randomPointInside(Random rng, Point out)
Description copied from interface:
INetworkMarkupElement
Returns the randomly chosen point inside/along the given space markup element.
This method utilises the given Random Number Generator.
- Specified by:
randomPointInside
in interfaceINetworkMarkupElement
- Parameters:
rng
- the random number generator.out
- output object to write to, may benull
- Returns:
- the randomly chosen point
public double getNearestPoint(double x, double y, Point out)
Description copied from class:
NetworkMarkupElement
Calculates (using the
output
object) the point in this space markup element
nearest to the given (x, y) point. Returns the square of distance to the point
(in the XY-projection).
All the calculations are performed in the horizontal projection (z-coordinates aren't used,
as if all of the z coordinates were zero).- Specified by:
getNearestPoint
in classNetworkMarkupElement
- Parameters:
x
- x coordinate of the pointy
- y coordinate of the pointout
- the output point to write result to. Note thatoutput.z
is left unchanged.- Returns:
- the square of distance to the nearest point in the horizontal (XY) projection
public double getNearestPoint(double x, double y, double z, Point out)
Description copied from class:
NetworkMarkupElement
Calculates (using the
output
object) the point in this space markup element
nearest to the given (x, y, z) point. Returns the square of distance to the point.- Specified by:
getNearestPoint
in classNetworkMarkupElement
- Parameters:
x
- x coordinate of the pointy
- y coordinate of the pointz
- z coordinate of the pointout
- the output point to write result to.- Returns:
- the square of distance to the nearest point
public Position getPositionAtCell(int row, int position, int level, int deepPosition, double offset, double depth, boolean leftAisle, Position out)
Returns the position at the given cell
- Specified by:
getPositionAtCell
in interfacePalletRackAccess<Agent>
- Parameters:
row
- the number of pallet rack (0 or 1). Used in two-row pallet racks (0 = left row, 1 = right row).
If there is only one pallet rack, this should be 0.position
- position in row (0, 1, ...)level
- level (0, 1, ...)offset
- offset along row edgedepth
- in-cell depth (perpendicular to row edge)out
- the Position object to write to (may benull
)deepPosition
- [if cells have depth] the index (0, 1, ..), counted from the aisle (or from the left aisle, if there are several aisles near this row)leftAisle
- [for 2-aisle pallet racks, needed for orientation calculation]: where the face of agent should be oriented: as it was put from the left aisle or from the right one- Returns:
- the position at the given cell. Returned is the given
output
object (if was notnull
) or new Position with coordinates and rotations set.
public Position getPositionAtCellEntry(int row, int position, int level, boolean leftAisle, Position out)
Returns the position at the given cell
- Specified by:
getPositionAtCellEntry
in interfacePalletRackAccess<Agent>
- Parameters:
row
- the number of pallet rack (0 or 1). Used in two-row pallet racks (0 = left row, 1 = right row).
If there is only one pallet rack, this should be 0.position
- position in row (0, 1, ...)level
- level (0, 1, ...)offset
- offset along row edgedepth
- in-cell depth (perpendicular to row edge)out
- the Position object to write to (may benull
)- Returns:
- the position at the given cell. Returned is the given
output
object (if was notnull
) or new Position with coordinates and rotations set.
public Position getPositionInAisle(int row, int position, boolean leftAisle, Position out)
Returns the position in the given aisle at the given cell
- Specified by:
getPositionInAisle
in interfacePalletRackAccess<Agent>
- Parameters:
row
- the number of pallet rack (0 or 1). Used in two-row pallet racks (0 = left row, 1 = right row).
If there is only one pallet rack, this should be 0.position
- position in row (0, 1, ...)out
- the Position object to write to (may benull
)leftAisle
- [for 2-aisle pallet racks, needed for orientation calculation]: where the face of agent should be oriented: as it was put from the left aisle or from the right one- Returns:
- the position in the aisle at the given cell. Returned is the given
output
object (if was notnull
) or new Position with coordinates and rotations set.
public void setLineColor(Color lineColor)
Sets the line color of the markup element.
- Parameters:
lineColor
- the new line color, null = do not draw the markup element line
public Color getLineColor()
Returns the line color of the markup element, or
null
if markup element has no line color- Returns:
- the line color of the markup element
public void setFillColor(Color fillColor)
Sets the fill color of the markup element.
- Parameters:
fillColor
- the new fill color, null = do not fill the markup element
public void setFillColor(Paint fillColor)
Sets the fill color (or
Texture
) of the markup element.- Parameters:
fillColor
- the new fill color, null = do not fill the markup element
public Color getFillColor()
Returns the fill color of the markup element, or
null
if markup element has no fill color or
has textured fill (in this case #getFillTexture()
should be used instead)- Returns:
- the fill color of the markup element
public boolean contains(double px, double py)
Description copied from class:
MarkupShape
Test if the shape contains the point with the given coordinates (relative
to this shape's container, i.e. in the same system with the coordinates
of this shape, x and y)
- Specified by:
contains
in interfaceINetworkMarkupElement
- Specified by:
contains
in classMarkupShape
- Parameters:
px
- the x coordinate relative to this shape's containerpy
- the y coordinate relative to this shape's container- Returns:
true
if the shape contains the point with the given coordinates
@AnyLogicInternalAPI public void setConnectedSystem_xjal(PalletRackAccess<?> connectedSystem)
public int size()
Description copied from interface:
PalletRackAccess
Returns the number of entities inside
- Specified by:
size
in interfacePalletRackAccess<Agent>
- Returns:
- the number of entities inside
public boolean hasSpace()
Description copied from interface:
PalletRackAccess
Returns
true
if there is enough space for at least one more agents- Specified by:
hasSpace
in interfacePalletRackAccess<Agent>
- Returns:
true
if there is enough space for at least one more agents
public boolean contains(Agent entity)
Description copied from interface:
PalletRackAccess
Returns
true
if the given agent is contained within this object- Specified by:
contains
in interfacePalletRackAccess<Agent>
- Parameters:
entity
- the agent- Returns:
true
if the given agent is contained within this object
@AnyLogicInternalAPI public int reserved()
Description copied from interface:
PalletRackAccess
Returns the number of reserved cells in the pallet rack(s).
- Specified by:
reserved
in interfacePalletRackAccess<Agent>
- Returns:
- the number of reserved cells in the pallet rack(s).
public Agent get(int row, int position, int level, int deepPosition)
Description copied from interface:
PalletRackAccess
Returns the agent stored at the specified cell [row,position,level,deepPosition], or
null
if the cell is reserved or free.- Specified by:
get
in interfacePalletRackAccess<Agent>
- Parameters:
row
- the row (0, 1, ..)position
- the position in row (0, 1, ..)level
- the level (0 is the lowest)deepPosition
- [if cells have depth] the index (0, 1, ..), counted from the aisle (or from the left aisle, if there are several aisles near this row)- Returns:
- the agent stored at the specified cell
public Agent getByIndex(int index)
Description copied from interface:
PalletRackAccess
Returns the stored agent with a given index. The order of entities is
internal and may change when entities are added or removed. If the index
is greater than the number of entities-1, returns
null
.- Specified by:
getByIndex
in interfacePalletRackAccess<Agent>
- Parameters:
index
- the index- Returns:
- agent by index or
null
@Deprecated public Agent randomEntity()
Deprecated.
please use
randomAgent()
public Agent randomAgent()
Description copied from interface:
PalletRackAccess
Returns a random agent in the rack system, or
null
if the rack system is empty.- Specified by:
randomAgent
in interfacePalletRackAccess<Agent>
- Returns:
- random agent
public boolean isFree(int row, int position, int level)
Description copied from interface:
PalletRackAccess
Tests if a given cell [row,position,level] is free, i.e. neither occupied nor reserved.
- Specified by:
isFree
in interfacePalletRackAccess<Agent>
- Parameters:
row
- the row (0, 1, ..)position
- the position in row (0, 1, ..)level
- the level (0 is the lowest)- Returns:
true
if free
public int nFree(int row, int position, int level)
Description copied from interface:
PalletRackAccess
Tests if a given cell [row,position,level] is free, i.e. neither occupied
nor reserved and returns the number of free slots in the depth of the
cell
- Specified by:
nFree
in interfacePalletRackAccess<Agent>
- Parameters:
row
- the row (0, 1, ..)position
- the position in row (0, 1, ..)level
- the level (0 is the lowest)- Returns:
- the number of free slots in the depth of the cell
public PalletRackLocation getCellOf(Agent entity)
Description copied from interface:
PalletRackAccess
Returns the coordinates of a cell with a given agent [row,position,level], or null if the agent is not stored here.
- Specified by:
getCellOf
in interfacePalletRackAccess<Agent>
- Parameters:
entity
- the agent- Returns:
- [row,position,level], or
null
public PalletRackApproachDirection getApproachDirection(Agent entity, int rowToSearch)
Description copied from interface:
PalletRackAccess
Return the approach direction to the given agent or
null
if agent is unreachable (lies deep in the cell, behind other entities)- Specified by:
getApproachDirection
in interfacePalletRackAccess<Agent>
- Parameters:
entity
- the agentrowToSearch
- optional parameter - the row previously found byPalletRackAccess.getCellOf(Agent)
(set to -1 if unknown)- Returns:
- the approach direction
public PalletRackLocation getFreeCell(boolean infront)
Description copied from interface:
PalletRackAccess
Returns the array [row,position,level] with the coordinates of a free
cell that is closest to either front of back of the rack system,
depending on the parameter infront. If the rack system is full, returns
null.
- Specified by:
getFreeCell
in interfacePalletRackAccess<Agent>
- Parameters:
infront
- iftrue
, the returned object will have the smallest available position- Returns:
- the [row,position,level]
public void put(int row, int position, int level, boolean leftAisle, Agent entity)
Description copied from interface:
PalletRackAccess
Puts the agent into the cell with the specified coordinates [row,position,level]. If the cell is occupied, signals error. Does not check if the cell is reserved.
- Specified by:
put
in interfacePalletRackAccess<Agent>
- Parameters:
row
- the row (0, 1, ..)position
- the position in row (0, 1, ..)level
- the level (0 is the lowest)leftAisle
- [for 2-aisle pallet racks]: from which aisle the agent should be put to the cell: from the left or from the right oneentity
- the agent
public Agent removeFromCell(int row, int position, int level, boolean leftAisle)
Description copied from interface:
PalletRackAccess
Removes the agent stored in a given cell [row,position,level] from the rack system and returns it.
- Specified by:
removeFromCell
in interfacePalletRackAccess<Agent>
- Parameters:
row
- the row (0, 1, ..)position
- the position in row (0, 1, ..)level
- the level (0 is the lowest)leftAisle
- [for 2-aisle pallet racks]: from which aisle the agent should be removed: from the left or from the right one- Returns:
- the removed agent
public Agent removeFromCell(PalletRackLocation location, boolean leftAisle)
Description copied from interface:
PalletRackAccess
Removes the agent stored in a given cell [row,position,level] from the rack system and returns it.
- Specified by:
removeFromCell
in interfacePalletRackAccess<Agent>
- Parameters:
location
- the [row,position,level]leftAisle
- [for 2-aisle pallet racks]: from which aisle the agent should be removed: from the left or from the right one- Returns:
- the removed agent
public Agent remove(Agent entity)
Description copied from interface:
PalletRackAccess
Removes a given agent from the rack system and returns it. If the agent is not stored here, returns null.
- Specified by:
remove
in interfacePalletRackAccess<Agent>
- Parameters:
entity
- the agent to remove- Returns:
- the agent if was removed, otherwise
null
public void reserve(int row, int position, int level, boolean leftAisle)
Description copied from interface:
PalletRackAccess
Marks a given cell [row,position,level] as reserved. The cell must be free.
- Specified by:
reserve
in interfacePalletRackAccess<Agent>
- Parameters:
row
- the row (0, 1, ..)position
- the position in row (0, 1, ..)level
- the level (0 is the lowest)leftAisle
- [for 2-aisle pallet racks]: from which aisle the cell reserve should be placed
public void release(int row, int position, int level, boolean leftAisle)
Description copied from interface:
PalletRackAccess
Discards a reservation of a given cell [row,position,level]. The cell must be reserved.
- Specified by:
release
in interfacePalletRackAccess<Agent>
- Parameters:
row
- the row (0, 1, ..)position
- the position in row (0, 1, ..)level
- the level (0 is the lowest)leftAisle
- [for 2-aisle pallet racks]: from which aisle the cell reserve should be released
public int nReserved(int row, int position, int level)
Description copied from interface:
PalletRackAccess
Tests if a given cell [row,position,level] is reserved.
- Specified by:
nReserved
in interfacePalletRackAccess<Agent>
- Parameters:
row
- the row (0, 1, ..)position
- the position in row (0, 1, ..)level
- the level (0 is the lowest)- Returns:
- the number of reserved locations (may be > 1 for pallet racks with depth)
public void resetStats()
Description copied from interface:
PalletRackAccess
Resets the statistics collected for this object.
- Specified by:
resetStats
in interfacePalletRackAccess<Agent>
@AnyLogicInternalAPI public SVGElement updateSVGProperties(List<SVGCommand> output, ShapeDrawMode drawMode, boolean publicOnly, SVGElement owner, SVGElement elbehind)
Description copied from interface:
SVGElement
This method is internal and shouldn't be called by user.
it may be removed/renamed in future.
Updates SVG properties of the element that are then sent to the rendering client. If the element is not yet in the SVG scene, generates "C" command, if it is there, but some properties are out of date, generates "U" command. If SVG drawing of this element is not needed because of public only settings, or permanently not needed, or not supported yet, returns false and does nothing.
it may be removed/renamed in future.
Updates SVG properties of the element that are then sent to the rendering client. If the element is not yet in the SVG scene, generates "C" command, if it is there, but some properties are out of date, generates "U" command. If SVG drawing of this element is not needed because of public only settings, or permanently not needed, or not supported yet, returns false and does nothing.
- Specified by:
updateSVGProperties
in interfaceSVGElement
- Overrides:
updateSVGProperties
in classAbstractMarkup
- Parameters:
output
- the list of commands to add todrawMode
- TODOpublicOnly
- drawing context: if true, only shapes that are marked as public only are updatedowner
- the SVG element that serves as a container for this elementelbehind
- the SVG element behind this one, or null if none or if order is irrelevant- Returns:
- the actual owner this element has been added to or
null
if element is not drawn (e.g. drawing of this element is not needed because of public only settings, permanently not needed or not supported - hence SVG id is not set). The actual owner may differ from the givenowner
when the svg element is added to a different place (e.g. GIS map).
@AnyLogicInternalAPI public void resetSVGState()
Description copied from interface:
SVGElement
This method is internal and shouldn't be called by user.
it may be removed/renamed in future.
it may be removed/renamed in future.
- Specified by:
resetSVGState
in interfaceSVGElement
- Overrides:
resetSVGState
in classAbstractMarkup
@AnyLogicInternalAPI public SVGElement findSVGElement(long svgId)
Description copied from interface:
SVGElement
This method is internal and shouldn't be called by user.
it may be removed/renamed in future.
it may be removed/renamed in future.
- Specified by:
findSVGElement
in interfaceSVGElement
- Overrides:
findSVGElement
in classAbstractMarkup
@AnyLogicInternalAPI public BoundingRectangle getBoundingRectangle()
@AnyLogicInternalAPI public void updateColorMap(int row, int position, int level, int deepPosition, boolean put)
This method is internal and shouldn't be called by user.
it may be removed/renamed in future.
it may be removed/renamed in future.
randomAgent()