viewer on-demand — relancer viser à la demande depuis le dashboard
Le viser de demo.py était tué dès que le PLY était écrit (pour libérer la VRAM),
donc les liens dans le dashboard menaient vers ERR_CONNECTION_REFUSED.
Ajout d'un viewer standalone indépendant :
- scripts/viser_ply.py : charge un PLY via open3d + sert via viser (sans GPU),
subsample random à 2M pts max pour rester fluide
- app/main.py : routes POST /jobs/{id}/view et /stitches/{id}/view qui scp
le script sur le worker et lancent un viser détaché (nohup+setsid+disown via
wrapper shell déposé sur le worker)
- templates : remplace <a href> par <button class=viewer-btn> qui POST puis
window.open de l'URL retournée
- Dockerfile : copie scripts/ dans l'image (nécessaire pour scp-er viser_ply.py)
This commit is contained in:
@@ -74,6 +74,11 @@ progress::-moz-progress-bar { background: var(--accent); }
|
||||
white-space: nowrap; }
|
||||
.job-list .dur { color: var(--muted); font-size: 0.78rem; }
|
||||
.job-list .ext { margin-left: 0.5rem; color: var(--accent); font-size: 0.75rem; }
|
||||
button.ext.viewer-btn { background: transparent; border: 1px solid var(--accent);
|
||||
color: var(--accent); font-size: 0.72rem; padding: 1px 6px; border-radius: 3px;
|
||||
cursor: pointer; font-family: inherit; }
|
||||
button.ext.viewer-btn:hover { background: var(--accent); color: #000; }
|
||||
button.ext.viewer-btn:disabled { opacity: 0.6; cursor: wait; }
|
||||
|
||||
.err-line { color: var(--err); font-size: 0.75rem;
|
||||
padding-left: 28px; padding-bottom: 0.25rem; }
|
||||
|
||||
Reference in New Issue
Block a user