Commit Graph

2 Commits

Author SHA1 Message Date
gaozheng 687edfeca1 feat(store): ChunkedVolumeStore 增加多分辨率金字塔与每块 min/max
- buildPyramid(levels): level 0 全分辨率(复用 data.bin),level 1..levels
  逐级 2x 平均降采样(ceil(n/2));非 blank 取均值 round,全 blank 置 kBlank。
  各级独立 data_L<level>.bin + 逐块 qCompress。
- 每级每块计算并存 (min,max)(跳过 kBlank;全 blank 块 = (kBlank,kBlank)),
  写入 meta.json 的 levels 数组并回填原 bricks 索引。
- 新增 levels()/bricksX|Y|Z(level)/dims(level)/readBrick(level,...)/
  brickRange(level,...);保留兼容重载 readBrick(bx,by,bz)==readBrick(0,...)。
- 不破坏 Task 6/8:write/readBrick(bx,by,bz)/meta/bricksXYZ() 语义不变;
  老 store 无 levels 时 levels()=1,brickRange(0,...) 惰性读块计算。
2026-06-23 11:52:47 +08:00
gaozheng d908556166 feat(store): GPR 三维体分块压缩落盘 ChunkedVolumeStore
新增 geopro_store 库(B/C 方案共用基座):int16 体逐块 qCompress 压缩写入
data.bin + nlohmann-json sidecar(meta.json 记几何/量化/逐块偏移索引)。
write/readMeta/readBrick 三接口 + 边缘块(< brick)支持;偏移/长度全程 64 位。
不引入 vtkHDFWriter,不加 vcpkg 依赖(压缩用 QtCore 自带 zlib)。
2026-06-23 11:00:47 +08:00