gaozheng
|
571a72701d
|
feat(radar): 三维交互精修 + 增益切换 + 视角导航(B#1/#2) + 全链路方案 spec
交互精修(雷达+反演通用):
- 切片拾取精确化: 光标射线 vs 切片真实矩形求交 + 可见数据(alpha)双判定, 去外扩
- 取消选中: 点体/空白/帘面即取消(精确命中判据) + Esc 兜底; 选中后上下拖动方向修正
- 滚轮步长: 按沿法向体素间距 x N(Shift 粗调), 不随体长跳变
- 双击正视: 缩放到切片(面内尺寸+视角框住), 不再又小又远
- 不透明度: 各向异性体用特征尺度(门控; 近立方反演维持原对角线)
视角导航(B 方案):
- #1 绕拾取点旋转: 无选中时绕光标射线穿体中段点(按下捕获/拖动固定), 不甩飞
- #2 沿线位置滑块: 雷达专属, 沿最长轴 dolly 到窗口(focusAlongLongAxis), 仅细长体显示
雷达显示增益: 右键切 AGC/保幅 tpow/关, 纯显示重建不动原始数据
spec: 落地 导入->处理->渲染 全链路方案(结合 POC 评估), 定预渲染可选->混合渲染源(IVolumeRenderSource)决策
|
2026-06-30 18:58:42 +08:00 |
gaozheng
|
b2d130a7bf
|
fix(radar/perf): 大体开启交互期采样距自适应,旋转流畅停手全质量(不降数据)
根因:VoxelActor 体绘制 SetAutoAdjustSampleDistances(0)(全程全质量) +
SampleDistance=0.3×minSp。雷达体 dz≈9.4mm(516采样/~4.8m)→ 单条光线 ~1700
采样步,每帧数十亿采样,旋转每帧都全质量 → 卡。原设定是为小反演体(~7ms/帧)调的。
修复:体素>4M 的大体开启 AutoAdjust/InteractiveAdjust——旋转时 VTK 自动加大
采样步保流畅,停手即恢复 0.3×minSp 出全质量帧。只降【渲染期】采样、不动数据;
切片/异常取自全分辨率体,保真不受影响。小体保持全程全质量避免突跳。
|
2026-06-29 16:44:42 +08:00 |
gaozheng
|
cda84adcee
|
fix(radar): 三维分析栏勾选(体/切片)隐藏不透明引导层,露出渲染
根因:中央引导层 emptyState(不透明 QFrame, background=canvas/bg)只在
objectTree.checkedSourcesChanged(对象树测线勾选)时隐藏(main.cpp:1612)。
雷达体由三维分析栏(CategoryAnalysisTab)勾选触发渲染——日志确认 addVolume
radar-1 已渲染——但该路径不碰 emptyState(因 emptyState 在 pushChecked 之后
才声明,分析渲染路径拿不到它),引导层不隐藏 → 盖住已渲染的体,用户只见
"勾选左侧数据集开始渲染"占位文本。
修复:用可后置赋值的回调把引导层隐藏接进 pushChecked(剖面∪三维分析 并集),
场景有勾选内容即隐藏;对象树隐藏条件并入 checkedAnalysis(取消勾选对象树不再
盖住仍渲染的雷达体)。
|
2026-06-29 15:45:47 +08:00 |
gaozheng
|
63ab099f76
|
fix(radar): 导入入口从隐藏菜单栏改到三维体段头按钮(app无原生菜单栏)
根因:app 经 window.setMenuWidget(TopBar) 占用 QMainWindow 菜单栏槽位,
原生 QMenuBar 不显示(全 app 无菜单栏),故 Task8 放在 menuBar() 的「三维雷达」
菜单根本看不到。
修复:入口迁到三维体(voxel)段头「+ 导入雷达测线」按钮(QToolButton+InstantPopup,
镜像现有「+新增三维体」),弹出 规范化(.head/.data)/Impulse(.iprb) 两项 →
CategorySection.radarImportRequested(impulse) → CategoryAnalysisTab 转发 →
main.cpp 走原导入流程。删除死的 menuBar 代码 + QMenuBar include。
|
2026-06-29 15:13:53 +08:00 |
gaozheng
|
e48b679255
|
docs(radar): 计划 Global Constraints 修正构建命令(build.bat, cmake不在PATH)
|
2026-06-29 13:37:43 +08:00 |
gaozheng
|
1e931e4f85
|
fix(radar): dd_radar_3d 补进 ddCode→维度映射(dimOf/dimensionOf)
|
2026-06-29 13:35:47 +08:00 |
gaozheng
|
717bdbb70c
|
feat(radar): Impulse 测线本地导入入口(双数据集互证下游)
radarMenu 追加「导入Impulse测线目录(.iprb)…」动作,复用 createGprVolume
(eager 同步建体,预填 cachedGrid)。内层 lambda 按引用捕获 window 修正
QMainWindow 拷贝构造删除/showToast 非 const QWidget* 编译错误。
|
2026-06-29 13:19:12 +08:00 |
gaozheng
|
2ba9d07f6c
|
feat(radar): 导入入口 + dd_radar_3d 切片/色阶/详情 gate 放开
|
2026-06-29 13:13:01 +08:00 |
gaozheng
|
25bdd5cc71
|
feat(radar): registerRadarDataset 登记 dd_radar_3d DS + loadVolume 懒加载后台建体
|
2026-06-29 13:05:02 +08:00 |
gaozheng
|
a865264cd1
|
feat(radar): 数据层 createRadarVolumeGrid(规范化->VolumeGrid)
|
2026-06-29 12:53:45 +08:00 |
gaozheng
|
241319b84b
|
feat(radar): 规范化体 bridge buildLineVolumeFromNormalized
将 RadarVolumeAssembler.cpp 从 geopro_gpr3dv_bridge 迁入纯 geopro_io_gpr,
避免 io_gpr 反链 bridge 形成循环依赖。新增 NormalizedRadarVolumeBridge
组合 reader(.head/.data) + assembleRadarVolume → BuiltI16(X=道/Y=通道/Z=采样)。
|
2026-06-29 12:46:08 +08:00 |
gaozheng
|
d2e7314ffb
|
feat(radar): 规范化 .cor 轨迹解析(P1 配准预留)
|
2026-06-29 12:36:49 +08:00 |
gaozheng
|
a9e2d98d15
|
feat(radar): 规范化 .data 立方体读取(position-major/16bit/字节序)
|
2026-06-29 12:30:28 +08:00 |
gaozheng
|
47e94592ce
|
feat(radar): 规范化 .head 解析(维度/字节序/通道偏移/深度间距)
|
2026-06-29 12:23:31 +08:00 |
gaozheng
|
abd3027610
|
refactor(gpr): 抽出共享 assembleRadarVolume,Impulse 路改调(消填体 DRY)
|
2026-06-29 12:14:25 +08:00 |
gaozheng
|
18b78a85d3
|
docs(radar): DS优先(dd_radar_3d)设计修订 + 实现计划(过3轮架构评审)
- spec 改 DS 优先:导入→登记 dd_radar_3d DS(非游离 dd_voxel vol-N)→按 DS 渲染。
ddCode 对齐数据字典 DD0623(dd_radar_3d 体/dd_trajectory_data 轨迹/dd_voxel 仅反演)。
关键发现:运行期体渲染只认 volumes_ 成员、不看 ddCode → 接入面极小。
- 实现计划 9 task(TDD):reader→共享 assembleRadarVolume(消DRY)→bridge→
createRadarVolumeGrid→registerRadarDataset+loadVolume 懒加载后台建体→导入入口+
dd_radar_3d 切片/色阶/详情 gate→双数据集互证。
- 3 轮 opus 架构评审已落修:HIGH-1 填体抽共享helper、HIGH-2 明星路in-app属首次、
CRITICAL CategorySection切片gate、HIGH eager建体冻UI/MEDIUM spinner→改懒加载后台线程。
|
2026-06-29 11:53:33 +08:00 |
gaozheng
|
4da11f6185
|
feat(radar): 三维雷达接入设计 + Mala 转换器原型(已过架构评审)
- tools/radar_convert: RADAR_TYPE_MALAMIRA 转换插件原型(info/convert/probe)
.rad→.head / .rd3→.data(原样) / .pos→.cor;probe 用真实数据确诊数据体
主序 = position-major reshape(K,M,N),X=道/Y=通道/Z=采样,无需轴置换
- docs/spec: 2026-06-29 三维雷达体渲染+切片+异常接入设计
核心论点=只换最内层 reader、下游渲染/切片/异常链复用;含已验证数据事实、
内存实算、插件化转换层、双数据集测试策略;已过 opus 架构评审(PASS-WITH-CONCERNS,
HIGH-1 填体逻辑须抽共享helper / HIGH-2 明星路 in-app 渲染属首次非已验证 已并入)
- samples/radar/malamira_南同大道: 6 线 .head/.cor 入库(大 .data gitignore,附重生成命令)
- 记录客户文档 §3.3 BITS 公式 bug(漏 SAMPLES 维),须同步后端
|
2026-06-29 10:03:48 +08:00 |