CameraSee

class CameraSee @JvmOverloads constructor(reaction: NodeReaction<Any>, environment: Physics2DEnvironment<Any>, val distance: Double, val angle: Double, outputMolecule: Molecule = SimpleMolecule("vision"), filterByMolecule: Molecule? = null) : AbstractLocalAction<Any>

Checks nodes in the environment and writes in outputMolecule the list of it.unibo.alchemist.model.VisibleNode, containing filterByMolecule. distance and angle define the field of view.

Constructors

Link copied to clipboard
constructor(reaction: NodeReaction<Any>, environment: Physics2DEnvironment<Any>, distance: Double, angle: Double, outputMolecule: Molecule = SimpleMolecule("vision"), filterByMolecule: Molecule? = null)

Properties

Link copied to clipboard

Angle in degrees of the field of view.

Link copied to clipboard

Distance of the field of view.

Link copied to clipboard
override val reaction: NodeReaction<Any>

The NodeReaction owning this action, hosted by targetNode.

Link copied to clipboard

Functions

Link copied to clipboard
override fun cloneAction(newReaction: Reaction<Any>): Action<Any>

Creates an equivalent action owned by newReaction, such as a reaction cloned onto a new node. An action targeting the host of its reaction targets the host of newReaction, which must then be a Node; an action targeting any other node keeps its target.

Link copied to clipboard
open override fun execute()

Applies this action to the model.

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