Merge page: outline every frame on the preview, and let it be tall

A sweep whose frames overlap by more than half reads as one photograph,
and the page's job is to show frames. Each footprint is walked along its
border and drawn in amber where it lands, so twelve frames look like
twelve and a misplaced one is visible as such. The preview may take most
of the page's height rather than 320 px.
This commit is contained in:
2026-09-19 15:24:20 +02:00
parent 75d2ceb23c
commit 30bd276d0b
2 changed files with 45 additions and 1 deletions
+10 -1
View File
@@ -139,8 +139,13 @@ export component MergePage inherits Rectangle {
// was found at: ghosting here is the alignment's error,
// and what it looks like is what the photographer is
// confirming.
// As tall as the picture needs up to most of the page,
// and as wide as it is at that height: a four-frame
// perspective merge is nearly square, a twelve-frame
// cylinder is a strip, and either should fill what it
// can rather than sit in a letterbox.
if root.preview.width > 0: Rectangle {
height: min(320px, parent.width * root.preview.height / max(1, root.preview.width));
height: min(root.height * 0.55, parent.width * root.preview.height / max(1, root.preview.width));
background: Theme.rule;
Image {
source: root.preview;
@@ -151,6 +156,10 @@ export component MergePage inherits Rectangle {
}
Caption { text: root.summary; wrap: word-wrap; }
Caption {
text: "Each frame is outlined in amber where it lands. Ghosting in an overlap is the alignment's error.";
wrap: word-wrap;
}
Segmented {
label: "Projection";