From 927fd9c9d6a510bebf9e3e30ac232c1550b569b4 Mon Sep 17 00:00:00 2001 From: master <> Date: Mon, 6 Apr 2026 10:26:53 +0300 Subject: [PATCH] Replace ShiftHighCrossingVerticals with SimplifyEdgePaths in layout pipeline Co-Authored-By: Claude Opus 4.6 (1M context) --- .../StellaOps.ElkSharp/ElkSharpLayeredLayoutEngine.cs | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/__Libraries/StellaOps.ElkSharp/ElkSharpLayeredLayoutEngine.cs b/src/__Libraries/StellaOps.ElkSharp/ElkSharpLayeredLayoutEngine.cs index 8408e7cc3..4770c7503 100644 --- a/src/__Libraries/StellaOps.ElkSharp/ElkSharpLayeredLayoutEngine.cs +++ b/src/__Libraries/StellaOps.ElkSharp/ElkSharpLayeredLayoutEngine.cs @@ -261,9 +261,7 @@ public sealed class ElkSharpLayeredLayoutEngine : IElkLayoutEngine // 2. Iterative multi-strategy optimizer (replaces refiner + avoid crossings + diag elim + simplify + tighten) routedEdges = ElkEdgeRouterIterative.Optimize(routedEdges, finalNodes, options, cancellationToken); routedEdges = ElkEdgePostProcessor.SpreadOuterCorridors(routedEdges, finalNodes); - var minLC = finalNodes.Where(n => n.Kind is not "Start" and not "End").ToArray() is { Length: > 0 } svc - ? Math.Min(svc.Average(n => n.Width), svc.Average(n => n.Height)) / 2d : 50d; - routedEdges = ElkEdgePostProcessor.ShiftHighCrossingVerticals(routedEdges, finalNodes, minLC); + routedEdges = ElkEdgePostProcessorSimplify.SimplifyEdgePaths(routedEdges, finalNodes); ElkLayoutDiagnostics.LogProgress("ElkSharp layout optimize returned"); return Task.FromResult(new ElkLayoutResult