CognitiveAgentAvoidLayer

class CognitiveAgentAvoidLayer @JvmOverloads constructor(    environment: Euclidean2DEnvironment<Number>,     reaction: Reaction<Number>,     pedestrian: PedestrianProperty<Number>,     targetMolecule: Molecule,     viewDepth: Double = Double.POSITIVE_INFINITY) : AbstractLayerAction

Move the node towards positions of the environment with a low concentration of the target molecule.

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.
viewDepth
    the depth of view of the node, defaults to infinity.

Constructors

Link copied to clipboard
fun CognitiveAgentAvoidLayer(    environment: Euclidean2DEnvironment<Number>,     reaction: Reaction<Number>,     pedestrian: PedestrianProperty<Number>,     targetMolecule: Molecule,     viewDepth: Double = Double.POSITIVE_INFINITY)

Functions

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

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
open override fun nextPosition(): Euclidean2DPosition
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.