Package 

Interface PhysicalPedestrian

  • All Implemented Interfaces:
    it.unibo.alchemist.model.interfaces.Node , it.unibo.alchemist.model.interfaces.Pedestrian , it.unibo.alchemist.model.interfaces.PhysicalNode , it.unibo.alchemist.model.interfaces.nodes.NodeWithShape , java.io.Serializable , kotlin.Comparable , kotlin.collections.Iterable , kotlin.collections.MutableIterable

    
    public interface PhysicalPedestrian<T extends Object, P extends Vector<P>, Position<P>, A extends GeometricTransformation<P>, F extends GeometricShapeFactory<P, A>>
     implements PhysicalNode<T, P, A, F>, Pedestrian<T, P, A>
                        

    A pedestrian capable of interacting physically with others. PhysicalPedestrians have a comfortArea: when another node enters such area, this pedestrian is subject to a repulsion force. This is derived from the work of Pelechano et al. Note that PhysicalPedestrians don't actively push each other, pushing behavior emerges from the interaction of pedestrians with different comfort areas (see the article linked above).

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
    • Field Summary

      Fields 
      Modifier and Type Field Description
    • Constructor Summary

      Constructors 
      Constructor Description
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • Method Summary

      Modifier and Type Method Description
      abstract P repulsionForce(NodeWithShape<T, P, ?> other) Computes the repulsion force caused by a node that entered the comfortArea.
      List<P> physicalForces(PhysicsEnvironment<T, P, A, F> environment)
      abstract GeometricShape<P, A> getComfortArea() The comfort area of this pedestrian.
      abstract GeometricShape<P, A> getShape()
      abstract InfluenceSphere getFieldOfView()
      abstract PedestrianGroup<T, P, A> getMembershipGroup()
      List<InfluenceSphere> getSenses()
      • Methods inherited from class it.unibo.alchemist.model.interfaces.nodes.NodeWithShape

        addReaction, cloneNode, contains, getConcentration, getContents, getId, getMoleculeCount, getReactions, removeConcentration, removeReaction, setConcentration
      • Methods inherited from class it.unibo.alchemist.model.interfaces.Node

        compareTo, iterator
      • Methods inherited from class kotlin.collections.MutableIterable

        forEach, spliterator
      • Methods inherited from class it.unibo.alchemist.model.interfaces.PhysicalPedestrian

        speed
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait