CognitivePhysicalPedestrian2D

open class CognitivePhysicalPedestrian2D<T> @JvmOverloads constructor(incarnation: Incarnation<T, Euclidean2DPosition>, randomGenerator: RandomGenerator, environment: Physics2DEnvironment<T>, nodeCreationParameter: String?, age: String, gender: String, danger: Molecule?, group: PedestrianGroup2D<T>?) : CognitivePedestrian2D<T> , PhysicalPedestrian2D<T>

A cognitive pedestrian capable of physical interactions, modeled as a PhysicalPedestrian2D. comfortRay changes dynamically depending on whether the pedestrian wants to evacuate or not.

Constructors

Link copied to clipboard
fun <T> CognitivePhysicalPedestrian2D(incarnation: Incarnation<T, Euclidean2DPosition>, randomGenerator: RandomGenerator, environment: Physics2DEnvironment<T>, nodeCreationParameter: String? = null, age: String, gender: String, danger: Molecule? = null, group: PedestrianGroup2D<T>? = null)

Types

Link copied to clipboard
object Companion

Functions

Link copied to clipboard
abstract fun addReaction(p0: Reaction<T>)
Link copied to clipboard
abstract fun cloneNode(p0: Time): Node<T>
Link copied to clipboard
abstract operator fun compareTo(other: Node<T>): Int
Link copied to clipboard
abstract operator fun contains(p0: Molecule): Boolean
Link copied to clipboard
open fun forEach(p0: Consumer<in Reaction<T>>)
Link copied to clipboard
abstract fun getConcentration(p0: Molecule): T
Link copied to clipboard
abstract fun getContents(): MutableMap<Molecule, T>
Link copied to clipboard
abstract fun getId(): Int
Link copied to clipboard
abstract fun getMoleculeCount(): Int
Link copied to clipboard
abstract fun getReactions(): MutableList<Reaction<T>>
Link copied to clipboard
open fun influencialPeople(): List<CognitiveModel>
Link copied to clipboard
abstract operator override fun iterator(): MutableIterator<Reaction<T>>
Link copied to clipboard
Link copied to clipboard
abstract fun removeConcentration(p0: Molecule)
Link copied to clipboard
abstract fun removeReaction(p0: Reaction<T>)
Link copied to clipboard
open override fun repulsionForce(other: NodeWithShape<T, Euclidean2DPosition, *>): Euclidean2DPosition

Computes the repulsion force caused by a node that entered the comfortArea. This is derived from the work of Pelechano et al.

Link copied to clipboard
abstract fun setConcentration(p0: Molecule, p1: T)
Link copied to clipboard
abstract fun speed(): Double
Link copied to clipboard
open fun spliterator(): Spliterator<Reaction<T>>

Properties

Link copied to clipboard
open override val cognitiveModel: CognitiveModel
Link copied to clipboard
open override val comfortArea: GeometricShape<Euclidean2DPosition, Euclidean2DTransformation>

The comfort area of this pedestrian, it's a circle of radius shape.radius + comfortRay.

Link copied to clipboard
open override val comfortRay: Double

The comfort ray of this pedestrian, this is added to the radius of its shape to obtain the comfortArea.

Link copied to clipboard
val danger: Molecule?
Link copied to clipboard
override val environment: Physics2DEnvironment<T>
Link copied to clipboard
open override val fieldOfView: FieldOfView2D<T>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open val senses: List<InfluenceSphere>
Link copied to clipboard
open override val shape: Euclidean2DShape

Inheritors

Link copied to clipboard