当前位置:网站首页>Halcon and WinForm study section 2
Halcon and WinForm study section 2
2022-07-03 15:19:00 【11eleven】
be based on halconWindow Design process customization Visual inspection scheme system , First on the renderings
Mainly provide Here are a few big pieces :
One 、 Toolbar support
Two 、 The toolbar drawing process integration scheme can be imported and exported
3、 ... and 、 Input and output of the data flow of the tool process node
Four 、 Device communication
5、 ... and 、 Use of global variables
The interface above took two weeks to implement , If you have time later , Introduce paragraph by paragraph .
Scheme configuration runs through the whole business
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>
/// Scheme code
/// </summary>
public string Code { get; set; }
/// <summary>
/// Program name
/// </summary>
public string Name { get; set; }
/// <summary>
/// remarks
/// </summary>
public string Remark { get; set; }
public List<SchemeFlowInfoEntity> FlowList { set; get; }
public List<GlobalVariableModel> GlobalVariableList { set; get; }
/// <summary>
/// Device configuration
/// </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>
/// Image source
/// </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>
/// Image address PATH
/// </summary>
public List<string> ImagePathList { set; get; }
}
/// <summary>
/// Geometry creation
/// </summary>
public class GeometryContentModel : SchemeFlowNodeEntity
{
/// <summary>
/// ROIJSON
/// </summary>
public string RoiDataJson { set; get; }
/// <summary>
/// ROI The geometric
/// </summary>
public List<ROI> Regions { set; get; } = new List<ROI>();//roi aggregate
}
/// <summary>
/// blob
/// </summary>
public class BlobContentModel : SchemeFlowNodeEntity
{
}
/// <summary>
/// Color conversion
/// </summary>
public class ColorRgbContentModel : SchemeFlowNodeEntity
{
}
/// <summary>
/// Result
/// </summary>
public class ConditionResultContentModel : SchemeFlowNodeEntity
{
/// <summary>
/// Judge the condition 0: All in line ,1: Any condition meets
/// </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>
/// Tool node type
/// </summary>
public enum ToolNodeTypeEnum:long
{
/// <summary>
/// Image source
/// </summary>
ImageSource=0,
/// <summary>
/// The geometric
/// </summary>
Geometry=1,
/// <summary>
/// blob analysis
/// </summary>
Blob=2,
/// <summary>
/// Conditional results
/// </summary>
ConditionResult=3,
/// <summary>
/// Color conversion
/// </summary>
ColorRgb=4,
}
边栏推荐
- Jvm-05-object, direct memory, string constant pool
- redis缓存穿透,缓存击穿,缓存雪崩解决方案
- 【可能是全中文网最全】pushgateway入门笔记
- 视觉上位系统设计开发(halcon-winform)-1.流程节点设计
- Concurrency-02-visibility, atomicity, orderliness, volatile, CAS, atomic class, unsafe
- Kubernetes vous emmène du début à la fin
- [probably the most complete in Chinese] pushgateway entry notes
- Global and Chinese market of postal automation systems 2022-2028: Research Report on technology, participants, trends, market size and share
- Summary of JVM knowledge points
- 什么是embedding(把物体编码为一个低维稠密向量),pytorch中nn.Embedding原理及使用
猜你喜欢
Kubernetes带你从头到尾捋一遍
Jvm-02-class loading subsystem
Remote server background hangs nohup
Kubernetes vous emmène du début à la fin
Yolov5系列(一)——網絡可視化工具netron
redis缓存穿透,缓存击穿,缓存雪崩解决方案
求字符串函数和长度不受限制的字符串函数的详解
Concurrency-01-create thread, sleep, yield, wait, join, interrupt, thread state, synchronized, park, reentrantlock
百度智能云助力石嘴山市升级“互联网+养老服务”智慧康养新模式
Final review points of human-computer interaction
随机推荐
Finally, someone explained the financial risk management clearly
Stress test WebService with JMeter
Can‘t connect to MySQL server on ‘localhost‘
视觉上位系统设计开发(halcon-winform)-5.相机
视觉上位系统设计开发(halcon-winform)-2.全局变量设计
Use of Tex editor
Yolov5 advanced 8 format conversion between high and low versions
阿特拉斯atlas扭矩枪 USB通讯教程基于MTCOM
Detailed comments on MapReduce instance code on the official website
Summary of concurrent full knowledge points
Yolov5 advanced seven target tracking latest environment construction (II)
socket.io搭建分布式Web推送服务器
redis缓存穿透,缓存击穿,缓存雪崩解决方案
SQL server安装位置改不了
Using multipleoutputs to output multiple files in MapReduce
Kubernetes 进阶训练营 Pod基础
Pytoch deep learning and target detection practice notes
There are links in the linked list. Can you walk three steps faster or slower
视觉上位系统设计开发(halcon-winform)
Zero copy underlying analysis