ConstantDistanceRandomWalk

class ConstantDistanceRandomWalk<T>(node: Node<T>, reaction: Reaction<T>, environment: Environment<T, Euclidean2DPosition>, randomGenerator: RandomGenerator, distance: Double, speed: Double) : GenericRandomWalker<T>

Walks a fixed distance in a uniformly random direction at the given speed, then repeats the move by selecting a new random direction.

The walker automatically changes direction on impact with obstacles when the provided environment supports obstacle handling.

Parameters

node

the node to move.

reaction

the reaction that contains this action.

environment

the environment containing the node.

randomGenerator

the random generator used to pick directions.

distance

the distance to travel before choosing a new direction.

speed

the walking speed.

Type Parameters

T

the concentration type.

Constructors

Link copied to clipboard
constructor(node: Node<T>, reaction: Reaction<T>, environment: Environment<T, Euclidean2DPosition>, randomGenerator: RandomGenerator, distance: Double, speed: Double)

Properties

Link copied to clipboard
override val context: Context?
Link copied to clipboard
Link copied to clipboard

Functions

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

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 fun execute()

Detects if the move is in absolute or relative coordinates, then calls the correct method on the Environment.

Link copied to clipboard
Link copied to clipboard
infix fun Action<*>.shouldEqual(other: Action<*>)