Packages

trait FlockLib extends AnyRef

This trait provides a set of methods to implement flocking algorithms.

Self Type
MacroSwarmSupport.FlockLib with E.AggregateProgram with E.StandardSensors with E.FieldUtils with E.TimeUtils with MacroSwarmSupport.BaseMovementLib with E.CustomSpawn with E.BlocksWithGC with MacroSwarmSupport.BlocksWithShare
Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. FlockLib
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. implicit class MapExcludingMe[I <: E.ID, V] extends AnyRef

    A type classes for enrich the map

  2. trait NeighbouringQuery extends AnyRef

    This trait define a query to get information about the neighbours.

  3. case class OneHopNeighbourhoodNearestN(k: Int) extends (FlockLib.this)#NeighbouringQuery with Product with Serializable
  4. case class OneHopNeighbourhoodWithinRange(range: Double) extends (FlockLib.this)#NeighbouringQuery with Product with Serializable

    One hop strategy constrained by the distance

  5. case class RadiusBasedQuery(radius: Double) extends (FlockLib.this)#NeighbouringQuery with Product with Serializable

    Radius based strategy based on processes

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def align(velocity: Point3D, neighborhood: (FlockLib.this)#NeighbouringQuery): Point3D

    The align logic based on the Reynolds model: https://www.red3d.com/cwr/boids/

    The align logic based on the Reynolds model: https://www.red3d.com/cwr/boids/

    velocity

    the current velocity since it is based on a temporal model

    neighborhood

    the query to get the neighbours

    returns

    the new velocity

  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
  7. def cohesion(velocity: Point3D, neighborhood: (FlockLib.this)#NeighbouringQuery): Point3D

    The cohesion logic based on the Reynolds model: https://www.red3d.com/cwr/boids/

    The cohesion logic based on the Reynolds model: https://www.red3d.com/cwr/boids/

    velocity

    the current velocity since it is based on a temporal model

    neighborhood

    the query to get the neighbours

    returns

    the new velocity

  8. def cuckerSmale(velocity: Point3D, neighbouringQuery: (FlockLib.this)#NeighbouringQuery, strength: Double, epsilon: Double = 0.1): Point3D

    The flocking algorithm based on the Cucker-Smale model: https://arxiv.org/abs/2010.10693

    The flocking algorithm based on the Cucker-Smale model: https://arxiv.org/abs/2010.10693

    velocity

    the current velocity since it is based on a temporal model

    neighbouringQuery

    the query to get the neighbours

    strength

    the strength of the interaction

    epsilon

    the epsilon parameter of the model

    returns

    the new velocity

  9. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  10. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  11. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @IntrinsicCandidate() @native()
  12. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @IntrinsicCandidate() @native()
  13. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  14. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  15. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate() @native()
  16. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate() @native()
  17. def reynold(velocity: Point3D, visionRange: (FlockLib.this)#NeighbouringQuery, separationRange: (FlockLib.this)#NeighbouringQuery, separationFactor: Double, alignFactor: Double, cohesionFactor: Double): Point3D

    The flocking algorithm based on the Reynolds model: https://www.red3d.com/cwr/boids/

    The flocking algorithm based on the Reynolds model: https://www.red3d.com/cwr/boids/

    velocity

    the current velocity since it is based on a temporal model

    visionRange

    the vision range of the agent

    separationRange

    the separation range of the agent

    separationFactor

    the separation factor of the agent

    alignFactor

    the align factor of the agent

    cohesionFactor

    the cohesion factor of the agent

  18. def separation(velocity: Point3D, neighborhood: (FlockLib.this)#NeighbouringQuery): Point3D

    The seperation logic based on the Reynolds model: https://www.red3d.com/cwr/boids/

    The seperation logic based on the Reynolds model: https://www.red3d.com/cwr/boids/

    velocity

    the current velocity since it is based on a temporal model

    neighborhood

    query to get the neighbours

    returns

    the new velocity

  19. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  20. def toString(): String
    Definition Classes
    AnyRef → Any
  21. def vicsek(velocity: Point3D, neighbouringQuery: (FlockLib.this)#NeighbouringQuery, alpha: Double = 0.1, epsilon: Double = 0.1): Point3D

    Flocking model based on vicsek algorithm: https://it.wikipedia.org/wiki/Modello_di_Vicsek

    Flocking model based on vicsek algorithm: https://it.wikipedia.org/wiki/Modello_di_Vicsek

    velocity

    the current velocity since it is based on a temporal model

    neighbouringQuery

    the query to get the neighbours

    alpha

    the alpha parameter of the model

    epsilon

    the epsilon parameter of the model

    returns

    the new velocity

  22. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  23. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  24. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  25. case object OneHopNeighbourhood extends (FlockLib.this)#NeighbouringQuery with Product with Serializable

    One hop strategy, i.e., the standard model

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

    (Since version 9)

Inherited from AnyRef

Inherited from Any

Ungrouped