ux(provisioning): portrait arrow points right, not up

In portrait orientation the cable/ribbon is on the left, so the
physical 'up' edge of the hung frame corresponds to the right side
of the rendered diagram — not the top. Swap the up-arrow inside the
portrait screen for a right-arrow so the diagram actually shows the
user which edge will be up when they hang the frame.

Landscape diagram is unchanged (cable on bottom → up is up).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-09 11:19:53 -04:00
parent 251fafa01b
commit e1eab1fdab
7 changed files with 15 additions and 2 deletions
+14 -1
View File
@@ -118,6 +118,19 @@ def up_arrow(draw, cx, cy, half_w=12, h=22, color=BK):
], fill=color)
def right_arrow(draw, cx, cy, half_h=12, w=22, color=BK):
"""Solid filled triangle pointing right, centered on (cx, cy).
Used in the portrait diagram: with the cable/ribbon on the left,
the physical 'up' edge of the frame (when hung) is the right side
of the rendered diagram, so the arrow points that way."""
draw.polygon([
(cx + w // 2, cy), # tip
(cx - w // 2, cy - half_h), # base top
(cx - w // 2, cy + half_h), # base bottom
], fill=color)
def orientation_diagrams(draw, accent, show_active_ls=True):
"""Draw both orientation diagrams in the centre panel.
@@ -159,7 +172,7 @@ def orientation_diagrams(draw, accent, show_active_ls=True):
draw.rectangle([pt_x-pr_w, pt_y, pt_x-1, pt_y+pr_h-1], fill=BK)
draw.rectangle([pt_x, pt_y, pt_x+pt_w-1, pt_y+pt_h-1], outline=BK, width=3)
up_arrow(draw, pt_x + pt_w // 2, pt_y + pt_h // 2, half_w=12, h=22)
right_arrow(draw, pt_x + pt_w // 2, pt_y + pt_h // 2, half_h=12, w=22)
# ═══════════════════════════════════════════════════════════════════════════════