李伟
|
6d27a02a9b
|
feat(算子库): ImageProcessorBase 升级为泛型基类,支持 byte/ushort 双位深
- ImageProcessorBase<TDepth> 泛型基类,where TDepth : struct, IComparable
- 保留 ImageProcessorBase 别名(= ImageProcessorBase<byte>)完全向后兼容
- 新增 PixelDepthHelper 工具类,封装 byte/ushort 转换、像素读写、阈值缩放等通用操作
- MaxPixelValue 属性动态返回位深最大值(byte=255,ushort=65535)
|
2026-06-16 11:48:19 +08:00 |
|
QI Mingxuan
|
839b4b577c
|
已合并 PR 116: 剪枝去除PLC测试工具
删除XP.Hardware.PLC.Sentry应用程序项目,修改.gitignore。
|
2026-06-10 11:54:02 +08:00 |
|
QI Mingxuan
|
7f9c5073b5
|
修改.gitignore,取消PLC测试工具的git管理。
|
2026-06-10 11:51:48 +08:00 |
|
QI Mingxuan
|
28437d4c0c
|
剪枝删除XP.Hardware.PLC.Sentry,PLC测试程序。
|
2026-06-10 11:50:35 +08:00 |
|
LI Wei.lw
|
491288b571
|
已合并 PR 112: 初版形状匹配;类精简合并
1.移除 XP.ImageProcessing.CfgControl 模块(已合并 PR111)。
2.合并 XP.ImageProcessing.Core 到 Processors/Core(已合并 PR110)。
3.新增独立的基于形状的模板匹配模式。
4.统一 C#/C++ 强度匹配相关命名规范。

|
2026-06-10 11:41:22 +08:00 |
|
LI Wei.lw
|
def60c9400
|
已合并 PR 111: 从解决方案中移除 XP.ImageProcessing.CfgControl 引用
从解决方案中移除 XP.ImageProcessing.CfgControl 引用
|
2026-06-09 16:27:24 +08:00 |
|
李伟
|
bd71cda6c8
|
从解决方案中移除 XP.ImageProcessing.CfgControl 引用
|
2026-06-09 16:26:13 +08:00 |
|
LI Wei.lw
|
672b44eea1
|
已合并 PR 110: 项目精简合并
|
2026-06-09 16:14:30 +08:00 |
|
李伟
|
841cf34890
|
合并 XP.ImageProcessing.Core 到 XP.ImageProcessing.Processors/Core
|
2026-06-09 16:11:06 +08:00 |
|
李伟
|
cc0e6ca438
|
排除XP.ImageProcessing.CfgControl
|
2026-06-09 15:53:48 +08:00 |
|
ZHANG Zhengxuan
|
bd7496db5e
|
已合并 PR 106: 新增权限模块、清理telerik 、清理ReleaseFiles重复的问题
1、新增权限模块:超级管理员、管理员和用户
2、清理telerik 、清理ReleaseFiles重复的问题
3、初版的矩阵编排功能
|
2026-06-05 14:54:23 +08:00 |
|
zhengxuan.zhang
|
70c392e0ac
|
移除未使用的telerik
|
2026-06-05 14:33:15 +08:00 |
|
zhengxuan.zhang
|
80dc70a648
|
给被主程序引用的类库项目中的 Telerik NuGet 引用增加了 PrivateAssets="all" 属性,隔离输出目录中 Telerik DLL 数量从原先主输出目录的 67 个 降到 16 个
|
2026-06-05 14:15:24 +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
|
a5397ba752
|
优化复制到当前主程序输出目录
|
2026-06-05 13:56:33 +08:00 |
|
zhengxuan.zhang
|
b3d78fe0b0
|
清理 ReleaseFiles/ 中未使用的 Telerik DLL
|
2026-06-05 13:48:35 +08:00 |
|
zhengxuan.zhang
|
27f2ef52c7
|
1、已删除重复目录 ReleaseFiles/win-x64/
2、所有项目的obj编译目录 加入git ignore忽略
|
2026-06-05 13:35:13 +08:00 |
|
QI Mingxuan
|
80ef1df9da
|
临时注释取消开发过程中的软件授权检测,需要配置文件中LicenseMode使用885
|
2026-06-04 16:24:05 +08:00 |
|
QI Mingxuan
|
0f4ceb8b3a
|
Merge branch 'Develop/XP' of http://cntao-ap-v83/HMQ-Solution/Hexagon-XplorePlane/_git/Hexagon-XplorePlane into Develop/XP
|
2026-06-04 16:22:18 +08:00 |
|
QI Mingxuan
|
504ef9fd33
|
临时注释取消开发过程中的软件授权检测,需要配置文件中LicenseMode使用885
|
2026-06-04 16:22:00 +08:00 |
|
QI Mingxuan
|
184773d01e
|
临时注释取消开发过程中的软件授权检测,需要配置文件中LicenseMode使用885
|
2026-06-04 16:20:01 +08:00 |
|
李伟
|
7643cd77da
|
更新强度匹配类名与形状匹配对应
|
2026-06-03 16:02:44 +08:00 |
|
李伟
|
e7b660ecfb
|
将 C# 强度匹配封装重命名为 IntensityMatcherHandle,与 C++ IntensityMatcher 命名对齐
|
2026-06-03 13:15:53 +08:00 |
|
zhengxuan.zhang
|
8626cd6f1b
|
对矩阵测量程序,增加模板CNC的存储
|
2026-06-03 11:37:33 +08:00 |
|
李伟
|
5cd1501de9
|
支持基于形状的模板匹配模式(独立于强度匹配)
Co-authored-by: Cursor <cursoragent@cursor.com>
|
2026-06-03 11:31:46 +08:00 |
|
zhengxuan.zhang
|
db0994e91b
|
优化界面布局,将识别定位移到主页
|
2026-06-03 10:49:36 +08:00 |
|
zhengxuan.zhang
|
0ae4cff9c9
|
Merge branch 'Develop/XP' into turbo-002-cnc
|
2026-06-03 10:02:14 +08:00 |
|
LI Wei.lw
|
e1c4c78510
|
已合并 PR 103: QFN检测模块
1.新增 ROI 对齐能力(RoiAlignmentProcessor + Alignment 基础类),打通模板位姿到 ROI 变换链路。
2.新增 QFN 一体检测算子(QfnAutoDetectionProcessor),串联模板匹配、ROI 对齐、中心/引脚空洞检测。
3.增强 QFN 相关 UI(新增 QFN 检测面板、ViewModel、图标、主界面入口与联动)。
4.改造 导航相机标定模块(新增采集服务接口/实现,标定控件重构,移除旧画布控件)。
5.优化部分 图像处理算子(如 Contrast/Threshold/GaussianBlur)与显示细节(线宽/线灰度自适应)。
|
2026-06-03 08:45:15 +08:00 |
|
zhengxuan.zhang
|
582682602f
|
修复查看记录功能
|
2026-06-02 18:05:25 +08:00 |
|
zhengxuan.zhang
|
6684143dc9
|
1、CncProgramPath 现在存储绝对路径——AssociateCncProgram 接受 filePath 参数,ViewModel 传入 OpenFileDialog 选择的完整路径
2、偏移量影响所有 SavePositionNode——执行时模板中每个位置节点的 StageX/StageY 都会叠加单元格偏移,实现整体平移
|
2026-06-02 11:43:25 +08:00 |
|
zhengxuan.zhang
|
dd62d04124
|
问题根因和修复
问题:MatrixPageView 使用 Prism 的 AutoWireViewModel,但 Prism 默认按命名约定查找 MatrixPageViewModel(不存在),导致 DataContext 为 null,所有按钮绑定都不工作。
修复:将 RegisterForNavigation<MatrixPageView>() 改为 RegisterForNavigation<MatrixPageView, MatrixEditorViewModel>(),显式告诉 Prism 使用 MatrixEditorViewModel 作为该 View 的 ViewModel。
|
2026-06-02 11:32:50 +08:00 |
|
zhengxuan.zhang
|
dee9359c5c
|
矩阵编排允许用户通过界面设定矩阵参数(行数、列数、行间距、列间距),将一个已编写好的 CNC 模板程序(.xp 文件)自动扩展为覆盖所有矩阵位置的完整检测序列,并按行优先顺序依次完成移轴→采图→检测的闭环执行
|
2026-06-02 11:25:11 +08:00 |
|
ZHANG Zhengxuan
|
011854c42a
|
已合并 PR 98: CNC界面的调整和仿真执行功能
1、调整CNC树形结构,将位置为一级节点;文件名使用label控件显示;
2、CNC执行功能调试,新增运动,探测器,射线源的仿真,点击执行,判断到位,取图,计算的逻辑
3、将CNC执行结果的值类型, 写入mainfest.json

|
2026-06-02 09:07:30 +08:00 |
|
zhengxuan.zhang
|
df50000e6a
|
启动时的登录对话框,应用启动后直接以 管理员 (Admin) 角色自动登录
|
2026-06-01 17:37:38 +08:00 |
|
zhengxuan.zhang
|
4be032918d
|
修复用户登录功能
|
2026-06-01 17:32:08 +08:00 |
|
zhengxuan.zhang
|
741874e85d
|
基于角色的权限控制
1、用户角色枚举、权限枚举、结果记录和密码存储模型
IPermissionService 接口及包含认证、权限检查、密码管理和登出功能的 PermissionService 单例
2、支持层级化角色-权限映射的权限矩阵(SuperAdmin ⊇ Admin ⊇ User)
密码持久化至 passwords.json 文件,并提供工厂默认值回退机制
3、UI 层
LoginDialog — 启动时弹出模态登录对话框,支持密码掩码输入、错误提示以及取消退出功能
RibbonStatusAreaView — 在Ribbon右侧区域始终显示角色标签和“切换用户”按钮
权限感知的CncEditorViewModel — 用户角色无法使用CNC编辑控件
权限感知的CncInspectionModulePipelineViewModel — 用户角色无法进行流程编辑
设置导航可见性 — Admin/User角色隐藏Factory_Settings,User角色隐藏Report_Settings
PasswordManagementView — 仅SuperAdmin可访问的修改角色密码对话框
PermissionTooltipHelper — 附加属性,在禁用控件上显示“当前角色无权访问此功能”提示
|
2026-06-01 17:15:59 +08:00 |
|
李伟
|
19b63fd419
|
模板匹配助手在保存模型时写入同名参考位姿 JSON。
训练 ROI 后记录基准中心和角度,保存模型时同步生成同名元数据文件,并在加载模型时自动回读,减少后续对齐配置的人工录入。
Co-authored-by: Cursor <cursoragent@cursor.com>
|
2026-06-01 17:08:20 +08:00 |
|
李伟
|
5b4ff89ef0
|
新增 QFN 一体检测算子,串联模板匹配与双路空洞检测。
将模板定位、中心 ROI 对齐、中心焊盘空洞和引脚空洞检测整合到单算子中,并输出统一判定结果,便于快速验证完整流程。
Co-authored-by: Cursor <cursoragent@cursor.com>
|
2026-06-01 17:06:48 +08:00 |
|
李伟
|
1874c4a5bb
|
新增 ROI 对齐基础能力并打通到算子与 UI。
统一补齐对齐核心工具类、RoiAlignment 算子、模板匹配对齐扩展和多语言资源,便于在检测前稳定完成示教 ROI 到运行图的变换。
Co-authored-by: Cursor <cursoragent@cursor.com>
|
2026-06-01 17:04:32 +08:00 |
|
zhengxuan.zhang
|
acbed526f6
|
修复保存高级模块ROI时,有几个点保存几个点,而不是将列表中32个值中0的部分也保存
|
2026-06-01 15:15:40 +08:00 |
|
zhengxuan.zhang
|
ad1fdb0230
|
实时过程中禁用图像预览窗体的滚轮缩放功能
|
2026-06-01 15:07:28 +08:00 |
|
zhengxuan.zhang
|
5a11af9ab1
|
优化调试面板
|
2026-06-01 14:35:37 +08:00 |
|
zhengxuan.zhang
|
4301f8a5f7
|
任务1 — 调试窗体全中文化
新建 DebugPanelLocalization.cs 集中维护中英文映射(类别 / 事件类型 / 字段名),显示用中文、内部匹配仍用英文标识,二者解耦。
涉及改动:
状态显示树:根节点 MotionState→运动状态、RaySourceState→射线源状态 等;字段 StageX→载物台X (μm) 等。StateNodeViewModel 新增 DisplayName,绑定到 UI;Name 保留英文供 FindNode 匹配
事件日志:EventLogEntry 新增 EventTypeDisplay/CategoryDisplay/FieldNameDisplay 派生属性;GridView 三列改绑中文;事件类型如 MotionStateChanged→运动状态变化,(No changes)→(无变化)
快照管理:详情树节点本地化
性能监控:PerformanceMetric 新增 StateTypeDisplay,状态类型列显示中文
快照差异窗口:标题 Snapshot Differences→快照差异对比,列头和按钮中文化
各处 MessageBox/文件对话框提示语全部翻译为中文
任务2 — 布局优化
主布局(顶部工具栏 / 左状态树 / 右上事件日志 / 右下快照·性能 Tab / 底部状态栏)符合"可视化查看系统状态与事件触发"的调试目标,结构保留。优化点:将顶部 ToolBarTray+ToolBar(带多余的拖动手柄和溢出箭头,即截图顶部那个浮动小工具条)替换为简洁的 Border+StackPanel,去掉无意义的拖拽/溢出交互。
|
2026-06-01 14:23:44 +08:00 |
|
李伟
|
b0397365b2
|
屏蔽导航相机自动连接
|
2026-06-01 09:58:25 +08:00 |
|
SONG Tian
|
a3a6bf7225
|
Merged PR 99: Updated ReconstructionNotifyService.cs 编译bug解决
Updated ReconstructionNotifyService.cs 编译bug解决
|
2026-06-01 09:28:56 +08:00 |
|
SONG Tian
|
580d61acae
|
Updated ReconstructionNotifyService.cs 编译bug解决
|
2026-06-01 01:18:06 +00:00 |
|
李伟
|
703e548c31
|
启用导航相机自动连接
|
2026-05-27 09:23:10 +08:00 |
|
李伟
|
b3d39c3492
|
标定面板图像显示控件替换为PolygonRoiCanvas,删除旧ImageCanvasControl
|
2026-05-27 09:22:56 +08:00 |
|
李伟
|
bc626a0ca8
|
坐标标定工具改造:新增采集服务接口及实现,支持一键采集标定点
|
2026-05-27 09:22:44 +08:00 |
|
zhengxuan.zhang
|
84c1c5f16d
|
CNC 检测模块输出的 数值类型如 bga检测和 孔隙检测的输出内容,要写入到 CNC 检测结果 manifest.json 合适的地址
|
2026-05-26 16:02:34 +08:00 |
|