geopro/docs/superpowers/plans/2026-06-07-m1-phase0-spike-...

47 lines
2.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# M1 Phase 0 — Spike 门槛结论报告
**日期**2026-06-07
**结论**:✅ **三个 spike 全部通过,门槛 PASS,可进入 Phase 1。**
## 实机环境(实测)
| 项 | 值 |
|---|---|
| VS | **Visual Studio 2026 (v18.0)**,MSVC 工具集 **14.51.36231**(cl 19.51) |
| Qt | **官方 MSVC kit 6.11.1**(`D:\Qt\6.11.1\msvc2022_64`,v143 预编译) |
| VTK | **9.6.2 源码编**对接官方 Qt → `external/vtk-install`(含 GUISupportQt) |
| vcpkg | `d:\dev\vcpkg`(仅非 Qt 依赖;按层递增) |
| 磁盘 | C: 仅 ~0.9GB → 全部源码/构建/TEMP 重定向到 D: |
## Spike 结果
| Spike | 内容 | 结果 |
|---|---|---|
| **S1 构建/部署** | 官方 Qt + 源码 VTK 编冒烟程序;部署 | ✅ 编译/链接/运行成功;**单一 Qt6Core.dll**(无双 Qt);qwindows 插件 + 66 VTK dll 部署;exe 启动存活 |
| **S2 ADS+QVTK** | QVTKOpenGLStereoWidget 放 ADS 停靠区,浮动/重停靠 | ✅ 反复浮动/重停靠**不黑屏不崩溃**(用户实测确认) |
| **S3 渲染管线** | 真实网格样本 banded contour 离屏渲染 | ✅ `vtkImageData→vtkDataSetSurfaceFilter→vtkBandedPolyDataContourFilter(GenerateContourEdges)` 出填充等值面+等值线,结构对齐 `ref_18`(设计 §4.3 的 B-1/B-2 修正成立) |
## 对设计的回写/确认
- **K-8 方案②-修订成立**:官方 MSVC Qt + 源码 VTK + vcpkg(非 Qt)可行,单一 Qt 已实证。原装 MinGW Qt 弃用。
- **K-9 `QVTKOpenGLStereoWidget` 选型正确**:ADS reparent 不黑屏,无需禁用浮动。
- **§4.3 网格管线选型正确**(S3 验证)。
- **色阶精确映射**(colorBar 非均匀值)为 render 层细节:S3 用线性 LUT 颜色偏蓝,render 层须用 `vtkColorTransferFunction` 按 colorBar 实际值映射(已记)。
- **VTK = 9.6.2**(非 9.3;对 Qt6.11 兼容更好,满足 spec "9.3+")。
## 构建约定(供后续/subagent 使用)
C: 空间紧张 + 需 MSVC 环境,所有构建/测试经包装器(封装 vcvars + TEMP→D: + cmake/ninja + VCPKG_ROOT):
```
cmd /c "D:\Git\lanbingtech\geopro\external\dev.bat <command>"
# 配置: ...dev.bat cmake --preset msvc-release
# 构建: ...dev.bat cmake --build build/release --target <target>
# 测试: ...dev.bat ctest --test-dir build/release --output-on-failure
```
当前统一用 **Release**(`build/release`):Debug 全量配置会因无 Debug VTK 而失败;core 纯逻辑测试 Release 即可。
## 下一步
进入 **Phase 1 — core 纯逻辑层**(`2026-06-07-m1-phase1-core.md`),subagent(opus 4.8)逐任务 TDD 实现:LocalFrame / 领域模型 / 阶梯色阶 / IDW / CrsTransform,以 `tools/validate_samples.py`、`validate_voxel.py` 结论为地面真值。