Fix EndSink highway: skip group when no horizontal overlap exists
DetectEndSinkGroups was forming highways for edges at different Y levels with NO shared corridor. The fallback (line 1585) used min-MaxX as collector when overlap detection failed, creating a false highway that truncated individual edge paths. Fix: skip the group entirely when TryResolveHorizontalOverlapInterval returns false. Edges at different Y levels render independently. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1582,8 +1582,9 @@ public sealed class WorkflowRenderSvgRenderer
|
|||||||
out var corridorStartX,
|
out var corridorStartX,
|
||||||
out var collectorX))
|
out var collectorX))
|
||||||
{
|
{
|
||||||
collectorX = corridorIntervals.Min(interval => interval.MaxX);
|
// No shared horizontal overlap — don't form a highway.
|
||||||
corridorStartX = corridorIntervals.Max(interval => interval.MinX);
|
// Edges at different Y levels should render independently.
|
||||||
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (collectorX <= corridorStartX + 18d)
|
if (collectorX <= corridorStartX + 18d)
|
||||||
|
|||||||
Reference in New Issue
Block a user