AbstractLayerAction

abstract class AbstractLayerAction(    environment: Euclidean2DEnvironment<Number>,     reaction: Reaction<Number>,     pedestrian: PedestrianProperty<Number>,     targetMolecule: Molecule) : AbstractSteeringAction<Number, Euclidean2DPosition, Euclidean2DTransformation>

Abstract implementation of an action influenced by the concentration of a given molecule in the environment.

Parameters

environment
    the environment inside which the node moves.
reaction
    the reaction which executes this action.
node
    the owner of this action.
targetMolecule
    the {@link Molecule} you want to know the concentration in the different positions of the environment.

Constructors

Link copied to clipboard
fun AbstractLayerAction(    environment: Euclidean2DEnvironment<Number>,     reaction: Reaction<Number>,     pedestrian: PedestrianProperty<Number>,     targetMolecule: Molecule)

Functions

Link copied to clipboard
abstract override fun cloneAction(node: Node<Number>, reaction: Reaction<Number>): AbstractLayerAction

This method allows to clone this action on a new node. It may result useful to support runtime creation of nodes with the same reaction programming, e.g. for morphogenesis.

Link copied to clipboard
open override fun execute()
Link copied to clipboard
override fun getContext(): Context
Link copied to clipboard
open override fun getNextPosition(): Euclidean2DPosition
Link copied to clipboard
override fun getOutboundDependencies(): ListSet<out Dependency>
Link copied to clipboard
abstract fun nextPosition(): Euclidean2DPosition

The position the owner of this action moves to when it is executed, in relative coordinates with respect to its current position.

Link copied to clipboard
open override fun toString(): String

Properties

Link copied to clipboard
open val maxWalk: Double

The maximum distance the node can walk, this is a length.

Inheritors

Link copied to clipboard
Link copied to clipboard