### Layout Phase Implementation Example Source: https://eclipse.dev/elk/documentation/algorithmdevelopers/algorithmimplementation/algorithmstructure.html An example of implementing the ILayoutPhase interface for a layout phase. ```java public class NodeOrderer implements ILayoutPhase { @Override public LayoutProcessorConfiguration getLayoutProcessorConfiguration(ElkNode graph) { // To start with, the phase won't require any layout processors return LayoutProcessorConfiguration.create(); } public void process(ElkNode ElkNode, IElkProgressMonitor progressMonitor) { // This will be the entry point to your phase } } ``` -------------------------------- ### White Box Test Setup Source: https://eclipse.dev/elk/documentation/algorithmdevelopers/unittesting.html Example of a white box test method specifying processors to run before and after. ```Java @TestBeforeProcessor(NetworkSimplexLayerer.class) @TestAfterProcessor(NetworkSimplexLayerer.class) public void testNetworkSimplexLayerer(Object graph) { LGraph lGraph = (LGraph) graph; // Test things... } ``` -------------------------------- ### Pseudo Positions Example Source: https://eclipse.dev/elk/blog/posts/2023/23-01-09-constraining-the-model.html Example of adding pseudo positions to nodes. ```klighd layout [position: 100, 0] ```