ImageEnvironmentWithGraph

class ImageEnvironmentWithGraph<T> @JvmOverloads constructor(incarnation: Incarnation<T, Euclidean2DPosition>, path: String, zoom: Double = 1.0, dx: Double = 0.0, dy: Double = 0.0, obstaclesColor: Int = Color.BLACK.rgb, roomsColor: Int = Color.BLUE.rgb) : ImageEnvironment<T> , EuclideanPhysics2DEnvironmentWithGraph<RectObstacle2D<Euclidean2DPosition>, T, ConvexPolygon, Euclidean2DPassage> (source)

An ImageEnvironment providing an Euclidean2DNavigationGraph. The NaviGator algorithm is used to produce such graph (see generateNavigationGraph). The positions where to plant initial seeds should be specified directly in the image, marking each area of the environment with one or more pixels of a given color (defaults to blue).

Constructors

Link copied to clipboard
constructor(incarnation: Incarnation<T, Euclidean2DPosition>, path: String, zoom: Double = 1.0, dx: Double = 0.0, dy: Double = 0.0, obstaclesColor: Int = Color.BLACK.rgb, roomsColor: Int = Color.BLUE.rgb)

Properties

Link copied to clipboard
override val dimensions: Int
Link copied to clipboard
@get:Nonnull
open override val globalReactions: ListSet<GlobalReaction<T>>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
override val isTerminated: Boolean
Link copied to clipboard
@get:Nonnull
override val layers: ListSet<Layer<T, Euclidean2DPosition>>
Link copied to clipboard
Link copied to clipboard
override val nodeCount: Int
Link copied to clipboard
@get:Nonnull
override val nodes: ListSet<Node<T>>
Link copied to clipboard
Link copied to clipboard
override val offset: DoubleArray
Link copied to clipboard
open override val origin: Euclidean2DPosition
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
@get:Nullable
open override val simulationOrNull: Simulation<T, Euclidean2DPosition>?
Link copied to clipboard
override val size: DoubleArray
Link copied to clipboard
@get:Nonnull
open override val sizeInDistanceUnits: DoubleArray

Functions

Link copied to clipboard
open override fun addGlobalReaction(@Nonnull reaction: GlobalReaction<T>)
Link copied to clipboard
override fun addLayer(@Nonnull molecule: Molecule, @Nonnull layer: Layer<T, Euclidean2DPosition>)
Link copied to clipboard
override fun addNode(@Nonnull node: Node<T>, @Nonnull position: Euclidean2DPosition): Boolean
Link copied to clipboard
Link copied to clipboard
open override fun addTerminator(@NotNull terminator: TerminationPredicate<T, Euclidean2DPosition>)
Link copied to clipboard
open override fun farthestPositionReachable(node: Node<T>, desiredPosition: Euclidean2DPosition, hitboxRadius: Double): Euclidean2DPosition
Link copied to clipboard
override fun forEach(p0: Consumer<in Node<T>>)
Link copied to clipboard
override fun getDistanceBetweenNodes(@Nonnull n1: Node<T>, @Nonnull n2: Node<T>): Double
Link copied to clipboard
open override fun getHeading(node: Node<T>): Euclidean2DPosition
Link copied to clipboard
@Nullable
override fun getLayer(@Nonnull molecule: Molecule): Layer<T, Euclidean2DPosition>?
Link copied to clipboard
Link copied to clipboard
override fun getNodeByID(id: Int): Node<T>
Link copied to clipboard
open override fun getNodesWithin(shape: Euclidean2DShape): List<Node<T>>
Link copied to clipboard
override fun getNodesWithinRange(@Nonnull node: Node<T>, range: Double): ListSet<Node<T>>
override fun getNodesWithinRange(@Nonnull position: Euclidean2DPosition, range: Double): ListSet<Node<T>>
Link copied to clipboard
Link copied to clipboard
open override fun getShape(node: Node<T>): Euclidean2DShape
Link copied to clipboard
open override fun hasMobileObstacles(): Boolean
Link copied to clipboard
Link copied to clipboard
operator override fun iterator(): Iterator<Node<T>>
Link copied to clipboard
open fun makePosition(coordinates: List<Number>): Euclidean2DPosition
open override fun makePosition(vararg coordinates: Number): Euclidean2DPosition
Link copied to clipboard
open fun moveNode(node: Node<T>, direction: Euclidean2DPosition)
Link copied to clipboard
open override fun moveNodeToPosition(@Nonnull node: Node<T>, newPosition: Euclidean2DPosition)
Link copied to clipboard
Link copied to clipboard
open override fun removeGlobalReaction(@Nonnull reaction: GlobalReaction<T>)
Link copied to clipboard
override fun removeNode(@Nonnull node: Node<T>)
Link copied to clipboard
Link copied to clipboard
open override fun setHeading(node: Node<T>, direction: Euclidean2DPosition)
Link copied to clipboard
override fun spliterator(): Spliterator<Node<T>>
Link copied to clipboard
open override fun toString(): String