gaozheng
|
cf1c06cde8
|
feat(gpr): 三维体 LOD 多线渲染 + 全局切片(深度/横切/顺路) + 诊断
渲染架构改 LOD 中心:各线独立 mapper + 视野自适应 LOD,弃 multi-volume 单遍。
实测确诊多线卡顿真因是"没用 LOD、渲整卷大贴图"(passcost 排除固定开销;
overlapStat 实测重叠 ~9× 非 20×;ESS 实测仅 ~2× 不解决重叠),非渲染器问题。
切片(view-all --slice [updown|leftright|frontback]):
- 深度 C-scan:逐线整张水平片(深度共面→拼成完整 C-scan,全覆盖、原生分辨率)
- 横切/顺路:全局世界面 reslice 各线到同一面 + blend(竖直面几何上每线只切细断面)
- ↑↓ 整片扫过 / [ ] 体透明度 / v 体显隐 / --sliceAt 跳位
其他:通道插值(2.5cm,从.ord读)接入 gpr_poc;--bgSuppress 压背景突出反射;
slice 命令复用桌面端 SliceTool 切单线。
诊断命令:ess-stat(空块潜力)/--overlapStat(重叠层数)/passcost(N遍vs重叠隔离)。
分析文档:性能确诊(否定 ESS/OSPRay,LOD 为通用解)。
|
2026-06-26 23:25:51 +08:00 |
gaozheng
|
4e2bdc3b81
|
feat(gpr): build-line 健壮支持任意测线 + 新增 build-all 批量建体(磁盘守护/coarse 下采样)
- 桥接 buildLineVolumeFromGpr3dv 增 coarse 参数:沿测线(道/X 轴)按步长下采样,
spacing.x ×stride 保持真实世界尺度;通道/样本保留全分辨率。默认 coarse=1 全分辨率,
对现有调用与测试零影响。
- build-line 增 --coarse F;单线建体核心抽出 buildOneLine,加体维度退化守护
(短桩线 nx<2 等报因跳过不落盘),整条 try/catch 不崩。
- 新增 build-all <lineDir> --outBase <baseDir> [--levels N] [--coarse F]
[--minFreeGB G]:扫 *_A<NN>.iprh 发现全部测线,逐条建到 baseDir/<line>/;
每条建前查磁盘剩余,低于阈值(默认 3G)停并报已建哪些;单条异常捕获跳过不中断批量;
末尾打印各线状态(成功/跳过+因/维度/大小)与合计占用。
- 通道/道/样本全从数据读,不写死;不破坏现有 gpr/bridge 测试(12/12 通过)。
|
2026-06-25 08:42:31 +08:00 |
gaozheng
|
a32822f7d6
|
feat(gpr3dv): 桥接处理后立方体→geopro量化/分块/VTK体绘制(P2 渲第一条线真三维体)
把 gpr3dv(P1)处理链产出的处理后立方体桥接到 geopro 已有的量化+ChunkedVolumeStore
+VTK 体绘制,渲出第一条线(明星路_001)的真三维体。算法零改动,仅复用 geopro 量化/
store/渲染。
- 新增桥接 src/io/gpr/Gpr3dvVolumeBridge.{hpp,cpp}(独立 target geopro_gpr3dv_bridge,
不污染纯 C++17 解析层):走 P1 原版 API load→buildVolumeData→runPipeline(默认链)
→再 buildVolumeData(处理后),得 volumeData[通道][道][样本];轴映射 X=道/Y=通道/
Z=样本;扫值域定 Quant(offset=中点);世界 spacing(dx=道距/dy=通道横距/dz=深度采样距)。
- gpr_poc 加子命令 build-line <lineDir> <linePrefix> --out <store> [--levels N]:
桥接→ChunkedVolumeStore::write+buildPyramid,报维度/量化/spacing/内存/耗时;view 渲。
- 测试 tests/io/gpr/test_gpr3dv_volume_bridge.cpp:合成 2 通道 Impulse 测线走真链,
校验轴映射/spacing/量化(offset=中点)/稠密体无 kBlank/缺线抛异常。
真实数据验收(明星路_001):体维度 45305×14×796(道×通道×样本,样本由 821 经零时校正
裁至 796),处理后值域[-9249,9206] scale=0.288 offset=-21.5,spacing dx=0.049/dy=0.105/
dz=0.0101m,落盘 845MB 压缩比 1.14x;view --preview/--base 渲出无纹理错、整卷盖全。
全量测试通过。
|
2026-06-24 20:50:10 +08:00 |