geopro/src/render
gaozheng 5dbbb2576c feat(render): brick 分页器(LRU 工作集,内存恒定核外渲染)
实现 geopro::render::BrickPager:驻留 ≤ budget 个解压块,
按 LRU 淘汰,与体总大小无关。requestVisible 按请求顺序更新
LRU 并淘汰至预算;get 命中返回数据指针、不改 LRU。
键为完整 BrickId(含 level);std::list 记录 recency +
unordered_map 存数据与迭代器,touch/淘汰均 O(1)。
TDD:test_brick_pager 验证恒定驻留与最早块淘汰。
2026-06-23 12:08:29 +08:00
..
actors feat(render): IVolumeRenderSource 接缝 + WholeVolumeSource(B) 整卷重组 2026-06-23 11:23:37 +08:00
ground feat(vtk): 底图瓦片坐标数学 TileMath(EPSG:3857 经纬↔z/x/y+瓦片边界)+单测(P5基石) 2026-06-16 21:29:59 +08:00
interact feat(vtk): 异常圈定+保存闭环(#4b)+多项交互修复 2026-06-18 18:31:46 +08:00
source feat(render): brick 分页器(LRU 工作集,内存恒定核外渲染) 2026-06-23 12:08:29 +08:00
CMakeLists.txt feat(render): brick 分页器(LRU 工作集,内存恒定核外渲染) 2026-06-23 12:08:29 +08:00
CameraPreset.cpp feat(vtk): P2 三维数据集栏 — 坐标轴/比例/快捷视图/Zoom 2026-06-15 21:54:48 +08:00
CameraPreset.hpp feat(vtk): P2 三维数据集栏 — 坐标轴/比例/快捷视图/Zoom 2026-06-15 21:54:48 +08:00
ColorLutBuilder.cpp feat(vtk): 色阶编辑器(2D/3D共享)+模板库后端+剖面着色修正+二维数据集足迹 2026-06-22 12:48:45 +08:00
ColorLutBuilder.hpp feat(render): render 层(Scene/ColorLut/GridContourActor/相机预设) + 2D/3D 切换 2026-06-07 21:42:55 +08:00
ContourBands.cpp fix(review): 修 cpp-review HIGH/MEDIUM —散点ys越界/colorSvc析构泄漏/QwtPlot autoDelete注释/控制器catch(...)防busy死锁 + 清死代码simplifyInPlace/simplifyTol + 填充等比限幅 + DTO行数校验+枚举钳制 + ContourLine.level默认NaN 2026-06-11 18:59:19 +08:00
ContourBands.hpp fix(review): 修 cpp-review HIGH/MEDIUM —散点ys越界/colorSvc析构泄漏/QwtPlot autoDelete注释/控制器catch(...)防busy死锁 + 清死代码simplifyInPlace/simplifyTol + 填充等比限幅 + DTO行数校验+枚举钳制 + ContourLine.level默认NaN 2026-06-11 18:59:19 +08:00
README.md feat(vtk): P3 三维分析切片交互(核心) — 轴向/任意切片+滚轮+拾取+正视 2026-06-16 08:23:16 +08:00
Scene.cpp feat(vtk): P1 复活中央渲染 — VtkSceneController + I3dSceneRepository + Scene加vtkProp 2026-06-15 21:01:26 +08:00
Scene.hpp feat(vtk): P1 复活中央渲染 — VtkSceneController + I3dSceneRepository + Scene加vtkProp 2026-06-15 21:01:26 +08:00
VoxelFromScatters.cpp fix(render): 切片与体素纵向一致 — 把纵向夸张烤进体素 image(切片穿过体素而非在旁) 2026-06-08 11:46:39 +08:00
VoxelFromScatters.hpp fix(render): 切片与体素纵向一致 — 把纵向夸张烤进体素 image(切片穿过体素而非在旁) 2026-06-08 11:46:39 +08:00

README.md

render — VTK 渲染层

独占 vtkRenderWindow,统一创建/持有所有 actorview 不持有 actor。单一场景 + 相机预设(设计 §4

子目录:

  • Scene — 场景图、项目世界坐标空间、可见性;持有 RenderWindow
  • actors/ — ScatterActor, GridContourActor, VoxelVolumeActor, AnomalyActor, TerrainActor
  • color/ — ColorLutBuildercolorBar → 离散 vtkLookupTable, ScalarBar
  • camera/ — CameraPresetTop2D / Free3D
  • interact/ — SlicePlaneMath纯几何可测+ SliceToolvtkImagePlaneWidget轴向 + 任意 45° reslice 着色剖面)+ PickInteractorStyle拾取/双击正视/滚轮)+ InteractionManager持切片/选中态/分发)。切片走 vtkImageReslice 路线vtkImagePlaneWidget 内部 reslice + 纹理),非 vtkCutterspec §9.1
  • ground/ — IGroundLayer + DemImageGroundLayerM1TileGroundLayerM1.5

网格管线:vtkImageData(+vtkWarpScalar) → vtkDataSetSurfaceFilter → vtkBandedPolyDataContourFilter(GenerateContourEdgesOn)(设计 §4.3)。