当前位置:网站首页>Halcon与Winform学习第二节
Halcon与Winform学习第二节
2022-07-03 15:08:00 【11eleven】
基于halconWindow设计流程自定义 视觉检测方案系统,先上效果图

主要提供 以下几大块的内容:
一、工具栏的支持
二、工具栏绘制流程集成方案可导入导出
三、工具流程节点的数据流动的输入输出
四、设备通讯
五、全局变量的使用
上图界面花了两个礼拜的时间进行实现,后续有时间的话,将一段段介绍。
方案配置贯穿整个业务
public class SchemeConfig {
public static SchemeInfo Scheme { set; get; }
public static HWindow_Final HWindowControl { set; get; }
}
public class SchemeInfo : BaseField, IEntity<long>
{
public SchemeInfo()
{
Id = GeneratePrimaryKeyIdHelper.GetPrimaryKeyId();
}
public long Id { get; set; }
/// <summary>
/// 方案编码
/// </summary>
public string Code { get; set; }
/// <summary>
/// 方案名称
/// </summary>
public string Name { get; set; }
/// <summary>
/// 备注
/// </summary>
public string Remark { get; set; }
public List<SchemeFlowInfoEntity> FlowList { set; get; }
public List<GlobalVariableModel> GlobalVariableList { set; get; }
/// <summary>
/// 设备配置
/// </summary>
public GlobalDeviceConfig GlobalDeviceConfig { set; get; }
}
public class GlobalDeviceConfig
{
public List<DeviceCommumicationClient> ClientList { set; get; } = new List<DeviceCommumicationClient>();
public List<CommumicationEventReceive> ReceiveList { set; get; } = new List<CommumicationEventReceive>();
public List<CommumicationEventSend> SendList { set; get; } = new List<CommumicationEventSend>();
}
/// <summary>
/// 图像源
/// </summary>
public class ImageSourceContentModel: SchemeFlowNodeEntity
{
public override void InitData() {
NodeResultModels = new List<NodeResultModel>();
NodeResultModels.Add(new NodeResultModel() { NodeResultCode = NodeResultTypeEnum.ImageWidth.ToString(),NodeResultName =NodeResultTypeEnum.ImageWidth.GetDescription() });
NodeResultModels.Add(new NodeResultModel() { NodeResultCode = NodeResultTypeEnum.ImageHeight.ToString(), NodeResultName = NodeResultTypeEnum.ImageHeight.GetDescription() });
}
public int DefaultImageIndex { set; get; } = -1;
public string ImageFolderPath { set; get; }
/// <summary>
/// 图像地址PATH
/// </summary>
public List<string> ImagePathList { set; get; }
}
/// <summary>
/// 几何创建
/// </summary>
public class GeometryContentModel : SchemeFlowNodeEntity
{
/// <summary>
/// ROIJSON
/// </summary>
public string RoiDataJson { set; get; }
/// <summary>
/// ROI几何
/// </summary>
public List<ROI> Regions { set; get; } = new List<ROI>();//roi集合
}
/// <summary>
/// blob
/// </summary>
public class BlobContentModel : SchemeFlowNodeEntity
{
}
/// <summary>
/// 颜色转换
/// </summary>
public class ColorRgbContentModel : SchemeFlowNodeEntity
{
}
/// <summary>
/// Result
/// </summary>
public class ConditionResultContentModel : SchemeFlowNodeEntity
{
/// <summary>
/// 判断条件 0:全部符合,1:任意条件符合
/// </summary>
public int JudgeType { set; get; }
public List<ResultConditionJudgeModel> JudgeList { set; get; } = new List<ResultConditionJudgeModel>();
public Color OkColor { set; get; }
public Color NgColor { set; get; }
public int ResultLocationX { set; get; }
public int ResultLocationY { set; get; }
}
public class ResultConditionJudgeModel {
public string VariableCode { set; get; }
public string VariableName { set; get; }
public decimal MinValue { set; get; }
public decimal MaxValue { set; get; }
}
/// <summary>
/// 工具节点类型
/// </summary>
public enum ToolNodeTypeEnum:long
{
/// <summary>
/// 图像源
/// </summary>
ImageSource=0,
/// <summary>
/// 几何
/// </summary>
Geometry=1,
/// <summary>
/// blob分析
/// </summary>
Blob=2,
/// <summary>
/// 条件结果
/// </summary>
ConditionResult=3,
/// <summary>
/// 颜色转换
/// </summary>
ColorRgb=4,
}
边栏推荐
- QT - draw something else
- Mmdetection learning rate and batch_ Size relationship
- socket.io搭建分布式Web推送服务器
- Detailed comments on MapReduce instance code on the official website
- "Seven weapons" in the "treasure chest" of machine learning: Zhou Zhihua leads the publication of the new book "machine learning theory guide"
- Yolov5进阶之七目标追踪最新环境搭建(二)
- [transform] [practice] use pytoch's torch nn. Multiheadattention to realize self attention
- redis单线程问题强制梳理门外汉扫盲
- Global and Chinese market of marketing automation 2022-2028: Research Report on technology, participants, trends, market size and share
- [pytorch learning notes] transforms
猜你喜欢

什么是one-hot encoding?Pytorch中,将label变成one hot编码的两种方式

Solve the problem that pushgateway data will be overwritten by multiple push

Construction of operation and maintenance system
![[Yu Yue education] scientific computing and MATLAB language reference materials of Central South University](/img/83/922efb4f88843f1b7feaccf2b515b9.jpg)
[Yu Yue education] scientific computing and MATLAB language reference materials of Central South University

ASTC texture compression (adaptive scalable texture compression)

Byte practice plane longitude 2

Zero copy underlying analysis

What are the composite types of Blackhorse Clickhouse, an OLAP database recognized in the industry

零拷贝底层剖析

QT program font becomes larger on computers with different resolutions, overflowing controls
随机推荐
Apache ant extension tutorial
Redis主从、哨兵、集群模式介绍
Global and Chinese markets for ionization equipment 2022-2028: Research Report on technology, participants, trends, market size and share
[attention mechanism] [first vit] Detr, end to end object detection with transformers the main components of the network are CNN and transformer
Using TCL (tool command language) to manage Tornado (for VxWorks) can start the project
[engine development] in depth GPU and rendering optimization (basic)
【Transform】【NLP】首次提出Transformer,Google Brain团队2017年论文《Attention is all you need》
Devaxpress: range selection control rangecontrol uses
406. 根据身高重建队列
Global and Chinese markets for sterile packaging 2022-2028: Research Report on technology, participants, trends, market size and share
高并发下之redis锁优化实战
【可能是全中文网最全】pushgateway入门笔记
Yolov5 advanced seven target tracking latest environment construction (II)
el-switch 赋值后状态不变化
Vs+qt multithreading implementation -- run and movetothread
What is embedding (encoding an object into a low dimensional dense vector), NN in pytorch Principle and application of embedding
【日常训练】395. 至少有 K 个重复字符的最长子串
What is label encoding? How to distinguish and use one hot encoding and label encoding?
[set theory] inclusion exclusion principle (complex example)
Explanation of time complexity and space complexity