NavigationAction

A SteeringAction allowing a node to navigate an environment consciously (e.g. without getting stuck in U-shaped obstacles). Names are inspired to indoor environments, but this interface works for outdoor ones as well.

Parameters

T

the concentration type.

P

the Position type and Vector type for the space the node is into.

A

the transformations supported by the shapes in this space.

L

the type of landmarks of the node's cognitive map.

R

the type of edges of the node's cognitive map, representing the Relations between landmarks.

N

the type of nodes of the navigation graph provided by the environment.

E

the type of edges of the navigation graph provided by the environment.

Inheritors

Properties

Link copied to clipboard
abstract val currentRoom: N?

The room (= environment's area) the navigatingNode is into.

Link copied to clipboard
abstract val environment: EnvironmentWithGraph<*, T, P, A, N, E>

The environment the navigatingNode is into.

Link copied to clipboard
abstract val navigatingNode: Node<T>

The owner of this action.

Link copied to clipboard

The navigatingNode's orientingProperty.

Link copied to clipboard
abstract val pedestrianPosition: P

The position of the navigatingNode in the environment.

Functions

Link copied to clipboard
abstract fun cloneAction(p0: Node<T>, p1: Reaction<T>): Action<T>
Link copied to clipboard
abstract fun crossDoor(door: E)

Moves the node across the provided door, which must be among doorsInSight.

Link copied to clipboard
abstract fun doorsInSight(): List<E>
Link copied to clipboard
abstract fun execute()
Link copied to clipboard
abstract fun getContext(): Context
Link copied to clipboard
@Nonnull
abstract fun getOutboundDependencies(): ListSet<out Dependency>
Link copied to clipboard
abstract fun moveToFinal(destination: P)

Moves the node to the given final destination, which must be inside currentRoom.

Link copied to clipboard
abstract fun nextPosition(): P

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

Stops moving the node.