diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/REPORT.md b/Standalone/Research/WorldAssemblerM3/Linux126/REPORT.md
new file mode 100644
index 0000000..0bc84c6
--- /dev/null
+++ b/Standalone/Research/WorldAssemblerM3/Linux126/REPORT.md
@@ -0,0 +1,20 @@
+# Linux126 — passage preparation
+
+**No-go for the L109 speed bar.** Two exact-preserving preparation filters were tried. They reduced floor-profile calls by 20–23%, but did not reduce segment/sample pair counts or near-ready time enough. The tested source was restored after the host build.
+
+The L125 overlap is from each segment’s sweep bounds, expanded by its radius and the 4.335 m route reach. Adjacent segment bounds revisit the same samples. The feature slab only stamps outside sentinels; it does not create the pair count. Floor-profile and shell work multiply the cost of each pair. L125’s LOD0 pair overlap was 67.2%, 72.0%, 72.0%, and 67.6% for S0–S3. The first filter cut floor-profile calls from 3.107M→2.457M, 8.487M→6.549M, 8.303M→6.418M, and 5.269M→4.169M respectively.
+
+Five interleaved L80 measurements per cell, on a quiet machine (load 0.34, idle 98.2%):
+
+| Stratum | W8 near-ready vs L109 | W12 near-ready vs L109 |
+| --- | ---: | ---: |
+| S0 | +3.20% | +4.63% |
+| S1 | +9.34% | +7.03% |
+| S2 | +6.16% | +7.68% |
+| S3 | +10.97% | +8.65% |
+
+L126 was +0.52% to +2.13% vs L125 in six cells and within 0.20% in the other two. All eight cells missed L109.
+
+Quality stayed unchanged: 264 fast-tier checks passed; walkability passed 21,425/21,425 samples; the floor probe remained 7.884 mm; four seam pairs matched all 4,900 shared samples bit-for-bit; all 23 captures were verified and byte-identical to L125. Clang/GCC W1/W8/W12 hashes matched, and the v225 baselines were unchanged. The Linux VFHostEditor build succeeded in 37.60 s with `-NoUBA -MaxParallelActions=4` and no `prlimit`.
+
+No evaluator bump or baseline update was needed. Timing and count logs are under `Saved/Linux/l126/`; captures are under `captures/`.
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/RunL126Captures.py b/Standalone/Research/WorldAssemblerM3/Linux126/RunL126Captures.py
new file mode 100644
index 0000000..d2530e0
--- /dev/null
+++ b/Standalone/Research/WorldAssemblerM3/Linux126/RunL126Captures.py
@@ -0,0 +1,98 @@
+#!/usr/bin/env python3
+"""Render the 23 L119 camera poses with the L126 candidate."""
+from __future__ import annotations
+
+import importlib.util
+import json
+import math
+import os
+from pathlib import Path
+
+ROOT = Path(__file__).resolve().parents[4]
+RESEARCH = Path(__file__).resolve().parent
+CAPTURES = RESEARCH / "captures"
+SAVED = ROOT / "Saved/Linux/l126/captures"
+BASELINE_INDEX = (ROOT / "Standalone/Research/WorldAssemblerM3/Linux119"
+ / "captures/L119/capture-index.json")
+LAYOUT = ROOT / "Saved/Linux/l126/hashes/owner4-surface-world-w12-clang.layout.json"
+CLANG = ROOT / os.environ.get("L126_CAPTURE_CLANG",
+ "Saved/Linux/l126/design2/bin/VoxelForgeCoreHeadless-l126-design2-clang")
+RENDERER = ROOT / os.environ.get("L126_CAPTURE_RENDERER",
+ "Saved/Linux/l126/design2/bin/VoxelForgeOffscreenCapture-l126-design2-clang")
+HELPER_PATH = ROOT / "Standalone/Research/WorldAssemblerM3/Linux113/RunL113Captures.py"
+
+SPEC = importlib.util.spec_from_file_location("l113_capture_helpers", HELPER_PATH)
+if SPEC is None or SPEC.loader is None:
+ raise SystemExit("cannot load the verified L113 capture helpers")
+HELPERS = importlib.util.module_from_spec(SPEC)
+SPEC.loader.exec_module(HELPERS)
+HELPERS.RESEARCH = RESEARCH
+HELPERS.CAPTURES = CAPTURES
+HELPERS.SAVED = SAVED
+HELPERS.BINARIES = {"L126": CLANG}
+HELPERS.RENDERERS = {"L126": RENDERER}
+
+
+def main() -> int:
+ if any(not path.is_file() for path in (BASELINE_INDEX, LAYOUT, CLANG, RENDERER)):
+ raise SystemExit("missing L119 camera set, L126 layout, or capture binary")
+ baseline = json.loads(BASELINE_INDEX.read_text(encoding="utf-8"))
+ layout = json.loads(LAYOUT.read_text(encoding="utf-8"))
+ rows = []
+ CAPTURES.mkdir(parents=True, exist_ok=True)
+ SAVED.mkdir(parents=True, exist_ok=True)
+ for view in baseline["captures"]:
+ row = HELPERS.capture("L126", view, layout)
+ row["variant"] = "L126-v225"
+ if view["kind"] == "rock-floor-close":
+ scene = ROOT / row["scene"]
+ anchor = HELPERS.nearest_surface_anchor(scene, view["target"], margin_m=5.0,
+ preferred_normal=(0.0, 0.0, 1.0), minimum_alignment=0.85)
+ alignment = HELPERS.dot(anchor["normal"], (0.0, 0.0, 1.0))
+ camera_distance = math.dist(row["camera_actual_m"], anchor["position_m"])
+ row.update({"floor_anchor_position_m": anchor["position_m"],
+ "floor_anchor_normal": anchor["normal"],
+ "closeup_camera_to_floor_distance_m": camera_distance,
+ "closeup_floor_normal_alignment": alignment,
+ "verified_upward_floor_normal": alignment >= 0.85})
+ if (not row["verified"] or not 2.0 <= camera_distance <= 3.2
+ or anchor["distance_m"] > 0.25 or alignment < 0.85
+ or row["drawn_triangles"] <= 0
+ or row["pixel_quality_status"] not in
+ ("pass", "low_contrast_geometry_visible")):
+ raise RuntimeError(f"L126 floor close-up failed at {view['name']}")
+ rows.append(row)
+ if len(rows) != len(baseline["captures"]) or len(rows) != 23:
+ raise RuntimeError(f"expected all 23 L119 views, captured {len(rows)}")
+ index = CAPTURES / "L126" / "capture-index.json"
+ index.parent.mkdir(parents=True, exist_ok=True)
+ index.write_text(json.dumps({"captures": rows}, indent=2) + "\n",
+ encoding="utf-8")
+
+ html = ["",
+ "
L119 / L126 tunnel capture comparison",
+ "", "L119 / L126 v225: identical views
"]
+ old_by_name = {Path(row["capture"]).name: row for row in baseline["captures"]}
+ for row in rows:
+ name = Path(row["capture"]).name
+ old = old_by_name[name]
+ old_path = os.path.relpath(ROOT / "Standalone/Research/WorldAssemblerM3/Linux119"
+ / old["capture"], CAPTURES)
+ new_path = os.path.relpath(RESEARCH / row["capture"], CAPTURES)
+ html.extend(["", f"{row['passage']} — {row['station']}
",
+ f"{row['kind']} · L119 {old['pixel_quality_status']} · "
+ f"L126 {row['pixel_quality_status']}
", "",
+ f"
L119
",
+ f"
L126 v225
",
+ "
", ""])
+ (CAPTURES / "COMPARE.html").write_text("\n".join(html) + "\n", encoding="utf-8")
+ print(f"[L126Captures] rendered={len(rows)} views index={index.relative_to(ROOT)}",
+ flush=True)
+ return 0
+
+
+if __name__ == "__main__":
+ raise SystemExit(main())
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/RunL126Timing.py b/Standalone/Research/WorldAssemblerM3/Linux126/RunL126Timing.py
new file mode 100644
index 0000000..a78449b
--- /dev/null
+++ b/Standalone/Research/WorldAssemblerM3/Linux126/RunL126Timing.py
@@ -0,0 +1,136 @@
+#!/usr/bin/env python3
+"""Five interleaved L80 readiness runs for L109, L125 and L126."""
+from __future__ import annotations
+
+import json
+import os
+import re
+import statistics
+import subprocess
+import time
+from pathlib import Path
+
+ROOT = Path(__file__).resolve().parents[4]
+OUT = ROOT / os.environ.get("L126_TIMING_DIR", "Saved/Linux/l126/timing")
+DATA = ROOT / "Standalone/data/owner_world.json"
+BINARIES = {
+ "L109": ROOT / "Saved/Linux/l109/bin-final/VoxelForgeCoreHeadless-l109-clang",
+ "L125": ROOT / "Saved/Linux/l125/bin/VoxelForgeCoreHeadless-l125-clang",
+ "L126": ROOT / os.environ.get("L126_CANDIDATE_BINARY",
+ "Saved/Linux/l126/design2/bin/VoxelForgeCoreHeadless-l126-design2-clang"),
+}
+CAMERAS = {
+ 0: (8.0, 16.0, -372.2626953125),
+ 1: (25.8369140625, 3.19921875, -737.0),
+ 2: (19.166015625, -14.2001953125, -753.3740234375),
+ 3: (-20.0625, -5.068359375, -900.353515625),
+}
+PIPELINE = re.compile(r"^\[StreamPipeline\] (.*)$", re.M)
+FIELDS = re.compile(r"([a-zA-Z0-9_]+)=([^ ]+)")
+NEAR = re.compile(
+ r"^\[WorldAssemblerNearLODReady\] lods=0-2 tiles=(\d+)/(\d+) cold_ready_s=([0-9.]+)$",
+ re.M)
+
+
+def run(strate: int, workers: int, version: str, phase: str, replicate: int) -> dict:
+ OUT.mkdir(parents=True, exist_ok=True)
+ label = f"s{strate}-w{workers}-{version}-{phase}{replicate}"
+ log = OUT / f"{label}.log"
+ camera = ",".join(f"{value:.12f}" for value in CAMERAS[strate]) + ",0,0"
+ command = [
+ "taskset", "-c", "0-11", "prlimit", "--as=6442450944", "--",
+ "timeout", "1740s", str(BINARIES[version]), str(DATA),
+ "--world-assembler-prototype", "--stream-benchmark", "--stream-pipeline",
+ f"--workers={workers}", "--clip-radius=3", "--max-clip-level=8",
+ "--max-level=8", f"--camera={camera}", "--profile-lod-work",
+ "--stream-scheduler-policy=3",
+ ]
+ started = time.monotonic()
+ with log.open("w", encoding="utf-8") as output:
+ result = subprocess.run(command, cwd=ROOT, stdout=output,
+ stderr=subprocess.STDOUT, check=False, timeout=1740)
+ content = log.read_text(encoding="utf-8", errors="replace")
+ pipeline_match, near_match = PIPELINE.search(content), NEAR.search(content)
+ if result.returncode or pipeline_match is None or near_match is None:
+ raise SystemExit(f"readiness run failed or incomplete: {log}; exit={result.returncode}")
+ pipeline = dict(FIELDS.findall(pipeline_match.group(1)))
+ row = {"strate": strate, "workers": workers, "version": version,
+ "phase": phase, "replicate": replicate, "exit_code": result.returncode,
+ "wall_s": round(time.monotonic() - started, 3),
+ "lod02_ready_s": float(near_match.group(3)),
+ "whole_view_ready_s": float(pipeline["whole_view_ready"].removesuffix("s")),
+ "whole_tiles": int(pipeline["whole_tiles"].split("/")[0]),
+ "log": str(log.relative_to(ROOT))}
+ print("[L126TimingRun] " + json.dumps(row, sort_keys=True), flush=True)
+ return row
+
+
+def cpu_idle_percent(interval_s: float = 2.0) -> float:
+ def totals() -> tuple[int, int]:
+ fields = Path("/proc/stat").read_text(encoding="utf-8").splitlines()[0].split()
+ values = [int(value) for value in fields[1:]]
+ return sum(values), values[3] + (values[4] if len(values) > 4 else 0)
+ before_total, before_idle = totals()
+ time.sleep(interval_s)
+ after_total, after_idle = totals()
+ return 100.0 * (after_idle-before_idle) / max(1, after_total-before_total)
+
+
+def main() -> int:
+ if not DATA.is_file() or any(not binary.is_file() for binary in BINARIES.values()):
+ raise SystemExit("missing L109/L125/L126 timing input")
+ OUT.mkdir(parents=True, exist_ok=True)
+ load_1m, idle_pct = os.getloadavg()[0], cpu_idle_percent()
+ uptime = subprocess.run(["uptime"], cwd=ROOT, text=True,
+ capture_output=True, check=True).stdout.strip()
+ top = subprocess.run(["ps", "-eo", "pid,pcpu,comm", "--sort=-pcpu"],
+ cwd=ROOT, text=True, capture_output=True, check=True).stdout
+ (OUT / "machine-load-before.txt").write_text(
+ f"uptime: {uptime}\n1-minute load: {load_1m:.2f}\n"
+ f"2-second CPU idle: {idle_pct:.1f}%\ntop CPU users:\n{top}", encoding="utf-8")
+ print(f"[L126TimingGate] load_1m={load_1m:.2f} cpu_idle_2s={idle_pct:.1f}%",
+ flush=True)
+ if load_1m >= 0.9 or idle_pct < 97.0:
+ raise SystemExit("timing refused: machine is above the quiet-load gate")
+
+ rows = []
+ versions = ("L109", "L125", "L126")
+ for strate in range(4):
+ for workers in (8, 12):
+ for version in versions:
+ run(strate, workers, version, "warmup", 0)
+ for replicate in range(1, 6):
+ offset = (replicate - 1) % len(versions)
+ order = versions[offset:] + versions[:offset]
+ for version in order:
+ rows.append(run(strate, workers, version, "measured", replicate))
+ (OUT / "runs-partial.json").write_text(
+ json.dumps(rows, indent=2) + "\n", encoding="utf-8")
+
+ summary = []
+ for strate in range(4):
+ for workers in (8, 12):
+ item = {"strate": strate, "workers": workers, "replicates": 5}
+ medians = {}
+ for version in versions:
+ group = [row for row in rows if row["strate"] == strate
+ and row["workers"] == workers and row["version"] == version]
+ medians[version] = {}
+ for key in ("lod02_ready_s", "whole_view_ready_s"):
+ values = [row[key] for row in group]
+ medians[version][key] = statistics.median(values)
+ item[f"{version}_{key}_values"] = values
+ item[f"{version}_{key}_median"] = medians[version][key]
+ for comparison in ("L109", "L125"):
+ for key in ("lod02_ready_s", "whole_view_ready_s"):
+ item[f"L126_vs_{comparison}_{key}_delta_pct"] = round(
+ 100.0 * (medians["L126"][key] / medians[comparison][key]-1.0), 2)
+ summary.append(item)
+ (OUT / "summary.json").write_text(
+ json.dumps({"runs": rows, "summary": summary}, indent=2) + "\n",
+ encoding="utf-8")
+ return 0
+
+
+if __name__ == "__main__":
+ raise SystemExit(main())
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/COMPARE.html b/Standalone/Research/WorldAssemblerM3/Linux126/captures/COMPARE.html
new file mode 100644
index 0000000..815023a
--- /dev/null
+++ b/Standalone/Research/WorldAssemblerM3/Linux126/captures/COMPARE.html
@@ -0,0 +1,188 @@
+
+L119 / L126 tunnel capture comparison
+
+L119 / L126 v225: identical views
+
+passage/0-1/0 — rock-floor/401.7m
+rock-floor-close · L119 pass · L126 pass
+
+
L119
+
L126 v225
+
+
+
+passage/0-1/0 — rock-floor/792.8m
+rock-floor-close · L119 pass · L126 pass
+
+
L119
+
L126 v225
+
+
+
+passage/0-1/0 — rock-floor/1634.5m
+rock-floor-close · L119 pass · L126 pass
+
+
L119
+
L126 v225
+
+
+
+passage/1-2/0 — rock-floor/27.0m
+rock-floor-close · L119 pass · L126 pass
+
+
L119
+
L126 v225
+
+
+
+passage/1-2/0 — rock-floor/52.9m
+rock-floor-close · L119 pass · L126 pass
+
+
L119
+
L126 v225
+
+
+
+passage/1-2/0 — rock-floor/78.9m
+rock-floor-close · L119 pass · L126 pass
+
+
L119
+
L126 v225
+
+
+
+passage/2-3/0 — rock-floor/323.4m
+rock-floor-close · L119 low_contrast_geometry_visible · L126 low_contrast_geometry_visible
+
+
L119
+
L126 v225
+
+
+
+passage/2-3/0 — rock-floor/333.4m
+rock-floor-close · L119 pass · L126 pass
+
+
L119
+
L126 v225
+
+
+
+passage/2-3/0 — rock-floor/343.4m
+rock-floor-close · L119 pass · L126 pass
+
+
L119
+
L126 v225
+
+
+
+passage/0-1/0 — section-1/4m-outside
+open-air-close · L119 pass · L126 pass
+
+
L119
+
L126 v225
+
+
+
+passage/0-1/0 — section-1/4m-interior-wall
+open-air-close · L119 low_contrast_geometry_visible · L126 low_contrast_geometry_visible
+
+
L119
+
L126 v225
+
+
+
+passage/0-1/0 — section-2/4m-outside
+open-air-close · L119 pass · L126 pass
+
+
L119
+
L126 v225
+
+
+
+passage/0-1/0 — section-2/4m-interior-wall
+open-air-close · L119 pass · L126 pass
+
+
L119
+
L126 v225
+
+
+
+passage/0-1/0 — section-3/4m-outside
+open-air-close · L119 pass · L126 pass
+
+
L119
+
L126 v225
+
+
+
+passage/0-1/0 — section-3/4m-interior-wall
+open-air-close · L119 pass · L126 pass
+
+
L119
+
L126 v225
+
+
+
+passage/1-2/0 — section-1/4m-outside
+open-air-close · L119 pass · L126 pass
+
+
L119
+
L126 v225
+
+
+
+passage/1-2/0 — section-1/4m-interior-wall
+open-air-close · L119 pass · L126 pass
+
+
L119
+
L126 v225
+
+
+
+passage/1-2/0 — section-2/4m-outside
+open-air-close · L119 pass · L126 pass
+
+
L119
+
L126 v225
+
+
+
+passage/1-2/0 — section-2/4m-interior-wall
+open-air-close · L119 pass · L126 pass
+
+
L119
+
L126 v225
+
+
+
+passage/2-3/0 — section-1/4m-outside
+open-air-close · L119 low_contrast_geometry_visible · L126 low_contrast_geometry_visible
+
+
L119
+
L126 v225
+
+
+
+passage/2-3/0 — section-1/4m-interior-wall
+open-air-close · L119 low_contrast_geometry_visible · L126 low_contrast_geometry_visible
+
+
L119
+
L126 v225
+
+
+
+passage/2-3/0 — section-2/4m-outside
+open-air-close · L119 pass · L126 pass
+
+
L119
+
L126 v225
+
+
+
+passage/2-3/0 — section-2/4m-interior-wall
+open-air-close · L119 pass · L126 pass
+
+
L119
+
L126 v225
+
+
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/capture-index.json b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/capture-index.json
new file mode 100644
index 0000000..507505c
--- /dev/null
+++ b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/capture-index.json
@@ -0,0 +1,1562 @@
+{
+ "captures": [
+ {
+ "name": "passage-0-1-0-rock-floor-station-1",
+ "passage": "passage/0-1/0",
+ "kind": "rock-floor-close",
+ "station": "rock-floor/401.7m",
+ "camera": [
+ -9.24648786798055,
+ 19.798675033837775,
+ -443.9636296749357
+ ],
+ "target": [
+ -7.026884524505579,
+ 20.857335392121104,
+ -445.66373993191075
+ ],
+ "yaw": 64.50075976736525,
+ "pitch": -34.65771934187305,
+ "focus": [
+ -7.026884524505579,
+ 20.857335392121104,
+ -445.66373993191075
+ ],
+ "center_z": -445.66373993191075,
+ "route_distance_m": 401.6612010038529,
+ "requested_route_distance_m": 401.6612010038529,
+ "route_length_m": 2026.6238040154117,
+ "planned_floor_m": -445.66373993191075,
+ "planned_grade_deg": 10.372328677972732,
+ "variant": "L126-v225",
+ "capture": "captures/L126/passage-0-1-0-rock-floor-station-1.png",
+ "scene": "Saved/Linux/l126/captures/L126/passage-0-1-0-rock-floor-station-1.vfmesh",
+ "drawn_triangles": 122294,
+ "source_triangles": 146798,
+ "verified": true,
+ "pixel_quality_status": "pass",
+ "route_distance_actual_m": 401.6612010038529,
+ "route_station_adjustment_m": 0.0,
+ "closeup_camera_target_distance_m": null,
+ "closeup_target_surface_distance_m": null,
+ "closeup_predicted_target_offset_m": null,
+ "closeup_wall_normal_alignment": null,
+ "fallback_kind": null,
+ "fallback_surface_distance_m": null,
+ "camera_actual_m": [
+ -9.24648786798055,
+ 19.798675033837775,
+ -443.9636296749357
+ ],
+ "target_actual_m": [
+ -7.026884524505579,
+ 20.857335392121104,
+ -445.66373993191075
+ ],
+ "logs": [
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-rock-floor-station-1-mesh.log",
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-rock-floor-station-1-render.log",
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-rock-floor-station-1-quality.log"
+ ],
+ "floor_anchor_position_m": [
+ -7.026885053959959,
+ 20.857335155432953,
+ -445.66374310012867
+ ],
+ "floor_anchor_normal": [
+ 0.16438021494383692,
+ 0.07357583212203939,
+ 0.9836491965444629
+ ],
+ "closeup_camera_to_floor_distance_m": 2.989612610955708,
+ "closeup_floor_normal_alignment": 0.9836491965444629,
+ "verified_upward_floor_normal": true
+ },
+ {
+ "name": "passage-0-1-0-rock-floor-station-2",
+ "passage": "passage/0-1/0",
+ "kind": "rock-floor-close",
+ "station": "rock-floor/792.8m",
+ "camera": [
+ -0.021280083711839648,
+ -26.43771312964049,
+ -514.3617561596035
+ ],
+ "target": [
+ -2.4714859241065525,
+ -26.227784739959716,
+ -516.0616688299093
+ ],
+ "yaw": -85.10297944703369,
+ "pitch": -34.654210347383824,
+ "focus": [
+ -2.4714859241065525,
+ -26.227784739959716,
+ -516.0616688299093
+ ],
+ "center_z": -516.0616688299093,
+ "route_distance_m": 792.8284020077059,
+ "requested_route_distance_m": 792.8284020077059,
+ "route_length_m": 2026.6238040154117,
+ "planned_floor_m": -516.0616688299093,
+ "planned_grade_deg": 10.367725129664787,
+ "variant": "L126-v225",
+ "capture": "captures/L126/passage-0-1-0-rock-floor-station-2.png",
+ "scene": "Saved/Linux/l126/captures/L126/passage-0-1-0-rock-floor-station-2.vfmesh",
+ "drawn_triangles": 586092,
+ "source_triangles": 626196,
+ "verified": true,
+ "pixel_quality_status": "pass",
+ "route_distance_actual_m": 792.8284020077059,
+ "route_station_adjustment_m": 0.0,
+ "closeup_camera_target_distance_m": null,
+ "closeup_target_surface_distance_m": null,
+ "closeup_predicted_target_offset_m": null,
+ "closeup_wall_normal_alignment": null,
+ "fallback_kind": null,
+ "fallback_surface_distance_m": null,
+ "camera_actual_m": [
+ -0.021280083711839648,
+ -26.43771312964049,
+ -514.3617561596035
+ ],
+ "target_actual_m": [
+ -2.4714859241065525,
+ -26.227784739959716,
+ -516.0616688299093
+ ],
+ "logs": [
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-rock-floor-station-2-mesh.log",
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-rock-floor-station-2-render.log",
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-rock-floor-station-2-quality.log"
+ ],
+ "floor_anchor_position_m": [
+ -2.471476828908,
+ -26.227785976319144,
+ -516.0617189697925
+ ],
+ "floor_anchor_normal": [
+ -0.179115780575022,
+ 0.024140888419756926,
+ 0.9835317761289187
+ ],
+ "closeup_camera_to_floor_distance_m": 2.9895496409822853,
+ "closeup_floor_normal_alignment": 0.9835317761289187,
+ "verified_upward_floor_normal": true
+ },
+ {
+ "name": "passage-0-1-0-rock-floor-station-3",
+ "passage": "passage/0-1/0",
+ "kind": "rock-floor-close",
+ "station": "rock-floor/1634.5m",
+ "camera": [
+ 15.717287112180728,
+ 19.71739973195528,
+ -665.8352816543407
+ ],
+ "target": [
+ 17.336220092016376,
+ 17.86620742417785,
+ -667.5348848643227
+ ],
+ "yaw": 138.82915885966676,
+ "pitch": -34.64871452830556,
+ "focus": [
+ 17.336220092016376,
+ 17.86620742417785,
+ -667.5348848643227
+ ],
+ "center_z": -667.5348848643227,
+ "route_distance_m": 1634.4566030115589,
+ "requested_route_distance_m": 1634.4566030115589,
+ "route_length_m": 2026.6238040154117,
+ "planned_floor_m": -667.5348848643227,
+ "planned_grade_deg": 10.360515186362372,
+ "variant": "L126-v225",
+ "capture": "captures/L126/passage-0-1-0-rock-floor-station-3.png",
+ "scene": "Saved/Linux/l126/captures/L126/passage-0-1-0-rock-floor-station-3.vfmesh",
+ "drawn_triangles": 137288,
+ "source_triangles": 166736,
+ "verified": true,
+ "pixel_quality_status": "pass",
+ "route_distance_actual_m": 1634.4566030115589,
+ "route_station_adjustment_m": 0.0,
+ "closeup_camera_target_distance_m": null,
+ "closeup_target_surface_distance_m": null,
+ "closeup_predicted_target_offset_m": null,
+ "closeup_wall_normal_alignment": null,
+ "fallback_kind": null,
+ "fallback_surface_distance_m": null,
+ "camera_actual_m": [
+ 15.717287112180728,
+ 19.71739973195528,
+ -665.8352816543407
+ ],
+ "target_actual_m": [
+ 17.336220092016376,
+ 17.86620742417785,
+ -667.5348848643227
+ ],
+ "logs": [
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-rock-floor-station-3-mesh.log",
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-rock-floor-station-3-render.log",
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-rock-floor-station-3-quality.log"
+ ],
+ "floor_anchor_position_m": [
+ 17.33622182815858,
+ 17.866205324064538,
+ -667.534869956066
+ ],
+ "floor_anchor_normal": [
+ 0.11463807621472542,
+ -0.13864390562764303,
+ 0.9836848981834071
+ ],
+ "closeup_camera_to_floor_distance_m": 2.9893930396931125,
+ "closeup_floor_normal_alignment": 0.9836848981834071,
+ "verified_upward_floor_normal": true
+ },
+ {
+ "name": "passage-1-2-0-rock-floor-station-1",
+ "passage": "passage/1-2/0",
+ "kind": "rock-floor-close",
+ "station": "rock-floor/27.0m",
+ "camera": [
+ 15.990262769683945,
+ 2.495369317804175,
+ -736.4846720823747
+ ],
+ "target": [
+ 15.354493464592624,
+ 4.868558240151556,
+ -738.1970266319915
+ ],
+ "yaw": -14.99718988160138,
+ "pitch": -34.875140724394136,
+ "focus": [
+ 15.354493464592624,
+ 4.868558240151556,
+ -738.1970266319915
+ ],
+ "center_z": -738.1970266319915,
+ "route_distance_m": 26.963657939523273,
+ "requested_route_distance_m": 26.963657939523273,
+ "route_length_m": 114.99063175809309,
+ "planned_floor_m": -738.1970266319915,
+ "planned_grade_deg": 10.657740387934142,
+ "variant": "L126-v225",
+ "capture": "captures/L126/passage-1-2-0-rock-floor-station-1.png",
+ "scene": "Saved/Linux/l126/captures/L126/passage-1-2-0-rock-floor-station-1.vfmesh",
+ "drawn_triangles": 652056,
+ "source_triangles": 719660,
+ "verified": true,
+ "pixel_quality_status": "pass",
+ "route_distance_actual_m": 26.963657939523273,
+ "route_station_adjustment_m": 0.0,
+ "closeup_camera_target_distance_m": null,
+ "closeup_target_surface_distance_m": null,
+ "closeup_predicted_target_offset_m": null,
+ "closeup_wall_normal_alignment": null,
+ "fallback_kind": null,
+ "fallback_surface_distance_m": null,
+ "camera_actual_m": [
+ 15.990262769683945,
+ 2.495369317804175,
+ -736.4846720823747
+ ],
+ "target_actual_m": [
+ 15.354493464592624,
+ 4.868558240151556,
+ -738.1970266319915
+ ],
+ "logs": [
+ "Saved/Linux/l126/captures/L126/passage-1-2-0-rock-floor-station-1-mesh.log",
+ "Saved/Linux/l126/captures/L126/passage-1-2-0-rock-floor-station-1-render.log",
+ "Saved/Linux/l126/captures/L126/passage-1-2-0-rock-floor-station-1-quality.log"
+ ],
+ "floor_anchor_position_m": [
+ 15.354124807038394,
+ 4.869920275450426,
+ -738.1895881032126
+ ],
+ "floor_anchor_normal": [
+ -0.047307387705878,
+ 0.17883124580074233,
+ 0.9827417751341397
+ ],
+ "closeup_camera_to_floor_distance_m": 2.9916387475909154,
+ "closeup_floor_normal_alignment": 0.9827417751341397,
+ "verified_upward_floor_normal": true
+ },
+ {
+ "name": "passage-1-2-0-rock-floor-station-2",
+ "passage": "passage/1-2/0",
+ "kind": "rock-floor-close",
+ "station": "rock-floor/52.9m",
+ "camera": [
+ -2.48434493546405,
+ 15.983647301702653,
+ -741.2835409028854
+ ],
+ "target": [
+ -4.76517685476837,
+ 15.070128626649932,
+ -742.995373541633
+ ],
+ "yaw": -111.82708648318167,
+ "pitch": -34.86587426337977,
+ "focus": [
+ -4.76517685476837,
+ 15.070128626649932,
+ -742.995373541633
+ ],
+ "center_z": -742.995373541633,
+ "route_distance_m": 52.927315879046546,
+ "requested_route_distance_m": 52.927315879046546,
+ "route_length_m": 114.99063175809309,
+ "planned_floor_m": -742.995373541633,
+ "planned_grade_deg": 10.645569354114926,
+ "variant": "L126-v225",
+ "capture": "captures/L126/passage-1-2-0-rock-floor-station-2.png",
+ "scene": "Saved/Linux/l126/captures/L126/passage-1-2-0-rock-floor-station-2.vfmesh",
+ "drawn_triangles": 636162,
+ "source_triangles": 700558,
+ "verified": true,
+ "pixel_quality_status": "pass",
+ "route_distance_actual_m": 52.927315879046546,
+ "route_station_adjustment_m": 0.0,
+ "closeup_camera_target_distance_m": null,
+ "closeup_target_surface_distance_m": null,
+ "closeup_predicted_target_offset_m": null,
+ "closeup_wall_normal_alignment": null,
+ "fallback_kind": null,
+ "fallback_surface_distance_m": null,
+ "camera_actual_m": [
+ -2.48434493546405,
+ 15.983647301702653,
+ -741.2835409028854
+ ],
+ "target_actual_m": [
+ -4.76517685476837,
+ 15.070128626649932,
+ -742.995373541633
+ ],
+ "logs": [
+ "Saved/Linux/l126/captures/L126/passage-1-2-0-rock-floor-station-2-mesh.log",
+ "Saved/Linux/l126/captures/L126/passage-1-2-0-rock-floor-station-2-render.log",
+ "Saved/Linux/l126/captures/L126/passage-1-2-0-rock-floor-station-2-quality.log"
+ ],
+ "floor_anchor_position_m": [
+ -4.766428465537912,
+ 15.069671584786441,
+ -742.988228337538
+ ],
+ "floor_anchor_normal": [
+ -0.1744301807701029,
+ -0.061608715063684795,
+ 0.9827402903436447
+ ],
+ "closeup_camera_to_floor_distance_m": 2.9915240428933867,
+ "closeup_floor_normal_alignment": 0.9827402903436447,
+ "verified_upward_floor_normal": true
+ },
+ {
+ "name": "passage-1-2-0-rock-floor-station-3",
+ "passage": "passage/1-2/0",
+ "kind": "rock-floor-close",
+ "station": "rock-floor/78.9m",
+ "camera": [
+ -13.44544511010513,
+ -3.995230772069307,
+ -746.0839041050349
+ ],
+ "target": [
+ -12.287009401722694,
+ -6.161841337747165,
+ -747.7963166548619
+ ],
+ "yaw": 151.8676321960706,
+ "pitch": -34.87617050502889,
+ "focus": [
+ -12.287009401722694,
+ -6.161841337747165,
+ -747.7963166548619
+ ],
+ "center_z": -747.7963166548619,
+ "route_distance_m": 78.89097381856982,
+ "requested_route_distance_m": 78.89097381856982,
+ "route_length_m": 114.99063175809309,
+ "planned_floor_m": -747.7963166548619,
+ "planned_grade_deg": 10.659092990906162,
+ "variant": "L126-v225",
+ "capture": "captures/L126/passage-1-2-0-rock-floor-station-3.png",
+ "scene": "Saved/Linux/l126/captures/L126/passage-1-2-0-rock-floor-station-3.vfmesh",
+ "drawn_triangles": 580472,
+ "source_triangles": 639376,
+ "verified": true,
+ "pixel_quality_status": "pass",
+ "route_distance_actual_m": 78.89097381856982,
+ "route_station_adjustment_m": 0.0,
+ "closeup_camera_target_distance_m": null,
+ "closeup_target_surface_distance_m": null,
+ "closeup_predicted_target_offset_m": null,
+ "closeup_wall_normal_alignment": null,
+ "fallback_kind": null,
+ "fallback_surface_distance_m": null,
+ "camera_actual_m": [
+ -13.44544511010513,
+ -3.995230772069307,
+ -746.0839041050349
+ ],
+ "target_actual_m": [
+ -12.287009401722694,
+ -6.161841337747165,
+ -747.7963166548619
+ ],
+ "logs": [
+ "Saved/Linux/l126/captures/L126/passage-1-2-0-rock-floor-station-3-mesh.log",
+ "Saved/Linux/l126/captures/L126/passage-1-2-0-rock-floor-station-3-render.log",
+ "Saved/Linux/l126/captures/L126/passage-1-2-0-rock-floor-station-3-quality.log"
+ ],
+ "floor_anchor_position_m": [
+ -12.283352972838873,
+ -6.167679829029396,
+ -747.554756449892
+ ],
+ "floor_anchor_normal": [
+ 0.09692807602747124,
+ -0.15782686841357624,
+ 0.9826981366036961
+ ],
+ "closeup_camera_to_floor_distance_m": 2.8693901200350096,
+ "closeup_floor_normal_alignment": 0.9826981366036961,
+ "verified_upward_floor_normal": true
+ },
+ {
+ "name": "passage-2-3-0-rock-floor-station-1",
+ "passage": "passage/2-3/0",
+ "kind": "rock-floor-close",
+ "station": "rock-floor/323.4m",
+ "camera": [
+ 6.997568341188331,
+ -14.934306981606339,
+ -869.3796844648476
+ ],
+ "target": [
+ 9.102823911740126,
+ -13.661883549736208,
+ -871.0755965556104
+ ],
+ "yaw": 58.85109570948622,
+ "pitch": -34.583159686285406,
+ "focus": [
+ 9.102823911740126,
+ -13.661883549736208,
+ -871.0755965556104
+ ],
+ "center_z": -871.0755965556104,
+ "route_distance_m": 323.4481319239866,
+ "requested_route_distance_m": 323.4481319239866,
+ "route_length_m": 494.0722798830563,
+ "planned_floor_m": -871.0755965556104,
+ "planned_grade_deg": 10.274530613220444,
+ "variant": "L126-v225",
+ "capture": "captures/L126/passage-2-3-0-rock-floor-station-1.png",
+ "scene": "Saved/Linux/l126/captures/L126/passage-2-3-0-rock-floor-station-1.vfmesh",
+ "drawn_triangles": 474964,
+ "source_triangles": 502362,
+ "verified": true,
+ "pixel_quality_status": "low_contrast_geometry_visible",
+ "route_distance_actual_m": 323.4481319239866,
+ "route_station_adjustment_m": 0.0,
+ "closeup_camera_target_distance_m": null,
+ "closeup_target_surface_distance_m": null,
+ "closeup_predicted_target_offset_m": null,
+ "closeup_wall_normal_alignment": null,
+ "fallback_kind": null,
+ "fallback_surface_distance_m": null,
+ "camera_actual_m": [
+ 6.997568341188331,
+ -14.934306981606339,
+ -869.3796844648476
+ ],
+ "target_actual_m": [
+ 9.102823911740126,
+ -13.661883549736208,
+ -871.0755965556104
+ ],
+ "logs": [
+ "Saved/Linux/l126/captures/L126/passage-2-3-0-rock-floor-station-1-mesh.log",
+ "Saved/Linux/l126/captures/L126/passage-2-3-0-rock-floor-station-1-render.log",
+ "Saved/Linux/l126/captures/L126/passage-2-3-0-rock-floor-station-1-quality.log"
+ ],
+ "floor_anchor_position_m": [
+ 9.103799793973732,
+ -13.661094033901383,
+ -871.068656948616
+ ],
+ "floor_anchor_normal": [
+ 0.14021616794161246,
+ 0.11018123609139711,
+ 0.9839713011369495
+ ],
+ "closeup_camera_to_floor_distance_m": 2.9849472681829123,
+ "closeup_floor_normal_alignment": 0.9839713011369495,
+ "verified_upward_floor_normal": true
+ },
+ {
+ "name": "passage-2-3-0-rock-floor-station-2",
+ "passage": "passage/2-3/0",
+ "kind": "rock-floor-close",
+ "station": "rock-floor/333.4m",
+ "camera": [
+ 14.426607883839745,
+ -8.501776133009574,
+ -871.1605818845352
+ ],
+ "target": [
+ 15.203729308783775,
+ -6.16777561793481,
+ -872.8561420785873
+ ],
+ "yaw": 18.41553205389999,
+ "pitch": -34.576909662847896,
+ "focus": [
+ 15.203729308783775,
+ -6.16777561793481,
+ -872.8561420785873
+ ],
+ "center_z": -872.8561420785873,
+ "route_distance_m": 333.4481319239866,
+ "requested_route_distance_m": 333.4481319239866,
+ "route_length_m": 494.0722798830563,
+ "planned_floor_m": -872.8561420785873,
+ "planned_grade_deg": 10.266334408339132,
+ "variant": "L126-v225",
+ "capture": "captures/L126/passage-2-3-0-rock-floor-station-2.png",
+ "scene": "Saved/Linux/l126/captures/L126/passage-2-3-0-rock-floor-station-2.vfmesh",
+ "drawn_triangles": 494504,
+ "source_triangles": 524342,
+ "verified": true,
+ "pixel_quality_status": "pass",
+ "route_distance_actual_m": 333.4481319239866,
+ "route_station_adjustment_m": 0.0,
+ "closeup_camera_target_distance_m": null,
+ "closeup_target_surface_distance_m": null,
+ "closeup_predicted_target_offset_m": null,
+ "closeup_wall_normal_alignment": null,
+ "fallback_kind": null,
+ "fallback_surface_distance_m": null,
+ "camera_actual_m": [
+ 14.426607883839745,
+ -8.501776133009574,
+ -871.1605818845352
+ ],
+ "target_actual_m": [
+ 15.203729308783775,
+ -6.16777561793481,
+ -872.8561420785873
+ ],
+ "logs": [
+ "Saved/Linux/l126/captures/L126/passage-2-3-0-rock-floor-station-2-mesh.log",
+ "Saved/Linux/l126/captures/L126/passage-2-3-0-rock-floor-station-2-render.log",
+ "Saved/Linux/l126/captures/L126/passage-2-3-0-rock-floor-station-2-quality.log"
+ ],
+ "floor_anchor_position_m": [
+ 15.204108325185125,
+ -6.1664350574610705,
+ -872.848494535829
+ ],
+ "floor_anchor_normal": [
+ 0.0468360027958031,
+ 0.17218671405633393,
+ 0.9839502651783747
+ ],
+ "closeup_camera_to_floor_distance_m": 2.9845224063213145,
+ "closeup_floor_normal_alignment": 0.9839502651783747,
+ "verified_upward_floor_normal": true
+ },
+ {
+ "name": "passage-2-3-0-rock-floor-station-3",
+ "passage": "passage/2-3/0",
+ "kind": "rock-floor-close",
+ "station": "rock-floor/343.4m",
+ "camera": [
+ 16.176045301879554,
+ 1.1336183974400118,
+ -872.9426489764151
+ ],
+ "target": [
+ 15.465325445603714,
+ 3.4887437417106955,
+ -874.6379150751349
+ ],
+ "yaw": -16.792543840841383,
+ "pitch": -34.57168620892087,
+ "focus": [
+ 15.465325445603714,
+ 3.4887437417106955,
+ -874.6379150751349
+ ],
+ "center_z": -874.6379150751349,
+ "route_distance_m": 343.4481319239866,
+ "requested_route_distance_m": 343.4481319239866,
+ "route_length_m": 494.0722798830563,
+ "planned_floor_m": -874.6379150751349,
+ "planned_grade_deg": 10.259484647608062,
+ "variant": "L126-v225",
+ "capture": "captures/L126/passage-2-3-0-rock-floor-station-3.png",
+ "scene": "Saved/Linux/l126/captures/L126/passage-2-3-0-rock-floor-station-3.vfmesh",
+ "drawn_triangles": 485356,
+ "source_triangles": 512664,
+ "verified": true,
+ "pixel_quality_status": "pass",
+ "route_distance_actual_m": 343.4481319239866,
+ "route_station_adjustment_m": 0.0,
+ "closeup_camera_target_distance_m": null,
+ "closeup_target_surface_distance_m": null,
+ "closeup_predicted_target_offset_m": null,
+ "closeup_wall_normal_alignment": null,
+ "fallback_kind": null,
+ "fallback_surface_distance_m": null,
+ "camera_actual_m": [
+ 16.176045301879554,
+ 1.1336183974400118,
+ -872.9426489764151
+ ],
+ "target_actual_m": [
+ 15.465325445603714,
+ 3.4887437417106955,
+ -874.6379150751349
+ ],
+ "logs": [
+ "Saved/Linux/l126/captures/L126/passage-2-3-0-rock-floor-station-3-mesh.log",
+ "Saved/Linux/l126/captures/L126/passage-2-3-0-rock-floor-station-3-render.log",
+ "Saved/Linux/l126/captures/L126/passage-2-3-0-rock-floor-station-3-quality.log"
+ ],
+ "floor_anchor_position_m": [
+ 15.464091528009144,
+ 3.4924186701988678,
+ -874.5280427606272
+ ],
+ "floor_anchor_normal": [
+ -0.061689200676463656,
+ 0.16755705537563617,
+ 0.9839304221913991
+ ],
+ "closeup_camera_to_floor_distance_m": 2.9298959629846824,
+ "closeup_floor_normal_alignment": 0.9839304221913991,
+ "verified_upward_floor_normal": true
+ },
+ {
+ "name": "passage-0-1-0-openair-1-4m-outside",
+ "passage": "passage/0-1/0",
+ "kind": "open-air-close",
+ "station": "section-1/4m-outside",
+ "camera": [
+ 13.176702021211483,
+ 7.149068417345486,
+ -374.402
+ ],
+ "target": [
+ 9.197121888971225,
+ 7.5527291301707695,
+ -374.402
+ ],
+ "yaw": -84.20812706837869,
+ "pitch": 0.0,
+ "focus": [
+ 7.272,
+ 7.748,
+ -373.197
+ ],
+ "center_z": -373.197,
+ "open_air_section": 1,
+ "closeup_side": "outside",
+ "closeup_preferred_normal": [
+ 0.9948950330600643,
+ -0.1009151782063209,
+ 0.0
+ ],
+ "camera_target_distance_m": 4.000000000000001,
+ "route_distance_m": 8.3545,
+ "requested_route_distance_m": 8.3545,
+ "route_length_m": 2026.6238040154117,
+ "variant": "L126-v225",
+ "capture": "captures/L126/passage-0-1-0-openair-1-4m-outside.png",
+ "scene": "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-1-4m-outside.vfmesh",
+ "drawn_triangles": 275333,
+ "source_triangles": 327745,
+ "verified": true,
+ "pixel_quality_status": "pass",
+ "route_distance_actual_m": 8.3545,
+ "route_station_adjustment_m": 0.0,
+ "closeup_camera_target_distance_m": 3.999999999999992,
+ "closeup_target_surface_distance_m": 0.794053842406799,
+ "closeup_predicted_target_offset_m": 0.794053842406799,
+ "closeup_wall_normal_alignment": 0.9449803535183738,
+ "fallback_kind": null,
+ "fallback_surface_distance_m": null,
+ "camera_actual_m": [
+ 12.920589450293994,
+ 7.974422667153486,
+ -375.0086678277374
+ ],
+ "target_actual_m": [
+ 9.12386703491211,
+ 8.0,
+ -373.75
+ ],
+ "logs": [
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-1-4m-outside-mesh.log",
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-1-4m-outside-render.log",
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-1-4m-outside-quality.log"
+ ]
+ },
+ {
+ "name": "passage-0-1-0-openair-1-4m-interior-wall",
+ "passage": "passage/0-1/0",
+ "kind": "open-air-close",
+ "station": "section-1/4m-interior-wall",
+ "camera": [
+ 7.395778712540976,
+ 3.8749008126934172,
+ -374.89997477205173
+ ],
+ "target": [
+ 8.778272394312646,
+ 7.595214286886338,
+ -374.402
+ ],
+ "yaw": 20.38540702862518,
+ "pitch": 7.1515181408188955,
+ "focus": [
+ 7.272,
+ 7.748,
+ -373.197
+ ],
+ "center_z": -373.197,
+ "open_air_section": 1,
+ "closeup_side": "interior-wall",
+ "closeup_preferred_normal": [
+ -0.9948950330600643,
+ 0.1009151782063209,
+ -0.0
+ ],
+ "camera_target_distance_m": 3.9999999999999973,
+ "route_distance_m": 8.3545,
+ "requested_route_distance_m": 8.3545,
+ "route_length_m": 2026.6238040154117,
+ "variant": "L126-v225",
+ "capture": "captures/L126/passage-0-1-0-openair-1-4m-interior-wall.png",
+ "scene": "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-1-4m-interior-wall.vfmesh",
+ "drawn_triangles": 308012,
+ "source_triangles": 368124,
+ "verified": true,
+ "pixel_quality_status": "low_contrast_geometry_visible",
+ "route_distance_actual_m": 8.3545,
+ "route_station_adjustment_m": 0.0,
+ "closeup_camera_target_distance_m": 3.999999999999992,
+ "closeup_target_surface_distance_m": 0.8416597466625043,
+ "closeup_predicted_target_offset_m": 0.8416597466625043,
+ "closeup_wall_normal_alignment": 0.9449803535183738,
+ "fallback_kind": null,
+ "fallback_surface_distance_m": null,
+ "camera_actual_m": [
+ 5.327144619530225,
+ 8.025577332846515,
+ -372.4913321722626
+ ],
+ "target_actual_m": [
+ 9.12386703491211,
+ 8.0,
+ -373.75
+ ],
+ "logs": [
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-1-4m-interior-wall-mesh.log",
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-1-4m-interior-wall-render.log",
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-1-4m-interior-wall-quality.log"
+ ]
+ },
+ {
+ "name": "passage-0-1-0-openair-2-4m-outside",
+ "passage": "passage/0-1/0",
+ "kind": "open-air-close",
+ "station": "section-2/4m-outside",
+ "camera": [
+ 12.814097656232029,
+ 0.949800892309409,
+ -375.51163279923776
+ ],
+ "target": [
+ 8.842807594702599,
+ 1.4281890685821654,
+ -375.51163279923776
+ ],
+ "yaw": -83.1311525734364,
+ "pitch": 0.0,
+ "focus": [
+ 6.603,
+ 1.698,
+ -374.149
+ ],
+ "center_z": -374.149,
+ "open_air_section": 2,
+ "closeup_side": "outside",
+ "closeup_preferred_normal": [
+ 0.9928225153823576,
+ -0.1195970440681891,
+ 0.0
+ ],
+ "camera_target_distance_m": 4.0,
+ "route_distance_m": 14.4925,
+ "requested_route_distance_m": 14.4925,
+ "route_length_m": 2026.6238040154117,
+ "variant": "L126-v225",
+ "capture": "captures/L126/passage-0-1-0-openair-2-4m-outside.png",
+ "scene": "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-2-4m-outside.vfmesh",
+ "drawn_triangles": 275333,
+ "source_triangles": 327745,
+ "verified": true,
+ "pixel_quality_status": "pass",
+ "route_distance_actual_m": 14.4925,
+ "route_station_adjustment_m": 0.0,
+ "closeup_camera_target_distance_m": 3.999999999999995,
+ "closeup_target_surface_distance_m": 1.0963161771133416,
+ "closeup_predicted_target_offset_m": 1.0963161771133416,
+ "closeup_wall_normal_alignment": 0.39413995490510356,
+ "fallback_kind": null,
+ "fallback_surface_distance_m": null,
+ "camera_actual_m": [
+ 9.613469253122387,
+ 1.5471847686714795,
+ -379.60073544787906
+ ],
+ "target_actual_m": [
+ 7.959597110748291,
+ 1.0,
+ -376.0
+ ],
+ "logs": [
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-2-4m-outside-mesh.log",
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-2-4m-outside-render.log",
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-2-4m-outside-quality.log"
+ ]
+ },
+ {
+ "name": "passage-0-1-0-openair-2-4m-interior-wall",
+ "passage": "passage/0-1/0",
+ "kind": "open-air-close",
+ "station": "section-2/4m-interior-wall",
+ "camera": [
+ 6.939570778854576,
+ -2.1803140897652855,
+ -376.2060303004211
+ ],
+ "target": [
+ 8.388084903173432,
+ 1.4829657169105679,
+ -375.51163279923776
+ ],
+ "yaw": 21.574563086437188,
+ "pitch": 9.997160707081923,
+ "focus": [
+ 6.603,
+ 1.698,
+ -374.149
+ ],
+ "center_z": -374.149,
+ "open_air_section": 2,
+ "closeup_side": "interior-wall",
+ "closeup_preferred_normal": [
+ -0.9928225153823576,
+ 0.1195970440681891,
+ -0.0
+ ],
+ "camera_target_distance_m": 3.999999999999997,
+ "route_distance_m": 14.4925,
+ "requested_route_distance_m": 14.4925,
+ "route_length_m": 2026.6238040154117,
+ "variant": "L126-v225",
+ "capture": "captures/L126/passage-0-1-0-openair-2-4m-interior-wall.png",
+ "scene": "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-2-4m-interior-wall.vfmesh",
+ "drawn_triangles": 345026,
+ "source_triangles": 414658,
+ "verified": true,
+ "pixel_quality_status": "pass",
+ "route_distance_actual_m": 14.4925,
+ "route_station_adjustment_m": 0.0,
+ "closeup_camera_target_distance_m": 4.000000000000001,
+ "closeup_target_surface_distance_m": 0.7732263275133904,
+ "closeup_predicted_target_offset_m": 0.7732263275133904,
+ "closeup_wall_normal_alignment": 0.286757829360229,
+ "fallback_kind": null,
+ "fallback_surface_distance_m": null,
+ "camera_actual_m": [
+ 6.619154002331269,
+ 0.5694445029418322,
+ -372.249825471136
+ ],
+ "target_actual_m": [
+ 7.85216206252137,
+ 1.2143337388310353,
+ -376.0
+ ],
+ "logs": [
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-2-4m-interior-wall-mesh.log",
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-2-4m-interior-wall-render.log",
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-2-4m-interior-wall-quality.log"
+ ]
+ },
+ {
+ "name": "passage-0-1-0-openair-3-4m-outside",
+ "passage": "passage/0-1/0",
+ "kind": "open-air-close",
+ "station": "section-3/4m-outside",
+ "camera": [
+ -28.32291429976088,
+ -16.444327461849063,
+ -600.6066327992378
+ ],
+ "target": [
+ -25.004026673221745,
+ -14.211619482196229,
+ -600.6066327992378
+ ],
+ "yaw": 56.07018168236039,
+ "pitch": 0.0,
+ "focus": [
+ -22.1,
+ -12.258,
+ -599.244
+ ],
+ "center_z": -599.244,
+ "open_air_section": 3,
+ "closeup_side": "outside",
+ "closeup_preferred_normal": [
+ -0.8297219066347834,
+ -0.5581769949132084,
+ 0.0
+ ],
+ "camera_target_distance_m": 4.000000000000001,
+ "route_distance_m": 1265.3425000000002,
+ "requested_route_distance_m": 1265.3425000000002,
+ "route_length_m": 2026.6238040154117,
+ "variant": "L126-v225",
+ "capture": "captures/L126/passage-0-1-0-openair-3-4m-outside.png",
+ "scene": "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-3-4m-outside.vfmesh",
+ "drawn_triangles": 149234,
+ "source_triangles": 181128,
+ "verified": true,
+ "pixel_quality_status": "pass",
+ "route_distance_actual_m": 1265.3425000000002,
+ "route_station_adjustment_m": 0.0,
+ "closeup_camera_target_distance_m": 3.9999999999999907,
+ "closeup_target_surface_distance_m": 0.06836631107301705,
+ "closeup_predicted_target_offset_m": 0.06836631107301705,
+ "closeup_wall_normal_alignment": 0.9604329420550252,
+ "fallback_kind": null,
+ "fallback_surface_distance_m": null,
+ "camera_actual_m": [
+ -28.63982379180018,
+ -15.582695163623317,
+ -601.2438490311043
+ ],
+ "target_actual_m": [
+ -24.955621627611308,
+ -14.176566764792845,
+ -600.5734332352072
+ ],
+ "logs": [
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-3-4m-outside-mesh.log",
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-3-4m-outside-render.log",
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-3-4m-outside-quality.log"
+ ]
+ },
+ {
+ "name": "passage-0-1-0-openair-3-4m-interior-wall",
+ "passage": "passage/0-1/0",
+ "kind": "open-air-close",
+ "station": "section-3/4m-interior-wall",
+ "camera": [
+ -26.071689640946218,
+ -10.338278587083852,
+ -601.3036807194
+ ],
+ "target": [
+ -24.774901932566983,
+ -14.057480898923608,
+ -600.6066327992378
+ ],
+ "yaw": 160.77768453528284,
+ "pitch": 10.035712777782798,
+ "focus": [
+ -22.1,
+ -12.258,
+ -599.244
+ ],
+ "center_z": -599.244,
+ "open_air_section": 3,
+ "closeup_side": "interior-wall",
+ "closeup_preferred_normal": [
+ 0.8297219066347834,
+ 0.5581769949132084,
+ -0.0
+ ],
+ "camera_target_distance_m": 4.000000000000005,
+ "route_distance_m": 1265.3425000000002,
+ "requested_route_distance_m": 1265.3425000000002,
+ "route_length_m": 2026.6238040154117,
+ "variant": "L126-v225",
+ "capture": "captures/L126/passage-0-1-0-openair-3-4m-interior-wall.png",
+ "scene": "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-3-4m-interior-wall.vfmesh",
+ "drawn_triangles": 148100,
+ "source_triangles": 180244,
+ "verified": true,
+ "pixel_quality_status": "pass",
+ "route_distance_actual_m": 1265.3425000000002,
+ "route_station_adjustment_m": 0.0,
+ "closeup_camera_target_distance_m": 4.000000000000004,
+ "closeup_target_surface_distance_m": 0.15667051955483755,
+ "closeup_predicted_target_offset_m": 0.15667051955483755,
+ "closeup_wall_normal_alignment": 0.936006465878356,
+ "fallback_kind": null,
+ "fallback_surface_distance_m": null,
+ "camera_actual_m": [
+ -21.875641690065105,
+ -11.887416826703374,
+ -599.3020917133557
+ ],
+ "target_actual_m": [
+ -24.866552934428398,
+ -14.149067333208382,
+ -600.6947104389109
+ ],
+ "logs": [
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-3-4m-interior-wall-mesh.log",
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-3-4m-interior-wall-render.log",
+ "Saved/Linux/l126/captures/L126/passage-0-1-0-openair-3-4m-interior-wall-quality.log"
+ ]
+ },
+ {
+ "name": "passage-1-2-0-openair-1-4m-outside",
+ "passage": "passage/1-2/0",
+ "kind": "open-air-close",
+ "station": "section-1/4m-outside",
+ "camera": [
+ -4.699079444431819,
+ -4.6537955842685985,
+ -748.15
+ ],
+ "target": [
+ -7.452748333327923,
+ -7.555055250400828,
+ -748.15
+ ],
+ "yaw": -136.49505148095557,
+ "pitch": 0.0,
+ "focus": [
+ -9.518,
+ -9.731,
+ -745.88
+ ],
+ "center_z": -745.88,
+ "open_air_section": 1,
+ "closeup_side": "outside",
+ "closeup_preferred_normal": [
+ 0.688417222224026,
+ 0.7253149165330574,
+ 0.0
+ ],
+ "camera_target_distance_m": 4.000000000000001,
+ "route_distance_m": 83.504,
+ "requested_route_distance_m": 83.504,
+ "route_length_m": 114.99063175809309,
+ "variant": "L126-v225",
+ "capture": "captures/L126/passage-1-2-0-openair-1-4m-outside.png",
+ "scene": "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-1-4m-outside.vfmesh",
+ "drawn_triangles": 620814,
+ "source_triangles": 684776,
+ "verified": true,
+ "pixel_quality_status": "pass",
+ "route_distance_actual_m": 83.504,
+ "route_station_adjustment_m": 0.0,
+ "closeup_camera_target_distance_m": 3.9999999999999654,
+ "closeup_target_surface_distance_m": 0.9023580264896125,
+ "closeup_predicted_target_offset_m": 0.9023580264896125,
+ "closeup_wall_normal_alignment": 0.5604211333378514,
+ "fallback_kind": null,
+ "fallback_surface_distance_m": null,
+ "camera_actual_m": [
+ -8.046760432303138,
+ -4.114982136123087,
+ -749.9844534333902
+ ],
+ "target_actual_m": [
+ -8.0,
+ -7.25,
+ -747.5006103515625
+ ],
+ "logs": [
+ "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-1-4m-outside-mesh.log",
+ "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-1-4m-outside-render.log",
+ "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-1-4m-outside-quality.log"
+ ]
+ },
+ {
+ "name": "passage-1-2-0-openair-1-4m-interior-wall",
+ "passage": "passage/1-2/0",
+ "kind": "open-air-close",
+ "station": "section-1/4m-interior-wall",
+ "camera": [
+ -6.0956279351195075,
+ -11.653774892861163,
+ -748.8673569837389
+ ],
+ "target": [
+ -8.16773669839842,
+ -8.308365466344922,
+ -748.15
+ ],
+ "yaw": -31.773605793127505,
+ "pitch": 10.331275124559749,
+ "focus": [
+ -9.518,
+ -9.731,
+ -745.88
+ ],
+ "center_z": -745.88,
+ "open_air_section": 1,
+ "closeup_side": "interior-wall",
+ "closeup_preferred_normal": [
+ -0.688417222224026,
+ -0.7253149165330574,
+ -0.0
+ ],
+ "camera_target_distance_m": 3.999999999999997,
+ "route_distance_m": 83.504,
+ "requested_route_distance_m": 83.504,
+ "route_length_m": 114.99063175809309,
+ "variant": "L126-v225",
+ "capture": "captures/L126/passage-1-2-0-openair-1-4m-interior-wall.png",
+ "scene": "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-1-4m-interior-wall.vfmesh",
+ "drawn_triangles": 609757,
+ "source_triangles": 668131,
+ "verified": true,
+ "pixel_quality_status": "pass",
+ "route_distance_actual_m": 83.504,
+ "route_station_adjustment_m": 0.0,
+ "closeup_camera_target_distance_m": 3.999999999999999,
+ "closeup_target_surface_distance_m": 0.6509430039577998,
+ "closeup_predicted_target_offset_m": 0.6509430039577998,
+ "closeup_wall_normal_alignment": 0.7808473937095911,
+ "fallback_kind": null,
+ "fallback_surface_distance_m": null,
+ "camera_actual_m": [
+ -8.525095579521167,
+ -12.94135557024142,
+ -748.3220319510015
+ ],
+ "target_actual_m": [
+ -8.18421537084871,
+ -8.958641713644115,
+ -748.1744141343152
+ ],
+ "logs": [
+ "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-1-4m-interior-wall-mesh.log",
+ "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-1-4m-interior-wall-render.log",
+ "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-1-4m-interior-wall-quality.log"
+ ]
+ },
+ {
+ "name": "passage-1-2-0-openair-2-4m-outside",
+ "passage": "passage/1-2/0",
+ "kind": "open-air-close",
+ "station": "section-2/4m-outside",
+ "camera": [
+ 6.53817273275958,
+ -4.657210376135293,
+ -752.013
+ ],
+ "target": [
+ 8.159152142647708,
+ -8.31404312493838,
+ -752.013
+ ],
+ "yaw": 156.09352823535562,
+ "pitch": 0.0,
+ "focus": [
+ 9.43,
+ -11.181,
+ -749.743
+ ],
+ "center_z": -749.743,
+ "open_air_section": 2,
+ "closeup_side": "outside",
+ "closeup_preferred_normal": [
+ -0.40524485247203174,
+ 0.9142081872007717,
+ 0.0
+ ],
+ "camera_target_distance_m": 4.0,
+ "route_distance_m": 104.362,
+ "requested_route_distance_m": 104.362,
+ "route_length_m": 114.99063175809309,
+ "variant": "L126-v225",
+ "capture": "captures/L126/passage-1-2-0-openair-2-4m-outside.png",
+ "scene": "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-2-4m-outside.vfmesh",
+ "drawn_triangles": 584542,
+ "source_triangles": 637002,
+ "verified": true,
+ "pixel_quality_status": "pass",
+ "route_distance_actual_m": 104.362,
+ "route_station_adjustment_m": 0.0,
+ "closeup_camera_target_distance_m": 4.0,
+ "closeup_target_surface_distance_m": 0.5901774459243846,
+ "closeup_predicted_target_offset_m": 0.5901774459243846,
+ "closeup_wall_normal_alignment": 0.9891249705782158,
+ "fallback_kind": null,
+ "fallback_surface_distance_m": null,
+ "camera_actual_m": [
+ 6.359624549359488,
+ -5.416552010781576,
+ -752.0616659309658
+ ],
+ "target_actual_m": [
+ 8.5,
+ -8.79556763526633,
+ -752.0293187551489
+ ],
+ "logs": [
+ "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-2-4m-outside-mesh.log",
+ "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-2-4m-outside-render.log",
+ "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-2-4m-outside-quality.log"
+ ]
+ },
+ {
+ "name": "passage-1-2-0-openair-2-4m-interior-wall",
+ "passage": "passage/1-2/0",
+ "kind": "open-air-close",
+ "station": "section-2/4m-interior-wall",
+ "camera": [
+ 12.438590152225206,
+ -8.574465388721983,
+ -752.7261335058829
+ ],
+ "target": [
+ 8.55317187096847,
+ -9.20292810238377,
+ -752.013
+ ],
+ "yaw": -99.18796190221158,
+ "pitch": 10.269787281460902,
+ "focus": [
+ 9.43,
+ -11.181,
+ -749.743
+ ],
+ "center_z": -749.743,
+ "open_air_section": 2,
+ "closeup_side": "interior-wall",
+ "closeup_preferred_normal": [
+ 0.40524485247203174,
+ -0.9142081872007717,
+ -0.0
+ ],
+ "camera_target_distance_m": 3.9999999999999973,
+ "route_distance_m": 104.362,
+ "requested_route_distance_m": 104.362,
+ "route_length_m": 114.99063175809309,
+ "variant": "L126-v225",
+ "capture": "captures/L126/passage-1-2-0-openair-2-4m-interior-wall.png",
+ "scene": "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-2-4m-interior-wall.vfmesh",
+ "drawn_triangles": 572258,
+ "source_triangles": 618646,
+ "verified": true,
+ "pixel_quality_status": "pass",
+ "route_distance_actual_m": 104.362,
+ "route_station_adjustment_m": 0.0,
+ "closeup_camera_target_distance_m": 4.000000000000001,
+ "closeup_target_surface_distance_m": 0.353159827911248,
+ "closeup_predicted_target_offset_m": 0.353159827911248,
+ "closeup_wall_normal_alignment": 0.9983988827266467,
+ "fallback_kind": null,
+ "fallback_surface_distance_m": null,
+ "camera_actual_m": [
+ 9.748104215680776,
+ -12.666965794821667,
+ -752.0265932958123
+ ],
+ "target_actual_m": [
+ 8.335827076712103,
+ -8.924626207433736,
+ -752.0074179101423
+ ],
+ "logs": [
+ "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-2-4m-interior-wall-mesh.log",
+ "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-2-4m-interior-wall-render.log",
+ "Saved/Linux/l126/captures/L126/passage-1-2-0-openair-2-4m-interior-wall-quality.log"
+ ]
+ },
+ {
+ "name": "passage-2-3-0-openair-1-4m-outside",
+ "passage": "passage/2-3/0",
+ "kind": "open-air-close",
+ "station": "section-1/4m-outside",
+ "camera": [
+ -3.5840423774965293,
+ -5.521048309862215,
+ -815.8969999999999
+ ],
+ "target": [
+ -5.637732447498513,
+ -8.953592132798093,
+ -815.8969999999999
+ ],
+ "yaw": -149.10792796365394,
+ "pitch": 0.0,
+ "focus": [
+ -7.178,
+ -11.528,
+ -813.627
+ ],
+ "center_z": -813.627,
+ "open_air_section": 1,
+ "closeup_side": "outside",
+ "closeup_preferred_normal": [
+ 0.5134225175004958,
+ 0.8581359557339694,
+ 0.0
+ ],
+ "camera_target_distance_m": 4.0,
+ "route_distance_m": 16.616500000000002,
+ "requested_route_distance_m": 16.616500000000002,
+ "route_length_m": 494.0722798830563,
+ "variant": "L126-v225",
+ "capture": "captures/L126/passage-2-3-0-openair-1-4m-outside.png",
+ "scene": "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-1-4m-outside.vfmesh",
+ "drawn_triangles": 104612,
+ "source_triangles": 129326,
+ "verified": true,
+ "pixel_quality_status": "low_contrast_geometry_visible",
+ "route_distance_actual_m": 16.616500000000002,
+ "route_station_adjustment_m": 0.0,
+ "closeup_camera_target_distance_m": 4.0000000000000036,
+ "closeup_target_surface_distance_m": 0.29188924025474844,
+ "closeup_predicted_target_offset_m": 0.29188924025474844,
+ "closeup_wall_normal_alignment": 0.6703275045296155,
+ "fallback_kind": null,
+ "fallback_surface_distance_m": null,
+ "camera_actual_m": [
+ -3.7918253987505834,
+ -7.16028175130118,
+ -813.227396563761
+ ],
+ "target_actual_m": [
+ -5.7833741859987065,
+ -9.093313475424294,
+ -816.1078690565205
+ ],
+ "logs": [
+ "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-1-4m-outside-mesh.log",
+ "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-1-4m-outside-render.log",
+ "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-1-4m-outside-quality.log"
+ ]
+ },
+ {
+ "name": "passage-2-3-0-openair-1-4m-interior-wall",
+ "passage": "passage/2-3/0",
+ "kind": "open-air-close",
+ "station": "section-1/4m-interior-wall",
+ "camera": [
+ -3.4141605326349946,
+ -12.659565888737353,
+ -816.5879167710818
+ ],
+ "target": [
+ -6.170971760123668,
+ -9.844849940114793,
+ -815.8969999999999
+ ],
+ "yaw": -44.40454805561343,
+ "pitch": 9.946538162082001,
+ "focus": [
+ -7.178,
+ -11.528,
+ -813.627
+ ],
+ "center_z": -813.627,
+ "open_air_section": 1,
+ "closeup_side": "interior-wall",
+ "closeup_preferred_normal": [
+ -0.5134225175004958,
+ -0.8581359557339694,
+ -0.0
+ ],
+ "camera_target_distance_m": 4.000000000000005,
+ "route_distance_m": 16.616500000000002,
+ "requested_route_distance_m": 16.616500000000002,
+ "route_length_m": 494.0722798830563,
+ "variant": "L126-v225",
+ "capture": "captures/L126/passage-2-3-0-openair-1-4m-interior-wall.png",
+ "scene": "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-1-4m-interior-wall.vfmesh",
+ "drawn_triangles": 94962,
+ "source_triangles": 118028,
+ "verified": true,
+ "pixel_quality_status": "low_contrast_geometry_visible",
+ "route_distance_actual_m": 16.616500000000002,
+ "route_station_adjustment_m": 0.0,
+ "closeup_camera_target_distance_m": 4.0,
+ "closeup_target_surface_distance_m": 0.41920390486225767,
+ "closeup_predicted_target_offset_m": 0.41920390486225767,
+ "closeup_wall_normal_alignment": 0.740744136337711,
+ "fallback_kind": null,
+ "fallback_surface_distance_m": null,
+ "camera_actual_m": [
+ -7.998432705401559,
+ -11.833936581758076,
+ -818.2481168532394
+ ],
+ "target_actual_m": [
+ -5.94757062165508,
+ -9.608161331921629,
+ -815.6327986602337
+ ],
+ "logs": [
+ "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-1-4m-interior-wall-mesh.log",
+ "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-1-4m-interior-wall-render.log",
+ "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-1-4m-interior-wall-quality.log"
+ ]
+ },
+ {
+ "name": "passage-2-3-0-openair-2-4m-outside",
+ "passage": "passage/2-3/0",
+ "kind": "open-air-close",
+ "station": "section-2/4m-outside",
+ "camera": [
+ -4.5562890668466025,
+ 4.648574813628143,
+ -879.7479999999999
+ ],
+ "target": [
+ -7.40869531436283,
+ 7.452817777269203,
+ -879.7479999999999
+ ],
+ "yaw": -45.487830534998494,
+ "pitch": 0.0,
+ "focus": [
+ -9.548,
+ 9.556,
+ -877.478
+ ],
+ "center_z": -877.478,
+ "open_air_section": 2,
+ "closeup_side": "outside",
+ "closeup_preferred_normal": [
+ 0.7131015618790567,
+ -0.7010607409102652,
+ 0.0
+ ],
+ "camera_target_distance_m": 4.000000000000001,
+ "route_distance_m": 374.929,
+ "requested_route_distance_m": 374.929,
+ "route_length_m": 494.0722798830563,
+ "variant": "L126-v225",
+ "capture": "captures/L126/passage-2-3-0-openair-2-4m-outside.png",
+ "scene": "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-2-4m-outside.vfmesh",
+ "drawn_triangles": 475860,
+ "source_triangles": 504244,
+ "verified": true,
+ "pixel_quality_status": "pass",
+ "route_distance_actual_m": 374.929,
+ "route_station_adjustment_m": 0.0,
+ "closeup_camera_target_distance_m": 4.0,
+ "closeup_target_surface_distance_m": 1.7280841589725482,
+ "closeup_predicted_target_offset_m": 1.7280841589725482,
+ "closeup_wall_normal_alignment": 0.6707889779439669,
+ "fallback_kind": null,
+ "fallback_surface_distance_m": null,
+ "camera_actual_m": [
+ -7.47193274788199,
+ 5.182168353356822,
+ -879.6783722112204
+ ],
+ "target_actual_m": [
+ -7.306445568768645,
+ 9.17777802625833,
+ -879.7662205769708
+ ],
+ "logs": [
+ "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-2-4m-outside-mesh.log",
+ "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-2-4m-outside-render.log",
+ "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-2-4m-outside-quality.log"
+ ]
+ },
+ {
+ "name": "passage-2-3-0-openair-2-4m-interior-wall",
+ "passage": "passage/2-3/0",
+ "kind": "open-air-close",
+ "station": "section-2/4m-interior-wall",
+ "camera": [
+ -11.533986119377625,
+ 6.164550123765492,
+ -880.4395357921604
+ ],
+ "target": [
+ -8.149320771422074,
+ 8.180937668487475,
+ -879.7479999999999
+ ],
+ "yaw": 59.215963829172296,
+ "pitch": 9.955540417812847,
+ "focus": [
+ -9.548,
+ 9.556,
+ -877.478
+ ],
+ "center_z": -877.478,
+ "open_air_section": 2,
+ "closeup_side": "interior-wall",
+ "closeup_preferred_normal": [
+ -0.7131015618790567,
+ 0.7010607409102652,
+ -0.0
+ ],
+ "camera_target_distance_m": 4.000000000000007,
+ "route_distance_m": 374.929,
+ "requested_route_distance_m": 374.929,
+ "route_length_m": 494.0722798830563,
+ "variant": "L126-v225",
+ "capture": "captures/L126/passage-2-3-0-openair-2-4m-interior-wall.png",
+ "scene": "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-2-4m-interior-wall.vfmesh",
+ "drawn_triangles": 486480,
+ "source_triangles": 513552,
+ "verified": true,
+ "pixel_quality_status": "pass",
+ "route_distance_actual_m": 374.929,
+ "route_station_adjustment_m": 0.0,
+ "closeup_camera_target_distance_m": 4.0,
+ "closeup_target_surface_distance_m": 1.0286227628002445,
+ "closeup_predicted_target_offset_m": 1.0286227628002445,
+ "closeup_wall_normal_alignment": 0.720019406420326,
+ "fallback_kind": null,
+ "fallback_surface_distance_m": null,
+ "camera_actual_m": [
+ -8.257109087497915,
+ 13.208090205453457,
+ -879.7612149430302
+ ],
+ "target_actual_m": [
+ -8.149320771422074,
+ 9.209558486938477,
+ -879.75
+ ],
+ "logs": [
+ "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-2-4m-interior-wall-mesh.log",
+ "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-2-4m-interior-wall-render.log",
+ "Saved/Linux/l126/captures/L126/passage-2-3-0-openair-2-4m-interior-wall-quality.log"
+ ]
+ }
+ ]
+}
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-1-4m-interior-wall.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-1-4m-interior-wall.png
new file mode 100644
index 0000000..1fd88a4
Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-1-4m-interior-wall.png differ
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-1-4m-outside.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-1-4m-outside.png
new file mode 100644
index 0000000..87570be
Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-1-4m-outside.png differ
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-2-4m-interior-wall.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-2-4m-interior-wall.png
new file mode 100644
index 0000000..f76e648
Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-2-4m-interior-wall.png differ
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-2-4m-outside.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-2-4m-outside.png
new file mode 100644
index 0000000..c19fc5f
Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-2-4m-outside.png differ
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-3-4m-interior-wall.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-3-4m-interior-wall.png
new file mode 100644
index 0000000..7dcd833
Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-3-4m-interior-wall.png differ
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-3-4m-outside.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-3-4m-outside.png
new file mode 100644
index 0000000..816ba1d
Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-openair-3-4m-outside.png differ
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-rock-floor-station-1.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-rock-floor-station-1.png
new file mode 100644
index 0000000..e67e8c5
Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-rock-floor-station-1.png differ
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-rock-floor-station-2.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-rock-floor-station-2.png
new file mode 100644
index 0000000..2b35b85
Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-rock-floor-station-2.png differ
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-rock-floor-station-3.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-rock-floor-station-3.png
new file mode 100644
index 0000000..bed41ff
Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-0-1-0-rock-floor-station-3.png differ
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-openair-1-4m-interior-wall.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-openair-1-4m-interior-wall.png
new file mode 100644
index 0000000..7569f8c
Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-openair-1-4m-interior-wall.png differ
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-openair-1-4m-outside.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-openair-1-4m-outside.png
new file mode 100644
index 0000000..cd3c8b5
Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-openair-1-4m-outside.png differ
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-openair-2-4m-interior-wall.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-openair-2-4m-interior-wall.png
new file mode 100644
index 0000000..a6be396
Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-openair-2-4m-interior-wall.png differ
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-openair-2-4m-outside.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-openair-2-4m-outside.png
new file mode 100644
index 0000000..c00f532
Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-openair-2-4m-outside.png differ
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-rock-floor-station-1.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-rock-floor-station-1.png
new file mode 100644
index 0000000..3611714
Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-rock-floor-station-1.png differ
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-rock-floor-station-2.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-rock-floor-station-2.png
new file mode 100644
index 0000000..9ac3f59
Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-rock-floor-station-2.png differ
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-rock-floor-station-3.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-rock-floor-station-3.png
new file mode 100644
index 0000000..5b0e0d2
Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-1-2-0-rock-floor-station-3.png differ
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-openair-1-4m-interior-wall.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-openair-1-4m-interior-wall.png
new file mode 100644
index 0000000..8a9efbd
Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-openair-1-4m-interior-wall.png differ
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-openair-1-4m-outside.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-openair-1-4m-outside.png
new file mode 100644
index 0000000..6ce2868
Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-openair-1-4m-outside.png differ
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-openair-2-4m-interior-wall.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-openair-2-4m-interior-wall.png
new file mode 100644
index 0000000..8532d70
Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-openair-2-4m-interior-wall.png differ
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-openair-2-4m-outside.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-openair-2-4m-outside.png
new file mode 100644
index 0000000..e9fef5f
Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-openair-2-4m-outside.png differ
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-rock-floor-station-1.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-rock-floor-station-1.png
new file mode 100644
index 0000000..0413199
Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-rock-floor-station-1.png differ
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-rock-floor-station-2.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-rock-floor-station-2.png
new file mode 100644
index 0000000..f823d6e
Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-rock-floor-station-2.png differ
diff --git a/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-rock-floor-station-3.png b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-rock-floor-station-3.png
new file mode 100644
index 0000000..279866a
Binary files /dev/null and b/Standalone/Research/WorldAssemblerM3/Linux126/captures/L126/passage-2-3-0-rock-floor-station-3.png differ