Class LimitedContinuos2D
-
- All Implemented Interfaces:
-
it.unibo.alchemist.model.Environment
,it.unibo.alchemist.model.EuclideanEnvironment
,it.unibo.alchemist.model.environments.Euclidean2DEnvironment
,it.unibo.alchemist.model.physics.PhysicsEnvironment
,it.unibo.alchemist.model.physics.environments.Physics2DEnvironment
,java.io.Serializable
,java.lang.Iterable
public abstract class LimitedContinuos2D<T> extends ContinuousPhysics2DEnvironment<T>
This class represents a 2D continuous environment with spatial limitations. Those limitations will prevent nodes to move in positions which are not allowed.
-
-
Field Summary
Fields Modifier and Type Field Description public final Euclidean2DShapeFactory
shapeFactory
public final ListSet<GlobalReaction<T>>
globalReactions
public final ListSet<Node<T>>
nodes
public transient Incarnation<T, P>
incarnation
public transient Simulation<T, P>
simulation
-
Constructor Summary
Constructors Constructor Description LimitedContinuos2D(Incarnation<T, Euclidean2DPosition> incarnation)
-
Method Summary
Modifier and Type Method Description void
moveNodeToPosition(@Nonnull() Node<T> node, Euclidean2DPosition newPos)
Moves the node to the farthestPositionReachable towards the desired newPosition. -
Methods inherited from class it.unibo.alchemist.model.physics.environments.ContinuousPhysics2DEnvironment
farthestPositionReachable, getHeading, getNodesWithin, getShape, getShapeFactory, makePosition, setHeading
-
Methods inherited from class it.unibo.alchemist.model.environments.AbstractEnvironment
addGlobalReaction, addLayer, addNode, addTerminator, forEach, getDistanceBetweenNodes, getGlobalReactions, getIncarnation, getLayer, getLayers, getLinkingRule, getNeighborhood, getNodeByID, getNodeCount, getNodes, getNodesWithinRange, getPosition, getSimulation, getSizeInDistanceUnits, isTerminated, iterator, removeGlobalReaction, removeNode, setLinkingRule, setSimulation, spliterator, toString
-
Methods inherited from class it.unibo.alchemist.model.environments.Abstract2DEnvironment
getDimensions, getOffset, getSize, moveNodeToPosition
-
Methods inherited from class it.unibo.alchemist.model.environments.Euclidean2DEnvironment
getOrigin, makePosition
-
Methods inherited from class it.unibo.alchemist.model.Environment
makePosition
-
Methods inherited from class java.lang.Iterable
iterator, spliterator
-
Methods inherited from class it.unibo.alchemist.model.EuclideanEnvironment
getOrigin, moveNode
-
Methods inherited from class it.unibo.alchemist.model.physics.PhysicsEnvironment
farthestPositionReachable, getHeading, getShape, getShapeFactory
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
Constructor Detail
-
LimitedContinuos2D
LimitedContinuos2D(Incarnation<T, Euclidean2DPosition> incarnation)
- Parameters:
incarnation
- the current incarnation.
-
-
Method Detail
-
moveNodeToPosition
void moveNodeToPosition(@Nonnull() Node<T> node, Euclidean2DPosition newPos)
Moves the node to the farthestPositionReachable towards the desired newPosition. If the node is shapeless, it is simply moved to newPosition.
-
-
-
-