edu.brook.ascape.model
Class ScapeArray1D
java.lang.Object
|
+--edu.brook.ascape.model.AscapeObject
|
+--edu.brook.ascape.model.Agent
|
+--edu.brook.ascape.model.Cell
|
+--edu.brook.ascape.model.CellOccupant
|
+--edu.brook.ascape.model.Scape
|
+--edu.brook.ascape.model.ScapeGraph
|
+--edu.brook.ascape.model.ScapeArray1D
- public class ScapeArray1D
- extends ScapeGraph
A one-dimensional, fixed-size, collection of agents providing services
described for scape.
- Since:
- 1.0
- Version:
- 1.5
- See Also:
- Serialized Form
| Fields inherited from class edu.brook.ascape.model.Scape |
AGENT_ORDER,
agentsPerIteration,
ALL_AGENTS,
autoCreate,
cellsRequestUpdates,
COLLECT_STATS_RULE,
collectStats,
COMPLETE_TOUR,
copyrightAndCredits,
CREATE_RULE,
CREATE_SCAPE_RULE,
dataGroup,
demoModelClasses,
demoModelNames,
description,
drawFeatureObservable,
drawFeatures,
earliestPeriod,
executionOrder,
executionStyle,
geometry,
home,
INITIAL_RULES_RULE,
initialRules,
INTERNAL_START_RULE,
ITERATE_SCAPE_RULE,
iteration,
latestPeriod,
membersActive,
PAUSE_RULE,
paused,
period,
periodName,
prototypeAgent,
REPEATED_DRAW,
restartAfterAutoStop,
RESUME_RULE,
RULE_ORDER,
rules,
running,
scapeListeners,
selfView,
standardOutView,
START_RULE,
startOnOpen,
startPeriod,
step,
STOP_RULE,
stopPeriod,
updatedListeners,
updatedMembers,
version |
| Fields inherited from class edu.brook.ascape.model.Agent |
DEATH_RULE,
deleteMarker,
FISSIONING_RULE,
FORCE_DIE_RULE,
FORCE_FISSION_RULE,
FORCE_MOVE_RULE,
INITIALIZE_RULE,
initialized,
ITERATE_AND_UPDATE_RULE,
ITERATE_RULE,
METABOLISM_RULE,
MOVEMENT_RULE,
UPDATE_RULE |
|
Constructor Summary |
ScapeArray1D()
Constructs a scape array. |
ScapeArray1D(java.lang.String name,
Cell prototypeAgent,
CoordinateDiscrete extent)
Constructs a scape array of provided extent, populated with clones of provided agent. |
|
Method Summary |
int |
countWithin(Cell origin,
Conditional condition,
boolean includeOrigin,
double maximumDistance)
|
void |
createScape()
Populate the scape with instances of its protoype agent. |
Cell |
findNearestCell(Cell origin,
Conditional condition)
|
Cell |
findNearestCell(Cell origin,
Conditional condition,
boolean includeOrigin)
|
Cell |
findNearestCell(Cell origin,
Conditional condition,
boolean includeOrigin,
double maximumDistance)
|
Cell |
findRandomCell()
Returns a cell randomly selected from the lattice. |
CoordinateDiscrete |
findRandomCoordinate()
Returns a coordinate randomly selected from the lattice's space. |
Agent[] |
getAgents()
Returns all agents in the scape as an array. |
Cell |
getCell(CoordinateDiscrete coordinate)
Returns the cell existing at the specified coordinate. |
Cell |
getCell(int xPosition)
Returns the cell existing at the specified coordinate. |
Cell[] |
getCells()
Returns all agents in the scape as an array of cells (use this method to avoid coercion of memebers to Cell.) |
Cell[] |
getCellsNear(Cell centralAgent,
int distance,
boolean includeSelf)
Returns cells that are near the provided cell. |
int |
getDistance(Cell origin,
Cell target)
|
int |
getSize()
Returns the size, or number of cells, (the product of all extents) of this FixedList. |
boolean |
hasWithin(Cell origin,
Conditional condition,
boolean includeOrigin,
double maximumDistance)
|
ScapeIterator |
iterator()
|
ScapeIterator |
randomIterator()
|
void |
randomizeCallingOrder()
Randomizes the lookup used to determine calling order for random order execution of rules. |
void |
setCell(CoordinateDiscrete coordinate,
Cell cell)
Sets the cell at the specified coordinate to the supplied cell. |
void |
setCell(int position,
Cell cell)
Sets the cell at the specified position to the supplied cell. |
void |
setGeometry(Geometry geometry)
Sets the geometry of this scape. |
| Methods inherited from class edu.brook.ascape.model.ScapeGraph |
executeOnMembers,
findAvailable,
findAvailable,
findCells,
findCells,
findMaximumCell,
findMaximumWithin,
findOccupants,
findOccupants,
findRandomCell,
findRandomCells,
findRandomCells,
findRandomUnoccupiedCell,
findRandomUnoccupiedCell,
getExtent,
setExtent |
| Methods inherited from class edu.brook.ascape.model.Scape |
addDrawFeature,
addInitialRule,
addInitialRule,
addRule,
addRule,
addScapeListener,
addStatCollector,
addStatCollectors,
addView,
addView,
addView,
addViews,
addViews,
addViews,
clone,
close,
closeAndOpenNew,
closeAndOpenNewFinally,
closeFinally,
contentsToString,
createOrder,
createSelfView,
createViews,
execute,
execute,
executeOnMembers,
executeOnMembers,
executeOnMembers,
executeOnRoot,
executeOnRoot,
exit,
getAgentsNear,
getAgentsPerIteration,
getAllScapes,
getCollectStats,
getCustomizer,
getData,
getDescription,
getDrawFeatures,
getDrawFeaturesObservable,
getExecutionOrder,
getExecutionStyle,
getGeometry,
getHome,
getInitialRules,
getIteration,
getName,
getPeriod,
getPeriodDescription,
getPeriodName,
getPrototypeAgent,
getRoot,
getRules,
getStandardOutView,
getStartPeriod,
getStatCollectors,
getStopPeriod,
initialize,
isAllViewsUpdated,
isAutoCreate,
isCellsRequestUpdates,
isMembersActive,
isMutable,
isPaused,
isRoot,
isRunning,
isStartOnOpen,
isValidPeriod,
isViewSelf,
iterateScape,
listenerOrMemberUpdated,
listenerUpdated,
main,
memberUpdated,
notifyViews,
onSetup,
onStart,
onStop,
onUpdate,
open,
open,
open,
open,
open,
parseSettingArgs,
pause,
quit,
quitFinally,
randomizeOrder,
removeScapeListener,
requestRestart,
respondControl,
restart,
resume,
retrieveAllAccessors,
retrieveAllAccessorsOrdered,
run,
save,
save,
save,
setAgentsPerIteration,
setAutoCreate,
setAutoRestart,
setCellsRequestUpdates,
setCollectStats,
setCollectStats,
setCustomizer,
setDescription,
setEarliestPeriod,
setExecutionOrder,
setExecutionStyle,
setHome,
setInternalPaused,
setInternalRunning,
setLatestPeriod,
setMembersActive,
setPaused,
setPeriodName,
setPrototypeAgent,
setRunning,
setStartOnOpen,
setStartPeriod,
setStopPeriod,
setViewSelf,
start,
stop,
toString,
waitForViewsUpdate |
| Methods inherited from class edu.brook.ascape.model.CellOccupant |
die,
getAvailableNeighboringCells,
getCellsNearOnHost,
getHostCell,
getHostScape,
getNeighborsOnHost,
leave,
moveAway,
moveTo,
moveToRandomLocation,
moveToward,
randomWalk,
randomWalkAvailable,
setHostScape |
| Methods inherited from class edu.brook.ascape.model.Cell |
countNeighbors,
countWithin,
findMaximumWithin,
findNearestCell,
findNearestCell,
findNearestCell,
findRandomNeighbor,
getCellsNear,
getCoordinate,
getDistance,
getNeighbors,
getNeighbors,
getNetwork,
getOccupant,
hasWithin,
isAvailable,
isUpdateNeeded,
removeOccupant,
requestUpdate,
requestUpdateNext,
setCoordinate,
setNeighbors,
setNetwork,
setOccupant |
| Methods inherited from class edu.brook.ascape.model.Agent |
death,
deathCondition,
execute,
execute,
fission,
fissionCondition,
fissioning,
getColor,
getColor,
getImage,
getImage,
getModel,
isDelete,
isInitialized,
iterate,
markForDeletion,
metabolism,
move,
movement,
movementCondition,
play,
scapeCreated,
update |
| Methods inherited from class edu.brook.ascape.model.AscapeObject |
getRandom,
getRandomSeed,
getScape,
randomInRange,
randomInRange,
randomIs,
randomToLimit,
reseed,
setName,
setRandom,
setRandomSeed,
setScape |
| Methods inherited from class java.lang.Object |
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
wait,
wait,
wait |
ScapeArray1D
public ScapeArray1D()
- Constructs a scape array.
ScapeArray1D
public ScapeArray1D(java.lang.String name,
Cell prototypeAgent,
CoordinateDiscrete extent)
- Constructs a scape array of provided extent, populated with clones of provided agent.
- Parameters:
name - a descriptive name for the scapeprototypeAgent - the agent whose clones will be used to populate this scapeextent - a coordinate describing the size of this scape
setGeometry
public void setGeometry(Geometry geometry)
- Sets the geometry of this scape. Must of course be a one-dimensional geometry.
- Parameters:
gometry - the basic geometry of this scape- Overrides:
- setGeometry in class Scape
createScape
public void createScape()
- Populate the scape with instances of its protoype agent.
Creates cells and fills them with clones of prototype agent.
Geometry, extent, and prototype agent should all be set before calling this method.
- Overrides:
- createScape in class Scape
randomizeCallingOrder
public void randomizeCallingOrder()
- Randomizes the lookup used to determine calling order for random order execution of rules.
iterator
public ScapeIterator iterator()
- Overrides:
- iterator in class Scape
randomIterator
public ScapeIterator randomIterator()
- Overrides:
- randomIterator in class Scape
getSize
public int getSize()
- Returns the size, or number of cells, (the product of all extents) of this FixedList.
- Overrides:
- getSize in class ScapeGraph
getCell
public Cell getCell(int xPosition)
- Returns the cell existing at the specified coordinate.
setCell
public void setCell(int position,
Cell cell)
- Sets the cell at the specified position to the supplied cell.
Slightly faster than coordinate form.
getCell
public Cell getCell(CoordinateDiscrete coordinate)
- Returns the cell existing at the specified coordinate.
- Overrides:
- getCell in class ScapeGraph
setCell
public void setCell(CoordinateDiscrete coordinate,
Cell cell)
- Sets the cell at the specified coordinate to the supplied cell.
- Overrides:
- setCell in class ScapeGraph
findRandomCell
public Cell findRandomCell()
- Returns a cell randomly selected from the lattice.
- Overrides:
- findRandomCell in class ScapeGraph
findRandomCoordinate
public CoordinateDiscrete findRandomCoordinate()
- Returns a coordinate randomly selected from the lattice's space.
- Overrides:
- findRandomCoordinate in class ScapeGraph
getCellsNear
public Cell[] getCellsNear(Cell centralAgent,
int distance,
boolean includeSelf)
- Returns cells that are near the provided cell.
Bug; must fix for non-periodic space.
- Parameters:
centralAgent - the agent to find cells neardistance - the distance to form centralCells to return cellsshould - supplied agent be included in the return set- Overrides:
- getCellsNear in class ScapeGraph
findNearestCell
public Cell findNearestCell(Cell origin,
Conditional condition)
- Overrides:
- findNearestCell in class ScapeGraph
findNearestCell
public Cell findNearestCell(Cell origin,
Conditional condition,
boolean includeOrigin)
- Overrides:
- findNearestCell in class ScapeGraph
findNearestCell
public Cell findNearestCell(Cell origin,
Conditional condition,
boolean includeOrigin,
double maximumDistance)
- Overrides:
- findNearestCell in class ScapeGraph
hasWithin
public boolean hasWithin(Cell origin,
Conditional condition,
boolean includeOrigin,
double maximumDistance)
- Overrides:
- hasWithin in class ScapeGraph
countWithin
public int countWithin(Cell origin,
Conditional condition,
boolean includeOrigin,
double maximumDistance)
- Overrides:
- countWithin in class ScapeGraph
getDistance
public int getDistance(Cell origin,
Cell target)
- Overrides:
- getDistance in class ScapeGraph
getCells
public Cell[] getCells()
- Returns all agents in the scape as an array of cells (use this method to avoid coercion of memebers to Cell.)
- Overrides:
- getCells in class ScapeGraph
getAgents
public Agent[] getAgents()
- Returns all agents in the scape as an array.
- Overrides:
- getAgents in class Scape