Preliminary fix for #15948

This commit is contained in:
Daniel Sheppard 2024-05-03 16:47:43 -05:00
parent c6f833e83b
commit 542a548abd

View File

@ -405,7 +405,17 @@ class CableTraceSVG:
end = far[0].top_center
text_offset = 0
if len(near) > 1:
if len(near) > 1 and len(far) > 1:
start_center = sum([pos.bottom_center[0] for pos in near]) / len(near)
end_center = sum([pos.bottom_center[0] for pos in far]) / len(far)
center_x = (start_center + end_center) / 2
start = (center_x, start[1] + FANOUT_HEIGHT + FANOUT_LEG_HEIGHT)
end = (center_x, end[1] - FANOUT_HEIGHT - FANOUT_LEG_HEIGHT)
text_offset -= FANOUT_HEIGHT + FANOUT_LEG_HEIGHT / 2
self.draw_fanin(start, near, color)
self.draw_fanout(end, far, color)
elif len(near) > 1:
# Handle Fan-In - change start position to be directly below start
start = (end[0], start[1] + FANOUT_HEIGHT + FANOUT_LEG_HEIGHT)
self.draw_fanin(start, near, color)