Commit Graph

33 Commits

Author SHA1 Message Date
zhengxuan.zhang 596eed3590 忽略本地开发清单 2026-08-10 13:22:55 +08:00
zhengxuan.zhang 153ff9ffe8 移除并忽略 WixEdit 旧工具链和示例 2026-08-06 14:56:24 +08:00
zhengxuan.zhang ecf5e7c7da 移除并忽略本地 CodeBuddy 配置 2026-08-06 14:49:14 +08:00
zhengxuan.zhang d33bd44a85 将 Installer 重命名为 XP.Installer 打包解决方案 2026-08-06 14:46:52 +08:00
zhengxuan.zhang 8855169e5f 加入打包项目工程 2026-08-06 10:50:26 +08:00
zhengxuan.zhang 630c87a859 修复Velopack启动 2026-08-06 08:57:08 +08:00
zhengxuan.zhang fd9d863494 feat: add automatic bga ball detection 2026-08-04 14:39:59 +08:00
zhengxuan.zhang 528f27f43e chore: stop tracking local audit document 2026-08-04 14:18:05 +08:00
XplorePlane Developer 957157ae80 fix: 修复编译错误、BGA向导预览、算子重复插入及状态栏消息
## Compilation fixes
- Fix XAML namespace reference XplorePlane.Converters → XplorePlane.Helpers (EventLogView, StateDisplayView)
- Add missing using for ISampleTypeRepository / JsonSampleTypeRepository in App.xaml.cs
- Fix ILoggerService.Warn() calls using Exception as first arg instead of message string
- Serialize CncProgram to JSON when passing to MatrixLayout (expects string, not CncProgram object)
- Suppress CS8632 nullable annotation warnings project-wide

## BGA wizard fixes
- Fix preview not showing on step 3: force RefreshBgaPreview() when entering final step
- Add step validation in CanNext() to prevent skipping to preview with invalid inputs
- Notify NextCommand.CanExecuteChanged when inputs change
- Fix RunProgress runtime binding error: set Mode=OneWay for ProgressBar.Value

## Operator toolbox: prevent duplicate insertion
- Add static OperatorTarget property for direct dispatch to active pipeline
- PipelineEditorView registers as toolbox target on load (floating window only)
- CNC page sets initial target; PipelineEditorWindow resets to CNC pipeline on close
- '+' button inserts only to the active pipeline instead of broadcasting to all subscribers

## Pipeline editor status bar messages
- Add StatusBarMessageEvent / StatusBarMessagePayload to CommonEvents.cs
- PipelineEditorViewModel publishes status on all ops (add/remove/reorder/save/execute)
- MainViewModel subscribes and displays on main window bottom status bar
- Auto-clear after timeout (3s info, 5s error)

## docs
- Merge three architecture docs into consolidated XplorePlane-架构与结构说明.md
2026-07-24 15:59:16 +08:00
zhengxuan.zhang 9063b73938 完善联网更新功能:启动自动检查、设置页面配置、发布脚本
- 设置页面通用Tab新增"联网更新"配置卡片:更新服务器地址输入框、
  启动时检查更新开关,保存后持久化到 App.config
- App.xaml.cs 启动完成后延迟5秒静默检查更新,有新版本弹窗提示重启
- SettingsViewModel 新增 UpdateServerUrl/UpdateCheckOnStartup 属性
- 修复标定文件写入路径:calibrationDir 改为数据目录避免安装目录权限问题,
  TryAutoLoadCalibration 增加外层 try-catch 防止启动崩溃
- 新增 build-release.ps1 发布脚本:编译、vpk打包、部署到WampServer一键完成
2026-07-22 17:13:39 +08:00
zhengxuan.zhang 08aecdd039 清理完成,编译通过。ViewModel 从约 1566 行精简到 1305 行,移除了所有与已删除 ROI 面板相关的死代码:
11 个字段(_previewImage、_selectedEditableRegion、_isDrawingPolygon 等)
9 个属性(PreviewImage、IsDrawingPolygon、RegionInstruction、ResultOverallStatus 等)
3 个集合(EditableRegions、ResultRows、VisibleResultRows)
5 个命令(CaptureReferenceCommand、AddRectangleRegionCommand 等)
10+ 个方法(CaptureReferenceAsync、AddRectangleRegion、StartPolygonRegion、AddPolygonPoint、ApplyResultFilter 等)
2 个 using 引用(System.Windows.Media.Imaging、XP.ImageProcessing.RoiControl.Models)
2026-07-16 16:23:34 +08:00
zhengxuan.zhang b95941cb50 feat: CNC 编排新增硬件控制能力(位置硬件还原 + 四类动作节点)
在 CNC 编排层补齐 P0 硬件控制能力,使检测编排可覆盖设备测试与校准流程。

位置节点硬件状态还原(核心):
- SavePositionNode 新增可选探测器采集参数快照,兼容旧 .xp 文件
- 执行到位后按序还原射线源电压/电流与探测器参数(先电压后电流)
- 射线未开弹窗提醒并暂停;还原失败弹窗提示并暂停不继续;服务不可用降级跳过
- 新增 ICncInteractionService 封装弹窗交互,便于单元测试

四类硬件动作节点:
- 射线源控制:开/关/设参/暖机/训机,安全时序 + 稳定等待
- 探测器校正:暗场/增益/坏像素/自动
- 安全门控制:开门/关门,复用内置联锁
- 几何设置:按 FDD 或放大倍率反算定位

模型、编辑器与工具栏接线:
- CncNodeType 追加四枚举值 + 四类节点 record + 多态判别符 + 值域校验
- 编辑器新增插入命令、类型判定、图标与工具栏入口
- IDetectorService 预留当前采集参数读取接口(暂返回 null,待硬件层完善)

系统设置:
- 新增数据存储根目录与日志目录配置及浏览按钮
- 修复保存时重复打开配置文件导致的配置冲突异常

测试:
- 新增 33 个单元测试,覆盖序列化往返、旧文件兼容、节点分派/降级/失败、
  位置还原全路径与混合程序执行
2026-07-03 14:09:24 +08:00
李伟 8572c4455d chore: 还原 .gitignore 中 Doc/ 目录的忽略规则 2026-06-16 13:22:04 +08:00
李伟 20c81dd7d0 fix(主程序): 修复算子泛型化后的调用点编译错误
- EdgeLineFitViewModel: EdgeLineFitProcessor() → EdgeLineFitProcessor<byte>()
- EdgeCircleFitViewModel: EdgeCircleFitProcessor() → EdgeCircleFitProcessor<byte>()
- MainViewModel: SharpenProcessor() → SharpenProcessor<byte>()
- ViewportPanelView: EdgeLineFitProcessor() → EdgeLineFitProcessor<byte>()

所有调用处均处理 8 位图,加 <byte> 类型参数后语义不变
2026-06-16 13:12:46 +08:00
QI Mingxuan 7f9c5073b5 修改.gitignore,取消PLC测试工具的git管理。 2026-06-10 11:51:48 +08:00
LI Wei.lw 491288b571 已合并 PR 112: 初版形状匹配;类精简合并
1.移除 XP.ImageProcessing.CfgControl 模块(已合并 PR111)。
2.合并 XP.ImageProcessing.Core 到 Processors/Core(已合并 PR110)。
3.新增独立的基于形状的模板匹配模式。
4.统一 C#/C++ 强度匹配相关命名规范。
![image.png](http://cntao-ap-v83/HMQ-Solution/7ff128fd-5cc6-4feb-9529-2a03b2895662/_apis/git/repositories/e2c5485f-4369-4ed9-9fb9-d087ca4e04b6/pullRequests/112/attachments/image.png)
2026-06-10 11:41:22 +08:00
李伟 cc0e6ca438 排除XP.ImageProcessing.CfgControl 2026-06-09 15:53:48 +08:00
zhengxuan.zhang b673eeb40a 统一各项目运行时目录结构
D:\XPData
├── DataBase\          # SQLite 数据库,例如 XP.db
├── DetectorImages\    # 探测器采集图像
├── Logs\              # Serilog 运行日志
├── Dump\              # 异常 Dump 文件
├── Report\            # 报告输出目录
├── Plan\              # 工艺 / CNC / 检测程序数据
├── Tools\             # 工具相关数据
└── Data\              # 其他运行数据
2026-06-05 14:03:30 +08:00
zhengxuan.zhang 27f2ef52c7 1、已删除重复目录 ReleaseFiles/win-x64/
2、所有项目的obj编译目录 加入git ignore忽略
2026-06-05 13:35:13 +08:00
李伟 1874c4a5bb 新增 ROI 对齐基础能力并打通到算子与 UI。
统一补齐对齐核心工具类、RoiAlignment 算子、模板匹配对齐扩展和多语言资源,便于在检测前稳定完成示教 ROI 到运行图的变换。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-01 17:04:32 +08:00
zhengxuan.zhang 04da9cd798 对数据库DB文件进行忽略 2026-05-18 16:21:36 +08:00
zhengxuan.zhang dcc15f62d1 修复测试用例错误 2026-05-18 15:32:00 +08:00
zhengxuan.zhang bd0ed6fd9a 增加appstate调试页面 2026-05-18 09:38:29 +08:00
zhengxuan.zhang fd9784ecb6 #调整页面布局,新增操作 Tab; 图像算子改为Tab页选择; 2026-04-30 13:56:35 +08:00
zhengxuan.zhang 80fddc45dd 新增CNC执行数据源的生成 2026-04-28 12:45:23 +08:00
李伟 95a668158a 排除XP.ImageProcessing开发测试功能 2026-04-20 10:01:31 +08:00
zhengxuan.zhang ad19742a3d #0059 修复项目目录结构,屏蔽了bin/ 生成 2026-04-17 13:57:52 +08:00
zhengxuan.zhang 6b2e46742c 从版本控制中移除 ExternalLibraries/Models 大文件,添加到 .gitignore 2026-04-14 17:46:46 +08:00
李伟 c7ce4ea6a1 合并图像处理库,删除图像lib库 2026-04-13 13:41:40 +08:00
zhengxuan.zhang 47e163f774 #0015 初步集成图像库 2026-03-14 19:51:30 +08:00
zhengxuan.zhang 9b48d5a56b #0013 优化ignore文件 2026-03-14 17:29:15 +08:00
zhengxuan.zhang 27e89282d7 #0007 更新ignore文件和RADEM.md 2026-03-13 18:10:12 +08:00
zhengxuan.zhang 029752e231 #0005 增加日志 2026-03-13 16:59:31 +08:00