Polygon

open class Polygon<P : Position2D<out P>>(environment: Environment<*, P>, randomGenerator: <Error class: unknown class>, nodes: Int, pointsInput: List<*>) : AbstractRandomDeployment<P>

Creates a new Polygon with the given points.

Parameters

nodes

the count of nodes that need to get displaced inside the polygon

pointsInput

the points of the polygon. The class does not check for "malformed" polygons (e.g. with intersections). If the provided points do not represent a valid polygon in bidimensional space, the behaviour of this class is undefined. There polygon is closed automatically (there is no need to pass the first point also as last element).

Constructors

Link copied to clipboard
constructor(environment: Environment<*, P>, randomGenerator: <Error class: unknown class>, nodes: Int, pointsInput: List<*>)

Functions

Link copied to clipboard

Optional LinkingRule associated to the deployment.

Link copied to clipboard
open operator override fun iterator(): MutableIterator<P>
Link copied to clipboard
fun <R> Iterable<R>.randomElement(randomGenerator: <Error class: unknown class>): R

Returns a random element of the Iterable using the provided randomGenerator.

Link copied to clipboard
fun <R> Iterable<R>.shuffled(randomGenerator: <Error class: unknown class>): Iterable<R>

Fisher–Yates shuffle algorithm using a RandomGenerator. More information on Wikipedia.

Link copied to clipboard
open override fun stream(): Stream<P>