Migrate registration workspace fusion mapping views

This commit is contained in:
Codex
2026-05-28 23:43:49 +08:00
parent 7a38272e8b
commit c4f0fd54d6
3 changed files with 802 additions and 65 deletions

View File

@@ -36,9 +36,6 @@
</div>
</div>
<div class="top-actions">
<button id="caseToggleBtn" class="icon-btn" type="button" title="收起/展开完整关联 CT">
<span></span><span></span><span></span>
</button>
<button id="relationBtn" class="ghost-btn accent" type="button">数据库关联可视化</button>
<button id="viewerBtn" class="ghost-btn" type="button">DICOM 阅片系统</button>
<span id="dbStatus" class="status-pill">数据库</span>
@@ -52,9 +49,14 @@
<main class="workspace">
<aside class="case-panel panel">
<div class="panel-head">
<div>
<h2>完整关联 CT</h2>
<p>DICOM + STL</p>
<div class="panel-title-row">
<div>
<h2>完整关联 CT</h2>
<p>DICOM + STL</p>
</div>
<button id="caseToggleBtn" class="icon-btn" type="button" title="收起/展开完整关联 CT">
<span></span><span></span><span></span>
</button>
</div>
<span id="caseCount">0</span>
</div>
@@ -175,6 +177,9 @@
<button data-window="contrast">高对比</button>
</div>
<div class="viewer-tools">
<button id="stretchXBtn" class="ghost-btn">X拉伸</button>
<button id="stretchYBtn" class="ghost-btn">Y拉伸</button>
<button id="stretchZBtn" class="ghost-btn">Z拉伸</button>
<button id="fitBtn" class="ghost-btn">视角复位</button>
<button id="saveBtn" class="primary-btn">保存配准</button>
<button id="statusBtn" class="state-btn">标为已配准</button>
@@ -198,24 +203,41 @@
<section class="viewer-panel dicom-panel panel">
<div class="viewer-head">
<div>
<h2>DICOM 标注</h2>
<p id="dicomPanelMeta">当前序列切片</p>
<h2>逆向分割映射视图</h2>
<p id="dicomPanelMeta">Base DICOM · Overlay Label Map</p>
</div>
<div class="viewer-tools">
<button id="mappingResetBtn" class="ghost-btn" type="button">位置重置</button>
<button id="openViewerBtn" class="ghost-btn" type="button">阅片系统</button>
</div>
<button id="openViewerBtn" class="ghost-btn" type="button">阅片系统</button>
</div>
<div class="dicom-stage">
<img id="dicomPreview" alt="DICOM 切片" />
<div class="crosshair horizontal"></div>
<div class="crosshair vertical"></div>
<div id="mappingViewport" class="mapping-viewport">
<div id="mappingLayer" class="mapping-layer">
<img id="dicomPreview" alt="DICOM 切片" />
<canvas id="mappingCanvas"></canvas>
</div>
</div>
<div class="mapping-slice-rail">
<input id="mappingSliceSlider" type="range" min="0" max="0" value="0" />
<span id="mappingSliceLabel">0 / 0</span>
</div>
<div class="dicom-overlay top-left" id="dicomInfoLeft">未选择序列</div>
<div class="dicom-overlay top-right" id="dicomInfoRight"></div>
<div class="dicom-overlay bottom-left" id="dicomInfoBottom">Img: -</div>
<div id="dicomLoading" class="fusion-loading hidden">
<span>正在加载 DICOM 标注视图</span>
<span>正在加载逆向分割映射视图</span>
<div><i></i></div>
</div>
</div>
<div id="annotationTags" class="annotation-tags"></div>
<div class="mapping-summary">
<div class="mapping-summary-head">
<span>Overlay Label Map</span>
<em id="mappingStats">0/0 构件 · 0 边 · 0 px</em>
</div>
<div id="annotationTags" class="annotation-tags"></div>
<div id="mappingLegend" class="mapping-legend"></div>
</div>
</section>
</section>
</section>