interface LinkingRule<T : Any!, P : Position<out P>!> : Serializable
An interface that represent an auto-linking logic for nodes within an environment.
computeNeighborhood |
Produces a new neighborhood for specified node considering its position. abstract fun computeNeighborhood(center: Node<T>!, env: Environment<T, P>!): Neighborhood<T>! |
isLocallyConsistent |
Some rules may require to be evaluated against multiple nodes until the situations gets consistent. For instance, a rule that connects the closest 10 nodes must be evaluated multiple times to get to the correct result (this is because a change in one neighbor may require a disconnection from another node to maintain exactly 10 connections). Most rules do not need such machinery (e.g., connecting to nodes within some statically defined range). abstract fun isLocallyConsistent(): Boolean |