Draw parallel edges between the same pair as curves (like the Flutter Admin) #2

Closed
opened 2026-10-02 05:29:22 +00:00 by alopez · 0 comments
Owner

When the selected vertex has several edges to the same neighbour, the explorer draws that neighbour once per edge (one node labelled with edge A, another with edge B). That's a rendering choice, not a bug: the Flutter Admin draws one node per neighbour and bows parallel edges apart as Bézier curves (a single edge stays a straight line).

To match it:

  1. Group the neighbours by vertex: one node per neighbouring vertex, carrying all its edges (label + direction).
  2. Draw a single edge as a line; draw N parallel edges as curves with alternating offsets, each label placed at its curve's midpoint.
  3. Needs a curve primitive in Meikaku's CANVAS_PAINTER (alopez/meikaku#17). libui-ng already has uiDrawPathBezierTo.

Alfred's call (2026-10-02): a rendering decision rather than a defect. He may take it as a Meikaku exercise.

When the selected vertex has several edges to the same neighbour, the explorer draws that neighbour once per edge (one node labelled with edge A, another with edge B). That's a rendering choice, not a bug: the Flutter Admin draws one node per neighbour and bows parallel edges apart as Bézier curves (a single edge stays a straight line). To match it: 1. Group the neighbours by vertex: one node per neighbouring vertex, carrying all its edges (label + direction). 2. Draw a single edge as a line; draw N parallel edges as curves with alternating offsets, each label placed at its curve's midpoint. 3. Needs a curve primitive in Meikaku's CANVAS_PAINTER (alopez/meikaku#17). libui-ng already has uiDrawPathBezierTo. Alfred's call (2026-10-02): a rendering decision rather than a defect. He may take it as a Meikaku exercise.
alopez changed title from A neighbour with several edges to the selected vertex is drawn once per edge to Draw parallel edges between the same pair as curves (like the Flutter Admin) 2026-10-02 05:33:05 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
alopez/meikaku-explorer#2
No description provided.