geopro/src/controller
gaozheng 4e1b8e7635 feat(vtk): 异常3D基础(#4a)-Anomaly补3D几何+buildAnomaly3D+视图异常方法+Api mock持久化(挂三维体)
异常功能地基(对象→三维体→异常;异常挂三维体非切片,见记忆 vtk-3d-persistence-structure):
- core::Anomaly 补 id/volumeDsId(=remarkSourceId)/consortiumId/worldPts(3D世界点)/planeNormal·planeOrigin,
  保留 2D localPts(剖面详情兼容)
- render::buildAnomaly3D(单异常→世界坐标 点/折线/闭合多边形 actor,不翻y/不压z;抽 buildActor 共享 2D/3D)
- I3dSceneView + VtkSceneView:addAnomaly/removeAnomaly/clearAnomalies/setAnomalyVisible(按 id 跟踪 actor,
  worldPts 已含VE 故不再 SetScale;clear 一并清异常)
- Api3dRepository:StoredAnomaly + saveAnomaly/loadAnomalyTree(按 volumeDsId 过滤+consortiumId 分组异常体)/
  deleteAnomaly/deleteAnomalyGroup 内存 mock(取代 stub onErr)

同时修复测试漂移(此前 3a 加 isVolumeDataset 纯虚 + 3c 改 loadVolume 回调签名后,geopro_tests 一直未随之更新):
- FakeView 补异常方法;FakeSceneRepo 补 isVolumeDataset(可配置 volumeIds)+修 loadVolume 签名
- test_3d_repo loadVolume 回调改 (VolumeGrid,ColorScale)
- 控制器测试 View3DWithVoxelAddsVolume 按新"类型分流"语义重写为 View3DVolumeDatasetAddsVolume(体素XOR帘面)

编译全绿(build.bat all);228/228 单元测试通过。4a 为地基(无 UI 接线、尚不可见),圈定/保存见 4b。
2026-06-18 13:04:14 +08:00
..
CMakeLists.txt feat(vtk): P1 复活中央渲染 — VtkSceneController + I3dSceneRepository + Scene加vtkProp 2026-06-15 21:01:26 +08:00
DatasetDetailController.cpp feat(dataset-detail): dd_grid 白化数据列表 + 引擎服务端分页(vxe-pager) 2026-06-13 17:27:39 +08:00
DatasetDetailController.hpp feat(dataset-detail): dd_grid 白化数据列表 + 引擎服务端分页(vxe-pager) 2026-06-13 17:27:39 +08:00
DatasetDetailTab.hpp feat(dataset-detail): dd_trajectory_data 轨迹详情(地图+列表+高程) 2026-06-13 16:36:28 +08:00
I3dSceneView.hpp feat(vtk): 异常3D基础(#4a)-Anomaly补3D几何+buildAnomaly3D+视图异常方法+Api mock持久化(挂三维体) 2026-06-18 13:04:14 +08:00
IDatasetChartStrategy.hpp feat(dataset-detail): 按类型渲染引擎 + inversion 迁移 + dd_ert_measurement_data 详情 2026-06-13 10:51:24 +08:00
README.md scaffold: M1 工程骨架(CMake+vcpkg+分层目录+spike冒烟程序) 2026-06-07 17:41:10 +08:00
VtkSceneController.cpp feat(vtk): 客户端生成三维体流程(#1)-多源IDW插值+按类型分流体素/帘面 2026-06-17 20:56:07 +08:00
VtkSceneController.hpp feat(vtk): 客户端生成三维体流程(#1)-多源IDW插值+按类型分流体素/帘面 2026-06-17 20:56:07 +08:00
WorkbenchNavController.cpp feat(workbench): 对象/数据集视图交互 — 右键菜单/筛选/删除 + 动态表单编辑保存与新建TM 2026-06-13 20:03:30 +08:00
WorkbenchNavController.hpp feat(workbench): 对象/数据集视图交互 — 右键菜单/筛选/删除 + 动态表单编辑保存与新建TM 2026-06-13 20:03:30 +08:00

README.md

controller — 联动编排层

按交互闭环拆分(避免 God Object设计 §3。信号槽连接集中于各 controller 的 wireUp()

  • SelectionController — 勾选 / 选中状态
  • RenderSyncController — 状态 → Scene 渲染同步(勾选 GS/TM → 按 dd 类型筛选 ds → 渲染)
  • DetailSyncController — 列表 ↔ 详情 ↔ 视图定位三向联动(含 render 拾取回流)