Compare commits
14 Commits
77b75050b2
...
KM
Author | SHA1 | Date | |
---|---|---|---|
bb943740da | |||
71bbea56a7 | |||
6c1d86619e | |||
1a84519874 | |||
4e75b0d4da | |||
95bc9ce3b3 | |||
bc0ed5d574 | |||
6a9e7e4343 | |||
f12c2f0cd9 | |||
8e2197f46e | |||
ed53c8e5db | |||
b749eb4266 | |||
ae5c1122ed | |||
6973d39cad |
@ -3,6 +3,7 @@ using System.ComponentModel;
|
|||||||
using System.Drawing.Imaging;
|
using System.Drawing.Imaging;
|
||||||
using AntdUI;
|
using AntdUI;
|
||||||
using DH.Commons.Enums;
|
using DH.Commons.Enums;
|
||||||
|
using DVPCameraType;
|
||||||
using HalconDotNet;
|
using HalconDotNet;
|
||||||
using OpenCvSharp;
|
using OpenCvSharp;
|
||||||
|
|
||||||
@ -47,11 +48,13 @@ namespace DH.Commons.Base
|
|||||||
// 私有字段 + 带通知的属性(与DetectionLabel风格一致)
|
// 私有字段 + 带通知的属性(与DetectionLabel风格一致)
|
||||||
private bool _isEnabled = false;
|
private bool _isEnabled = false;
|
||||||
private bool _isallPicEnabled = true;//默认全画幅
|
private bool _isallPicEnabled = true;//默认全画幅
|
||||||
|
private bool _isRGBEnabled = true;//默认彩色
|
||||||
private bool _isContinueMode = false;
|
private bool _isContinueMode = false;
|
||||||
private bool _isSavePicEnabled = false;
|
private bool _isSavePicEnabled = false;
|
||||||
private bool _isZoomCamera = false;
|
private bool _isZoomCamera = false;
|
||||||
private string _imageSaveDirectory;
|
private string _imageSaveDirectory;
|
||||||
private EnumCamType _CamType;
|
private EnumCamType _CamType;
|
||||||
|
private dvpStreamFormat _dvpstreamFormat = dvpStreamFormat.S_RGB24;
|
||||||
private ImageFormat _imageFormat = ImageFormat.Jpeg;
|
private ImageFormat _imageFormat = ImageFormat.Jpeg;
|
||||||
private bool _isHardwareTrigger = true;
|
private bool _isHardwareTrigger = true;
|
||||||
private string _serialNumber = string.Empty;
|
private string _serialNumber = string.Empty;
|
||||||
@ -71,6 +74,20 @@ namespace DH.Commons.Base
|
|||||||
|
|
||||||
public volatile int SnapshotCount = 0;
|
public volatile int SnapshotCount = 0;
|
||||||
|
|
||||||
|
[Category("相机设置")]
|
||||||
|
[DisplayName("图像格式")]
|
||||||
|
[Description("相机采集图像格式")]
|
||||||
|
public dvpStreamFormat DvpImageFormat
|
||||||
|
{
|
||||||
|
get => _dvpstreamFormat;
|
||||||
|
set
|
||||||
|
{
|
||||||
|
if (_dvpstreamFormat == value) return;
|
||||||
|
_dvpstreamFormat = value;
|
||||||
|
OnPropertyChanged(nameof(DvpImageFormat));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
[Category("采图模式")]
|
[Category("采图模式")]
|
||||||
[DisplayName("连续模式")]
|
[DisplayName("连续模式")]
|
||||||
[Description("是否连续模式。true:连续模式采图;false:触发模式采图")]
|
[Description("是否连续模式。true:连续模式采图;false:触发模式采图")]
|
||||||
|
@ -11,6 +11,9 @@ namespace DH.Commons.Base
|
|||||||
{
|
{
|
||||||
public class GlobalConfig : NotifyProperty
|
public class GlobalConfig : NotifyProperty
|
||||||
{
|
{
|
||||||
|
bool _EnableVibrator=false;
|
||||||
|
bool _EnableBelt = false;
|
||||||
|
int _ClearTime=0;
|
||||||
string _name;
|
string _name;
|
||||||
private BindingList<PLCItem> _InitProcessList = new BindingList<PLCItem>();
|
private BindingList<PLCItem> _InitProcessList = new BindingList<PLCItem>();
|
||||||
private BindingList<PLCItem> _StartProcessList = new BindingList<PLCItem>();
|
private BindingList<PLCItem> _StartProcessList = new BindingList<PLCItem>();
|
||||||
@ -29,7 +32,42 @@ namespace DH.Commons.Base
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
public bool EnableBelt
|
||||||
|
{
|
||||||
|
get => _EnableBelt;
|
||||||
|
set
|
||||||
|
{
|
||||||
|
if (_EnableBelt != value)
|
||||||
|
{
|
||||||
|
_EnableBelt = value;
|
||||||
|
OnPropertyChanged(nameof(EnableBelt));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
public bool EnableVibrator
|
||||||
|
{
|
||||||
|
get => _EnableVibrator;
|
||||||
|
set
|
||||||
|
{
|
||||||
|
if (_EnableVibrator != value)
|
||||||
|
{
|
||||||
|
_EnableVibrator = value;
|
||||||
|
OnPropertyChanged(nameof(EnableVibrator));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
public int ClearTime
|
||||||
|
{
|
||||||
|
get => _ClearTime;
|
||||||
|
set
|
||||||
|
{
|
||||||
|
if (_ClearTime != value)
|
||||||
|
{
|
||||||
|
_ClearTime = value;
|
||||||
|
OnPropertyChanged(nameof(ClearTime));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
public BindingList<PLCItem> InitProcessList
|
public BindingList<PLCItem> InitProcessList
|
||||||
{
|
{
|
||||||
get => _InitProcessList;
|
get => _InitProcessList;
|
||||||
|
@ -27,6 +27,9 @@
|
|||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Reference Include="DVPCameraCS64">
|
||||||
|
<HintPath>..\X64\Debug\DVPCameraCS64.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="halcondotnet">
|
<Reference Include="halcondotnet">
|
||||||
<HintPath>..\x64\Debug\halcondotnet.dll</HintPath>
|
<HintPath>..\x64\Debug\halcondotnet.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
|
@ -9,8 +9,9 @@ namespace DH.Commons.Enums
|
|||||||
{
|
{
|
||||||
public enum EnumStatus
|
public enum EnumStatus
|
||||||
{
|
{
|
||||||
未运行,
|
待机中,
|
||||||
运行中,
|
运行中,
|
||||||
|
清料中,
|
||||||
警告,
|
警告,
|
||||||
异常
|
异常
|
||||||
}
|
}
|
||||||
|
@ -18,7 +18,7 @@ namespace DH.Commons.Models
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// 当前状态
|
/// 当前状态
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static EnumStatus CurrentStatus =EnumStatus.未运行;
|
public static EnumStatus CurrentStatus =EnumStatus.待机中;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -27,7 +27,7 @@ namespace DH.Devices.Camera
|
|||||||
public bool Connected=false;
|
public bool Connected=false;
|
||||||
public int m_n_dev_count = 0;
|
public int m_n_dev_count = 0;
|
||||||
private DVPCamera.dvpStreamCallback ImageCallback;
|
private DVPCamera.dvpStreamCallback ImageCallback;
|
||||||
public dvpStreamFormat dvpStreamFormat = dvpStreamFormat.S_RGB24;
|
// public dvpStreamFormat dvpStreamFormat = dvpStreamFormat.S_RGB24;
|
||||||
public int m_CamCount = 0;
|
public int m_CamCount = 0;
|
||||||
public Double m_dfDisplayCount = 0;
|
public Double m_dfDisplayCount = 0;
|
||||||
|
|
||||||
@ -63,6 +63,8 @@ namespace DH.Devices.Camera
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
if (CameraName == "Cam1")
|
||||||
|
Console.WriteLine("");
|
||||||
pCallBackFunc = new DVPCamera.dvpEventCallback(cbExceptiondelegate);
|
pCallBackFunc = new DVPCamera.dvpEventCallback(cbExceptiondelegate);
|
||||||
nRet = DVPCamera.dvpOpenByUserId(CameraName,
|
nRet = DVPCamera.dvpOpenByUserId(CameraName,
|
||||||
dvpOpenMode.OPEN_NORMAL,
|
dvpOpenMode.OPEN_NORMAL,
|
||||||
@ -74,7 +76,7 @@ namespace DH.Devices.Camera
|
|||||||
throw new Exception($"Create device failed:{nRet:x8}");
|
throw new Exception($"Create device failed:{nRet:x8}");
|
||||||
}
|
}
|
||||||
|
|
||||||
nRet = DVPCamera.dvpSetTargetFormat(m_handle, (dvpStreamFormat)dvpStreamFormat);
|
nRet = DVPCamera.dvpSetTargetFormat(m_handle, (dvpStreamFormat)DvpImageFormat);
|
||||||
if (dvpStatus.DVP_STATUS_OK != nRet)
|
if (dvpStatus.DVP_STATUS_OK != nRet)
|
||||||
{
|
{
|
||||||
throw new Exception($"Set image format failed:{nRet:x8}");
|
throw new Exception($"Set image format failed:{nRet:x8}");
|
||||||
@ -156,7 +158,10 @@ namespace DH.Devices.Camera
|
|||||||
}
|
}
|
||||||
//全画幅
|
//全画幅
|
||||||
if (!IsAllPicEnabled)
|
if (!IsAllPicEnabled)
|
||||||
|
{
|
||||||
SetPictureRoi((int)ROIX, (int)ROIY, (int)ROIW, (int)ROIH);
|
SetPictureRoi((int)ROIX, (int)ROIY, (int)ROIW, (int)ROIH);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
//// 设置 触发延迟
|
//// 设置 触发延迟
|
||||||
if (TriggerDelay > 0)
|
if (TriggerDelay > 0)
|
||||||
|
@ -85,11 +85,15 @@ namespace DH.Devices.Motion
|
|||||||
|
|
||||||
public void NewPieces(int diskIndex, uint pieceNumber)
|
public void NewPieces(int diskIndex, uint pieceNumber)
|
||||||
{
|
{
|
||||||
_taskFactory.StartNew(() =>
|
Task.Run(() =>
|
||||||
{
|
{
|
||||||
Thread.CurrentThread.Priority = ThreadPriority.Highest;
|
try {
|
||||||
|
Thread.CurrentThread.Priority = ThreadPriority.Highest;
|
||||||
|
|
||||||
|
OnNewPieces?.Invoke(diskIndex, pieceNumber);
|
||||||
|
}
|
||||||
|
catch (Exception ex) { /* 记录异常 */ }
|
||||||
|
|
||||||
OnNewPieces?.Invoke(diskIndex, pieceNumber);
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
public void SetResetFlag(bool isReset)
|
public void SetResetFlag(bool isReset)
|
||||||
|
@ -627,11 +627,22 @@ namespace DH.Devices.PLC
|
|||||||
|
|
||||||
public void NewPieces(int axisIndex, uint pieceNumber)
|
public void NewPieces(int axisIndex, uint pieceNumber)
|
||||||
{
|
{
|
||||||
_taskFactory.StartNew(() =>
|
//_taskFactory.StartNew(() =>
|
||||||
{
|
//{
|
||||||
Thread.CurrentThread.Priority = ThreadPriority.Highest;
|
// Thread.CurrentThread.Priority = ThreadPriority.Highest;
|
||||||
|
|
||||||
|
// OnNewPieces?.Invoke(axisIndex, pieceNumber);
|
||||||
|
//});
|
||||||
|
Task.Run(() =>
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
Thread.CurrentThread.Priority = ThreadPriority.Highest;
|
||||||
|
|
||||||
|
OnNewPieces?.Invoke(axisIndex, pieceNumber);
|
||||||
|
}
|
||||||
|
catch (Exception ex) { /* 记录异常 */ }
|
||||||
|
|
||||||
OnNewPieces?.Invoke(axisIndex, pieceNumber);
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
public async Task HeartbeatAsync1()
|
public async Task HeartbeatAsync1()
|
||||||
@ -697,14 +708,14 @@ namespace DH.Devices.PLC
|
|||||||
//while (CurrentState != DeviceState.DSClose && CurrentState != DeviceState.DSExcept && CurrentState != DeviceState.DSUninit)
|
//while (CurrentState != DeviceState.DSClose && CurrentState != DeviceState.DSExcept && CurrentState != DeviceState.DSUninit)
|
||||||
while (Connected)
|
while (Connected)
|
||||||
{
|
{
|
||||||
Stopwatch sw = new Stopwatch();
|
// Stopwatch sw = new Stopwatch();
|
||||||
uint tmpPieceNumber = 0;
|
uint tmpPieceNumber = 0;
|
||||||
sw.Start();
|
// sw.Start();
|
||||||
|
|
||||||
// var ret = TcpNet.ReadUInt16("D1016");
|
// var ret = TcpNet.ReadUInt16("D1016");
|
||||||
var ret = TcpNet.ReadUInt32(Count);
|
var ret = TcpNet.ReadUInt32(Count);
|
||||||
|
|
||||||
sw.Stop();
|
//sw.Stop();
|
||||||
if (ret.IsSuccess)
|
if (ret.IsSuccess)
|
||||||
{
|
{
|
||||||
tmpPieceNumber = ret.Content;
|
tmpPieceNumber = ret.Content;
|
||||||
@ -712,7 +723,7 @@ namespace DH.Devices.PLC
|
|||||||
|
|
||||||
if (ret.IsSuccess && ret.Content > piecesCount)
|
if (ret.IsSuccess && ret.Content > piecesCount)
|
||||||
{
|
{
|
||||||
sw.Start();
|
// sw.Start();
|
||||||
// Console.WriteLine($"{DateTime.Now.ToString("HH:mm:ss.fff")} 板卡{station}产品入列触发{tmpPieceNumber}");
|
// Console.WriteLine($"{DateTime.Now.ToString("HH:mm:ss.fff")} 板卡{station}产品入列触发{tmpPieceNumber}");
|
||||||
//LogAsync(DateTime.Now, LogLevel.Information, $"转盘{0}产品入列 {piecesCountDic[0]} size:{sum}");
|
//LogAsync(DateTime.Now, LogLevel.Information, $"转盘{0}产品入列 {piecesCountDic[0]} size:{sum}");
|
||||||
if (tmpPieceNumber != piecesCount + 1)
|
if (tmpPieceNumber != piecesCount + 1)
|
||||||
@ -724,8 +735,8 @@ namespace DH.Devices.PLC
|
|||||||
piecesCount = tmpPieceNumber;
|
piecesCount = tmpPieceNumber;
|
||||||
//NewPieces(ai, piecesCountDic[station]);
|
//NewPieces(ai, piecesCountDic[station]);
|
||||||
NewPieces(1, piecesCount);
|
NewPieces(1, piecesCount);
|
||||||
sw.Stop();
|
// sw.Stop();
|
||||||
startTime = DateTime.Now;
|
// startTime = DateTime.Now;
|
||||||
//if (idalarm)
|
//if (idalarm)
|
||||||
//{
|
//{
|
||||||
// idalarm = false;
|
// idalarm = false;
|
||||||
@ -760,6 +771,12 @@ namespace DH.Devices.PLC
|
|||||||
//LogAsync(DateTime.Now, LogLevel.Information, $"停止转盘");
|
//LogAsync(DateTime.Now, LogLevel.Information, $"停止转盘");
|
||||||
//转盘使能
|
//转盘使能
|
||||||
TurnEnable(true);
|
TurnEnable(true);
|
||||||
|
RedLight(false);
|
||||||
|
YellowLight(false);
|
||||||
|
//绿灯
|
||||||
|
GreenLight(true);
|
||||||
|
|
||||||
|
|
||||||
LogAsync(DateTime.Now, LogLevel.Information, $"启用心跳-状态复位-关闭定位-写入流程加载点位配置-计数清零-停止转盘-转盘使能");
|
LogAsync(DateTime.Now, LogLevel.Information, $"启用心跳-状态复位-关闭定位-写入流程加载点位配置-计数清零-停止转盘-转盘使能");
|
||||||
//开启入料监听
|
//开启入料监听
|
||||||
MonitorPieces();
|
MonitorPieces();
|
||||||
@ -822,25 +839,70 @@ namespace DH.Devices.PLC
|
|||||||
//流程开启操作配置
|
//流程开启操作配置
|
||||||
// ProcessInitialAction();
|
// ProcessInitialAction();
|
||||||
// if (_PLC?Enabled == true)
|
// if (_PLC?Enabled == true)
|
||||||
//皮带
|
|
||||||
// _PLC.Belt(true);
|
|
||||||
|
|
||||||
|
|
||||||
// LogAsync(DateTime.Now, LogLevel.Information, $"写入流程加载点位配置");
|
// LogAsync(DateTime.Now, LogLevel.Information, $"写入流程加载点位配置");
|
||||||
//计数清零
|
|
||||||
CountToZero();
|
bool? enableBelt = ConfigModel.GlobalList?.FirstOrDefault()?.EnableBelt;
|
||||||
LogAsync(DateTime.Now, LogLevel.Information, $"状态复位-关闭定位-写入流程加载点位配置-计数清零");
|
if (enableBelt == true)
|
||||||
|
{
|
||||||
|
Belt(true);
|
||||||
|
}
|
||||||
|
Thread.Sleep(1000);
|
||||||
|
bool? enableVibrator = ConfigModel.GlobalList?.FirstOrDefault()?.EnableVibrator;
|
||||||
|
if (enableVibrator == true)
|
||||||
|
{
|
||||||
|
Vibrator(true);
|
||||||
|
}
|
||||||
|
Thread.Sleep(1000);
|
||||||
|
//转盘使能
|
||||||
|
TurnEnable(true);
|
||||||
//转盘启动
|
//转盘启动
|
||||||
TurnStart(true);
|
TurnStart(true);
|
||||||
|
Thread.Sleep(1000);
|
||||||
|
//计数清零
|
||||||
|
CountToZero();
|
||||||
|
Thread.Sleep(1000);
|
||||||
|
|
||||||
|
LogAsync(DateTime.Now, LogLevel.Information, $"状态复位-关闭定位-写入流程加载点位配置-计数清零");
|
||||||
|
|
||||||
|
Thread.Sleep(200);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void StopProcess()
|
public void StopProcess()
|
||||||
{
|
{
|
||||||
StatusReset();
|
StatusReset();
|
||||||
VisionPos(false);
|
VisionPos(false);
|
||||||
CountToZero();
|
CountToZero();
|
||||||
|
bool? enableVibrator = ConfigModel.GlobalList?.FirstOrDefault()?.EnableVibrator;
|
||||||
|
if (enableVibrator == true)
|
||||||
|
{
|
||||||
|
Vibrator(true);
|
||||||
|
}
|
||||||
|
Thread.Sleep(1000);
|
||||||
|
bool? enableBelt = ConfigModel.GlobalList?.FirstOrDefault()?.EnableBelt;
|
||||||
|
if (enableBelt == true)
|
||||||
|
{
|
||||||
|
Belt(false);
|
||||||
|
}
|
||||||
|
Thread.Sleep(1000);
|
||||||
StopProcessAction();
|
StopProcessAction();
|
||||||
TurnStart(false);
|
TurnStart(false);
|
||||||
// LogAsync(DateTime.Now, LogLevel.Information, $"PLC断开连接");
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public async Task ExecuteClearDelayAsync()
|
||||||
|
{
|
||||||
|
int? clearTime = ConfigModel.GlobalList?.FirstOrDefault()?.ClearTime;
|
||||||
|
if (clearTime != null)
|
||||||
|
{
|
||||||
|
TurnClear(true);
|
||||||
|
await Task.Delay(clearTime.Value * 1000);
|
||||||
|
TurnClear(false);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
public void CloseProcess()
|
public void CloseProcess()
|
||||||
{
|
{
|
||||||
@ -850,7 +912,11 @@ namespace DH.Devices.PLC
|
|||||||
TurnStart(false);
|
TurnStart(false);
|
||||||
TurnEnable(false);
|
TurnEnable(false);
|
||||||
StopProcessAction();
|
StopProcessAction();
|
||||||
|
TurnClear(false);
|
||||||
OpenHeartbeat(false);
|
OpenHeartbeat(false);
|
||||||
|
GreenLight(false);
|
||||||
|
YellowLight(false);
|
||||||
|
RedLight(true);
|
||||||
PLCDisConnect();
|
PLCDisConnect();
|
||||||
// LogAsync(DateTime.Now, LogLevel.Information, $"PLC断开连接");
|
// LogAsync(DateTime.Now, LogLevel.Information, $"PLC断开连接");
|
||||||
}
|
}
|
||||||
@ -1014,6 +1080,25 @@ namespace DH.Devices.PLC
|
|||||||
WriteBool(pLCItem.Address, b);
|
WriteBool(pLCItem.Address, b);
|
||||||
Thread.Sleep(30);
|
Thread.Sleep(30);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void Belt(bool b)
|
||||||
|
{
|
||||||
|
PLCItem? pLCItem = PLCItemList.FirstOrDefault(u => u.Name == "皮带");
|
||||||
|
if (pLCItem == null)
|
||||||
|
return;
|
||||||
|
WriteBool(pLCItem.Address, b);
|
||||||
|
Thread.Sleep(30);
|
||||||
|
|
||||||
|
}
|
||||||
|
public void Vibrator(bool b)
|
||||||
|
{
|
||||||
|
PLCItem? pLCItem = PLCItemList.FirstOrDefault(u => u.Name == "振动盘");
|
||||||
|
if (pLCItem == null)
|
||||||
|
return;
|
||||||
|
WriteBool(pLCItem.Address, b);
|
||||||
|
Thread.Sleep(30);
|
||||||
|
|
||||||
|
}
|
||||||
public void Motor(bool direction, int speed, int pos)
|
public void Motor(bool direction, int speed, int pos)
|
||||||
{
|
{
|
||||||
|
|
||||||
@ -1143,7 +1228,13 @@ namespace DH.Devices.PLC
|
|||||||
elapsedTime += checkInterval;
|
elapsedTime += checkInterval;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
BarrierToZero(false);
|
||||||
|
Thread.Sleep(300);
|
||||||
|
// 检查是否不在原点,如果不在,则回原点
|
||||||
|
BarrierClockwise(false);
|
||||||
|
Thread.Sleep(300);
|
||||||
|
BarrierCounterclockwise(false);
|
||||||
|
Thread.Sleep(300);
|
||||||
// 无论是刚回到原点还是已经在原点,执行目标位置、速度和方向设置
|
// 无论是刚回到原点还是已经在原点,执行目标位置、速度和方向设置
|
||||||
BarrierSpeed(speed);
|
BarrierSpeed(speed);
|
||||||
Thread.Sleep(300);
|
Thread.Sleep(300);
|
||||||
|
@ -32,6 +32,10 @@ namespace DH.Devices.Vision
|
|||||||
bool res = false;
|
bool res = false;
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
if (!Path.GetExtension(mLInit.ModelFile).Equals(".trt", StringComparison.OrdinalIgnoreCase))
|
||||||
|
{
|
||||||
|
throw new Exception("选择的模型不是trt格式");
|
||||||
|
}
|
||||||
Model = MLGPUEngine.InitModel(mLInit.ModelFile, 1, mLInit.Score_thre, mLInit.GPUId, 3, 8);
|
Model = MLGPUEngine.InitModel(mLInit.ModelFile, 1, mLInit.Score_thre, mLInit.GPUId, 3, 8);
|
||||||
|
|
||||||
//Model = MLEngine.InitModel(mLInit.ModelFile, 1, 0.45f, 0, 3);
|
//Model = MLEngine.InitModel(mLInit.ModelFile, 1, 0.45f, 0, 3);
|
||||||
|
@ -32,13 +32,21 @@ namespace DH.Devices.Vision
|
|||||||
|
|
||||||
public void Init()
|
public void Init()
|
||||||
{
|
{
|
||||||
//InitialQueue();
|
try
|
||||||
InitialHalconTools();
|
{
|
||||||
InitialSimboMLEnginesAsync();
|
//InitialQueue();
|
||||||
|
InitialHalconTools();
|
||||||
|
InitialSimboMLEnginesAsync();
|
||||||
|
|
||||||
|
// ImageSaveHelper.OnImageSaveExceptionRaised -= ImageSaveHelper_OnImageSaveExceptionRaised;
|
||||||
|
// ImageSaveHelper.OnImageSaveExceptionRaised += ImageSaveHelper_OnImageSaveExceptionRaised;
|
||||||
|
// base.Init();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
throw new Exception(ex.Message);
|
||||||
|
}
|
||||||
|
|
||||||
// ImageSaveHelper.OnImageSaveExceptionRaised -= ImageSaveHelper_OnImageSaveExceptionRaised;
|
|
||||||
// ImageSaveHelper.OnImageSaveExceptionRaised += ImageSaveHelper_OnImageSaveExceptionRaised;
|
|
||||||
// base.Init();
|
|
||||||
}
|
}
|
||||||
public void Stop()
|
public void Stop()
|
||||||
{
|
{
|
||||||
@ -292,9 +300,16 @@ namespace DH.Devices.Vision
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
private bool InitialSimboMLEnginesAsync()
|
private bool InitialSimboMLEnginesAsync()
|
||||||
{
|
{
|
||||||
//深度学习 模型加载
|
try
|
||||||
var resultOK = MLLoadModel();
|
{
|
||||||
return resultOK;
|
//深度学习 模型加载
|
||||||
|
var resultOK = MLLoadModel();
|
||||||
|
return resultOK;
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
throw new Exception(ex.Message);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 深度学习 模型加载
|
/// 深度学习 模型加载
|
||||||
@ -358,6 +373,7 @@ namespace DH.Devices.Vision
|
|||||||
{
|
{
|
||||||
// LogAsync(DateTime.Now, LogLevel.Exception, $"异常:模型并发加载异常:{ex.GetExceptionMessage()}");
|
// LogAsync(DateTime.Now, LogLevel.Exception, $"异常:模型并发加载异常:{ex.GetExceptionMessage()}");
|
||||||
resultOK = false;
|
resultOK = false;
|
||||||
|
throw new Exception(ex.Message);
|
||||||
}
|
}
|
||||||
|
|
||||||
return resultOK;
|
return resultOK;
|
||||||
@ -409,7 +425,7 @@ namespace DH.Devices.Vision
|
|||||||
}
|
}
|
||||||
MLInit mLInit;
|
MLInit mLInit;
|
||||||
string inferenceDevice = "CPU";
|
string inferenceDevice = "CPU";
|
||||||
if (dc.IsEnableGPU)
|
if (dc.ModelType== ModelType.目标检测GPU)
|
||||||
{
|
{
|
||||||
inferenceDevice = "GPU";
|
inferenceDevice = "GPU";
|
||||||
mLInit = new MLInit(dc.ModelPath, isGPU, coreInx, dc.ModelconfThreshold);
|
mLInit = new MLInit(dc.ModelPath, isGPU, coreInx, dc.ModelconfThreshold);
|
||||||
@ -432,7 +448,7 @@ namespace DH.Devices.Vision
|
|||||||
{
|
{
|
||||||
// LogAsync(DateTime.Now, LogLevel.Error, $"模型加载成功;是否GPU:{isGPU} CoreInx:{coreInx} - {dc.Name}" + $" {dc.ModelType.GetEnumDescription()}:{dc.ModelPath}");
|
// LogAsync(DateTime.Now, LogLevel.Error, $"模型加载成功;是否GPU:{isGPU} CoreInx:{coreInx} - {dc.Name}" + $" {dc.ModelType.GetEnumDescription()}:{dc.ModelPath}");
|
||||||
|
|
||||||
throw new ProcessException($"异常:是否GPU:{isGPU} CoreInx:{coreInx} - {dc.Name}模型加载异常:{ex.GetExceptionMessage()}");
|
throw new Exception($"异常:是否GPU:{isGPU} CoreInx:{coreInx} - {dc.Name}模型加载异常:{ex.Message}");
|
||||||
}
|
}
|
||||||
return mLEngineSet;
|
return mLEngineSet;
|
||||||
}
|
}
|
||||||
|
@ -109,9 +109,6 @@
|
|||||||
<Compile Include="Views\Sys\User\UserPage.cs" />
|
<Compile Include="Views\Sys\User\UserPage.cs" />
|
||||||
<Compile Include="Views\Sys\User\UserPage.Designer.cs" />
|
<Compile Include="Views\Sys\User\UserPage.Designer.cs" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
|
||||||
<Content Include="favicon.ico" />
|
|
||||||
</ItemGroup>
|
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="AntdUI" Version="1.8.9" />
|
<PackageReference Include="AntdUI" Version="1.8.9" />
|
||||||
|
Binary file not shown.
Before Width: | Height: | Size: 4.2 KiB |
@ -10,7 +10,7 @@
|
|||||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||||
<Platforms>AnyCPU;x64</Platforms>
|
<Platforms>AnyCPU;x64</Platforms>
|
||||||
<OutputType>WinExe</OutputType>
|
<OutputType>WinExe</OutputType>
|
||||||
<ApplicationIcon>assets\favicon.ico</ApplicationIcon>
|
<ApplicationIcon>assets\logo.ico</ApplicationIcon>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
|
|
||||||
@ -23,7 +23,8 @@
|
|||||||
|
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Content Include="assets\favicon.ico" />
|
<Content Include="assets\logo.ico" />
|
||||||
|
<Content Include="assets\screenshots\favicon.ico" />
|
||||||
<Content Include="db\config.json">
|
<Content Include="db\config.json">
|
||||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||||
</Content>
|
</Content>
|
||||||
@ -93,10 +94,13 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="db\db.sqlite">
|
<None Include="assets\favicon.ico" />
|
||||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
<None Include="db\db.sqlite">
|
||||||
</None>
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||||
</ItemGroup>
|
<!-- 仅在首次生成时复制 -->
|
||||||
|
<Condition>!Exists('$(OutputPath)\db\db.sqlite')</Condition>
|
||||||
|
</None>
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
</Project>
|
</Project>
|
51
DHSoftware/MainWindow.Designer.cs
generated
51
DHSoftware/MainWindow.Designer.cs
generated
@ -53,7 +53,6 @@
|
|||||||
dgvCamreaNums = new DataGridView();
|
dgvCamreaNums = new DataGridView();
|
||||||
panelNums = new AntdUI.Panel();
|
panelNums = new AntdUI.Panel();
|
||||||
tableLayoutNums = new TableLayoutPanel();
|
tableLayoutNums = new TableLayoutPanel();
|
||||||
dgvProductNums = new DataGridView();
|
|
||||||
tableLayoutPanel3 = new TableLayoutPanel();
|
tableLayoutPanel3 = new TableLayoutPanel();
|
||||||
lblTotalTime = new Label();
|
lblTotalTime = new Label();
|
||||||
label1 = new Label();
|
label1 = new Label();
|
||||||
@ -63,6 +62,7 @@
|
|||||||
lblOEE_Total = new Label();
|
lblOEE_Total = new Label();
|
||||||
label10 = new Label();
|
label10 = new Label();
|
||||||
label7 = new Label();
|
label7 = new Label();
|
||||||
|
tagMachineStatus = new AntdUI.Tag();
|
||||||
panel2 = new AntdUI.Panel();
|
panel2 = new AntdUI.Panel();
|
||||||
panel1 = new AntdUI.Panel();
|
panel1 = new AntdUI.Panel();
|
||||||
segmented2 = new AntdUI.Segmented();
|
segmented2 = new AntdUI.Segmented();
|
||||||
@ -94,7 +94,6 @@
|
|||||||
((System.ComponentModel.ISupportInitialize)dgvCamreaNums).BeginInit();
|
((System.ComponentModel.ISupportInitialize)dgvCamreaNums).BeginInit();
|
||||||
panelNums.SuspendLayout();
|
panelNums.SuspendLayout();
|
||||||
tableLayoutNums.SuspendLayout();
|
tableLayoutNums.SuspendLayout();
|
||||||
((System.ComponentModel.ISupportInitialize)dgvProductNums).BeginInit();
|
|
||||||
tableLayoutPanel3.SuspendLayout();
|
tableLayoutPanel3.SuspendLayout();
|
||||||
panel1.SuspendLayout();
|
panel1.SuspendLayout();
|
||||||
panel3.SuspendLayout();
|
panel3.SuspendLayout();
|
||||||
@ -145,9 +144,9 @@
|
|||||||
// tabPage3
|
// tabPage3
|
||||||
//
|
//
|
||||||
tabPage3.Controls.Add(panel7);
|
tabPage3.Controls.Add(panel7);
|
||||||
tabPage3.Location = new Point(3, 28);
|
tabPage3.Location = new Point(3, 3);
|
||||||
tabPage3.Name = "tabPage3";
|
tabPage3.Name = "tabPage3";
|
||||||
tabPage3.Size = new Size(574, 145);
|
tabPage3.Size = new Size(574, 170);
|
||||||
tabPage3.TabIndex = 0;
|
tabPage3.TabIndex = 0;
|
||||||
tabPage3.Text = "日志";
|
tabPage3.Text = "日志";
|
||||||
//
|
//
|
||||||
@ -156,7 +155,7 @@
|
|||||||
panel7.Dock = DockStyle.Fill;
|
panel7.Dock = DockStyle.Fill;
|
||||||
panel7.Location = new Point(0, 0);
|
panel7.Location = new Point(0, 0);
|
||||||
panel7.Name = "panel7";
|
panel7.Name = "panel7";
|
||||||
panel7.Size = new Size(574, 145);
|
panel7.Size = new Size(574, 170);
|
||||||
panel7.TabIndex = 2;
|
panel7.TabIndex = 2;
|
||||||
//
|
//
|
||||||
// tabMain
|
// tabMain
|
||||||
@ -296,8 +295,8 @@
|
|||||||
//
|
//
|
||||||
tableLayoutNums.ColumnCount = 1;
|
tableLayoutNums.ColumnCount = 1;
|
||||||
tableLayoutNums.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 100F));
|
tableLayoutNums.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 100F));
|
||||||
tableLayoutNums.Controls.Add(dgvProductNums, 0, 0);
|
|
||||||
tableLayoutNums.Controls.Add(tableLayoutPanel3, 0, 1);
|
tableLayoutNums.Controls.Add(tableLayoutPanel3, 0, 1);
|
||||||
|
tableLayoutNums.Controls.Add(tagMachineStatus, 0, 0);
|
||||||
tableLayoutNums.Dock = DockStyle.Fill;
|
tableLayoutNums.Dock = DockStyle.Fill;
|
||||||
tableLayoutNums.Location = new Point(0, 0);
|
tableLayoutNums.Location = new Point(0, 0);
|
||||||
tableLayoutNums.Name = "tableLayoutNums";
|
tableLayoutNums.Name = "tableLayoutNums";
|
||||||
@ -308,31 +307,6 @@
|
|||||||
tableLayoutNums.Size = new Size(338, 101);
|
tableLayoutNums.Size = new Size(338, 101);
|
||||||
tableLayoutNums.TabIndex = 8;
|
tableLayoutNums.TabIndex = 8;
|
||||||
//
|
//
|
||||||
// dgvProductNums
|
|
||||||
//
|
|
||||||
dgvProductNums.AllowUserToAddRows = false;
|
|
||||||
dgvProductNums.AllowUserToDeleteRows = false;
|
|
||||||
dgvProductNums.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
|
|
||||||
dgvProductNums.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells;
|
|
||||||
dgvProductNums.BackgroundColor = SystemColors.Control;
|
|
||||||
dgvProductNums.BorderStyle = BorderStyle.None;
|
|
||||||
dgvProductNums.CellBorderStyle = DataGridViewCellBorderStyle.SunkenHorizontal;
|
|
||||||
dgvProductNums.ColumnHeadersBorderStyle = DataGridViewHeaderBorderStyle.None;
|
|
||||||
dgvProductNums.ColumnHeadersHeight = 4;
|
|
||||||
dgvProductNums.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
|
|
||||||
dgvProductNums.ColumnHeadersVisible = false;
|
|
||||||
dgvProductNums.Dock = DockStyle.Fill;
|
|
||||||
dgvProductNums.Location = new Point(3, 10);
|
|
||||||
dgvProductNums.Margin = new Padding(3, 10, 3, 0);
|
|
||||||
dgvProductNums.MultiSelect = false;
|
|
||||||
dgvProductNums.Name = "dgvProductNums";
|
|
||||||
dgvProductNums.ReadOnly = true;
|
|
||||||
dgvProductNums.RowHeadersBorderStyle = DataGridViewHeaderBorderStyle.None;
|
|
||||||
dgvProductNums.RowHeadersVisible = false;
|
|
||||||
dgvProductNums.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
|
|
||||||
dgvProductNums.Size = new Size(332, 40);
|
|
||||||
dgvProductNums.TabIndex = 10;
|
|
||||||
//
|
|
||||||
// tableLayoutPanel3
|
// tableLayoutPanel3
|
||||||
//
|
//
|
||||||
tableLayoutPanel3.AutoSizeMode = AutoSizeMode.GrowAndShrink;
|
tableLayoutPanel3.AutoSizeMode = AutoSizeMode.GrowAndShrink;
|
||||||
@ -447,6 +421,16 @@
|
|||||||
label7.Text = "总计数";
|
label7.Text = "总计数";
|
||||||
label7.TextAlign = ContentAlignment.MiddleCenter;
|
label7.TextAlign = ContentAlignment.MiddleCenter;
|
||||||
//
|
//
|
||||||
|
// tagMachineStatus
|
||||||
|
//
|
||||||
|
tagMachineStatus.Font = new Font("Microsoft YaHei UI", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134);
|
||||||
|
tagMachineStatus.Location = new Point(3, 3);
|
||||||
|
tagMachineStatus.Name = "tagMachineStatus";
|
||||||
|
tagMachineStatus.Size = new Size(141, 44);
|
||||||
|
tagMachineStatus.TabIndex = 12;
|
||||||
|
tagMachineStatus.Text = "待机中";
|
||||||
|
tagMachineStatus.Type = AntdUI.TTypeMini.Primary;
|
||||||
|
//
|
||||||
// panel2
|
// panel2
|
||||||
//
|
//
|
||||||
panel2.Location = new Point(511, 86);
|
panel2.Location = new Point(511, 86);
|
||||||
@ -530,7 +514,7 @@
|
|||||||
btnCreateBatchNO.Name = "btnCreateBatchNO";
|
btnCreateBatchNO.Name = "btnCreateBatchNO";
|
||||||
btnCreateBatchNO.Size = new Size(72, 35);
|
btnCreateBatchNO.Size = new Size(72, 35);
|
||||||
btnCreateBatchNO.TabIndex = 21;
|
btnCreateBatchNO.TabIndex = 21;
|
||||||
btnCreateBatchNO.Tag = "sys-load";
|
btnCreateBatchNO.Tag = "";
|
||||||
btnCreateBatchNO.Text = "生成批次";
|
btnCreateBatchNO.Text = "生成批次";
|
||||||
btnCreateBatchNO.Click += btnCreateBatchNO_Click;
|
btnCreateBatchNO.Click += btnCreateBatchNO_Click;
|
||||||
//
|
//
|
||||||
@ -719,7 +703,6 @@
|
|||||||
((System.ComponentModel.ISupportInitialize)dgvCamreaNums).EndInit();
|
((System.ComponentModel.ISupportInitialize)dgvCamreaNums).EndInit();
|
||||||
panelNums.ResumeLayout(false);
|
panelNums.ResumeLayout(false);
|
||||||
tableLayoutNums.ResumeLayout(false);
|
tableLayoutNums.ResumeLayout(false);
|
||||||
((System.ComponentModel.ISupportInitialize)dgvProductNums).EndInit();
|
|
||||||
tableLayoutPanel3.ResumeLayout(false);
|
tableLayoutPanel3.ResumeLayout(false);
|
||||||
tableLayoutPanel3.PerformLayout();
|
tableLayoutPanel3.PerformLayout();
|
||||||
panel1.ResumeLayout(false);
|
panel1.ResumeLayout(false);
|
||||||
@ -778,10 +761,10 @@
|
|||||||
// private Label label7;
|
// private Label label7;
|
||||||
// private AntdUI.Panel pnlLog;
|
// private AntdUI.Panel pnlLog;
|
||||||
private AntdUI.Label lbInBackend;
|
private AntdUI.Label lbInBackend;
|
||||||
private DataGridView dgvProductNums;
|
|
||||||
private TableLayoutPanel tableLayoutPanel3;
|
private TableLayoutPanel tableLayoutPanel3;
|
||||||
private AntdUI.Button btnCreateBatchNO;
|
private AntdUI.Button btnCreateBatchNO;
|
||||||
private AntdUI.Input textBoxBatchNO;
|
private AntdUI.Input textBoxBatchNO;
|
||||||
private AntdUI.Segmented segmented2;
|
private AntdUI.Segmented segmented2;
|
||||||
|
public AntdUI.Tag tagMachineStatus;
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -57,132 +57,9 @@ namespace DHSoftware
|
|||||||
public event Action<DateTime, object, string> OnUpdateResult;
|
public event Action<DateTime, object, string> OnUpdateResult;
|
||||||
public event Action<DateTime, object, string> OnUpdateCamResult;
|
public event Action<DateTime, object, string> OnUpdateCamResult;
|
||||||
|
|
||||||
private string _loginName;
|
|
||||||
|
|
||||||
public string LoginName
|
|
||||||
{
|
|
||||||
get { return _loginName; }
|
|
||||||
set
|
|
||||||
{
|
|
||||||
_loginName = value;
|
|
||||||
UpdateLabel();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private bool _ShowConfig;
|
|
||||||
|
|
||||||
public bool ShowConfig
|
|
||||||
{
|
|
||||||
get { return _ShowConfig; }
|
|
||||||
set
|
|
||||||
{
|
|
||||||
_ShowConfig = value;
|
|
||||||
UpdateConfig();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private bool _addscheme;
|
|
||||||
|
|
||||||
public bool Addscheme
|
|
||||||
{
|
|
||||||
get { return _addscheme; }
|
|
||||||
set
|
|
||||||
{
|
|
||||||
_addscheme = value;
|
|
||||||
UpdateScheme();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private bool _deletescheme;
|
|
||||||
|
|
||||||
public bool Deleteschememe
|
|
||||||
{
|
|
||||||
get { return _deletescheme; }
|
|
||||||
set
|
|
||||||
{
|
|
||||||
_deletescheme = value;
|
|
||||||
UpdateScheme();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private bool _loadscheme;
|
|
||||||
|
|
||||||
public bool Loadscheme
|
|
||||||
{
|
|
||||||
get { return _loadscheme; }
|
|
||||||
set
|
|
||||||
{
|
|
||||||
_loadscheme = value;
|
|
||||||
UpdateScheme();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void UpdateScheme()
|
|
||||||
{
|
|
||||||
if (this.InvokeRequired)
|
|
||||||
{
|
|
||||||
this.Invoke(new Action(UpdateScheme));
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (Loadscheme)
|
|
||||||
{
|
|
||||||
btnDeleteProject.Visible = true;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
btnDeleteProject.Visible = false;
|
|
||||||
}
|
|
||||||
if (Addscheme)
|
|
||||||
{
|
|
||||||
btnAddProject.Visible = true;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
btnAddProject.Visible = false;
|
|
||||||
}
|
|
||||||
if (Deleteschememe)
|
|
||||||
{
|
|
||||||
btnLoadProject.Visible = true;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
btnLoadProject.Visible = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void UpdateLabel()
|
|
||||||
{
|
|
||||||
if (lbName.InvokeRequired)
|
|
||||||
{
|
|
||||||
lbName.Invoke(new Action(UpdateLabel));
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
lbName.Text = _loginName;
|
|
||||||
}
|
|
||||||
|
|
||||||
private void UpdateConfig()
|
|
||||||
{
|
|
||||||
if (ShowConfig)
|
|
||||||
{
|
|
||||||
if (segmented1.InvokeRequired)
|
|
||||||
{
|
|
||||||
segmented1.Invoke(new Action(UpdateConfig));
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// 恢复显示时
|
|
||||||
segmented1.Items.Insert(4, itemToHide);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if (segmented1.InvokeRequired)
|
|
||||||
{
|
|
||||||
segmented1.Invoke(new Action(UpdateConfig));
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
segmented1.Items.Remove(itemToHide);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
public List<SysPermission> ButtonPermissionList
|
public List<SysPermission> ButtonPermissionList
|
||||||
{
|
{
|
||||||
set
|
set
|
||||||
@ -546,67 +423,62 @@ namespace DHSoftware
|
|||||||
#region CameraSum
|
#region CameraSum
|
||||||
private void InitialCameraSumsView()
|
private void InitialCameraSumsView()
|
||||||
{
|
{
|
||||||
dgvProductNums.AutoGenerateColumns = false;
|
|
||||||
|
|
||||||
dgvProductNums.DefaultCellStyle.Font = new Font("Tahoma", 12, FontStyle.Regular, GraphicsUnit.World);
|
this.BeginInvoke(new MethodInvoker(delegate ()
|
||||||
|
|
||||||
dgvProductNums.DataSource = null;
|
|
||||||
dgvProductNums.DataSource = ProductSummaries;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
dgvCamreaNums.Columns.Clear();
|
|
||||||
|
|
||||||
// 添加 CCD 列
|
|
||||||
dgvCamreaNums.Columns.Add(new DataGridViewTextBoxColumn
|
|
||||||
{
|
{
|
||||||
HeaderText = "CCD",
|
|
||||||
DataPropertyName = "CameraName"
|
|
||||||
});
|
|
||||||
// 添加 触发数 列
|
|
||||||
var TiggerCountColumn = new DataGridViewTextBoxColumn
|
|
||||||
{
|
|
||||||
HeaderText = "触发数",
|
|
||||||
DataPropertyName = "TiggerCount"
|
|
||||||
};
|
|
||||||
|
|
||||||
dgvCamreaNums.Columns.Add(TiggerCountColumn);
|
dgvCamreaNums.Columns.Clear();
|
||||||
|
|
||||||
// 添加 合格 列
|
// 添加 CCD 列
|
||||||
var okColumn = new DataGridViewTextBoxColumn
|
dgvCamreaNums.Columns.Add(new DataGridViewTextBoxColumn
|
||||||
{
|
{
|
||||||
HeaderText = "合格",
|
HeaderText = "CCD",
|
||||||
DataPropertyName = "OKCount"
|
DataPropertyName = "CameraName"
|
||||||
};
|
});
|
||||||
okColumn.DefaultCellStyle.ForeColor = Color.Green; // 设置背景为绿色
|
// 添加 触发数 列
|
||||||
dgvCamreaNums.Columns.Add(okColumn);
|
var TiggerCountColumn = new DataGridViewTextBoxColumn
|
||||||
|
{
|
||||||
|
HeaderText = "触发数",
|
||||||
|
DataPropertyName = "TiggerCount"
|
||||||
|
};
|
||||||
|
|
||||||
// 添加 不合格 列
|
dgvCamreaNums.Columns.Add(TiggerCountColumn);
|
||||||
var ngColumn = new DataGridViewTextBoxColumn
|
|
||||||
{
|
|
||||||
HeaderText = "不合格",
|
|
||||||
DataPropertyName = "NGCount"
|
|
||||||
};
|
|
||||||
ngColumn.DefaultCellStyle.ForeColor = Color.LightCoral; // 设置背景为红色
|
|
||||||
dgvCamreaNums.Columns.Add(ngColumn);
|
|
||||||
|
|
||||||
// 添加 总数 列
|
// 添加 合格 列
|
||||||
dgvCamreaNums.Columns.Add(new DataGridViewTextBoxColumn
|
var okColumn = new DataGridViewTextBoxColumn
|
||||||
{
|
{
|
||||||
HeaderText = "总数",
|
HeaderText = "合格",
|
||||||
DataPropertyName = "TotalCount"
|
DataPropertyName = "OKCount"
|
||||||
|
};
|
||||||
|
okColumn.DefaultCellStyle.ForeColor = Color.Green; // 设置背景为绿色
|
||||||
|
dgvCamreaNums.Columns.Add(okColumn);
|
||||||
|
|
||||||
});
|
// 添加 不合格 列
|
||||||
|
var ngColumn = new DataGridViewTextBoxColumn
|
||||||
|
{
|
||||||
|
HeaderText = "不合格",
|
||||||
|
DataPropertyName = "NGCount"
|
||||||
|
};
|
||||||
|
ngColumn.DefaultCellStyle.ForeColor = Color.LightCoral; // 设置背景为红色
|
||||||
|
dgvCamreaNums.Columns.Add(ngColumn);
|
||||||
|
|
||||||
// 添加 良率 列
|
// 添加 总数 列
|
||||||
dgvCamreaNums.Columns.Add(new DataGridViewTextBoxColumn
|
dgvCamreaNums.Columns.Add(new DataGridViewTextBoxColumn
|
||||||
{
|
{
|
||||||
HeaderText = "良率",
|
HeaderText = "总数",
|
||||||
DataPropertyName = "YieldStr"
|
DataPropertyName = "TotalCount"
|
||||||
});
|
|
||||||
dgvCamreaNums.AutoGenerateColumns = false;
|
});
|
||||||
dgvCamreaNums.DataSource = new BindingList<CameraSummary>(CameraSummaries);
|
|
||||||
}
|
// 添加 良率 列
|
||||||
|
dgvCamreaNums.Columns.Add(new DataGridViewTextBoxColumn
|
||||||
|
{
|
||||||
|
HeaderText = "良率",
|
||||||
|
DataPropertyName = "YieldStr"
|
||||||
|
});
|
||||||
|
dgvCamreaNums.AutoGenerateColumns = false;
|
||||||
|
dgvCamreaNums.DataSource = new BindingList<CameraSummary>(CameraSummaries);
|
||||||
|
})); }
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@ -653,14 +525,16 @@ namespace DHSoftware
|
|||||||
cam.CameraIP = cameraBase.CameraIP;
|
cam.CameraIP = cameraBase.CameraIP;
|
||||||
cam.IsEnabled = cameraBase.IsEnabled;
|
cam.IsEnabled = cameraBase.IsEnabled;
|
||||||
cam.IsZoomCamera = cameraBase.IsZoomCamera;
|
cam.IsZoomCamera = cameraBase.IsZoomCamera;
|
||||||
|
cam.DvpImageFormat = cameraBase.DvpImageFormat;
|
||||||
cam.Exposure = cameraBase.Exposure;
|
cam.Exposure = cameraBase.Exposure;
|
||||||
cam.Gain = cameraBase.Gain;
|
cam.Gain = cameraBase.Gain;
|
||||||
cam.RotateImage = cameraBase.RotateImage;
|
cam.RotateImage = cameraBase.RotateImage;
|
||||||
|
cam.IsAllPicEnabled=cameraBase.IsAllPicEnabled;
|
||||||
cam.ROIX= cameraBase.ROIX;
|
cam.ROIX= cameraBase.ROIX;
|
||||||
cam.ROIH= cameraBase.ROIH;
|
cam.ROIH= cameraBase.ROIH;
|
||||||
cam.ROIW= cameraBase.ROIW;
|
cam.ROIW= cameraBase.ROIW;
|
||||||
cam.ROIY=cameraBase.ROIY;
|
cam.ROIY=cameraBase.ROIY;
|
||||||
cam.ImageSaveDirectory = Path.Combine("D://Projects", cameraBase.CameraName);
|
cam.ImageSaveDirectory = Path.Combine("D://Projects//Images", cameraBase.CameraName);
|
||||||
Cameras.Add(cam);
|
Cameras.Add(cam);
|
||||||
if (cameraBase.IsEnabled)
|
if (cameraBase.IsEnabled)
|
||||||
{
|
{
|
||||||
@ -706,113 +580,128 @@ namespace DHSoftware
|
|||||||
|
|
||||||
public void ConnectPLC()
|
public void ConnectPLC()
|
||||||
{
|
{
|
||||||
if (ConfigModel.PLCBaseList.Count > 0)
|
try
|
||||||
{
|
{
|
||||||
for (int i = 0; i < ConfigModel.PLCBaseList.Count; i++)
|
if (ConfigModel.PLCBaseList.Count > 0)
|
||||||
{
|
{
|
||||||
var plcBase = ConfigModel.PLCBaseList[i];
|
for (int i = 0; i < ConfigModel.PLCBaseList.Count; i++)
|
||||||
if (plcBase.PLCType == EnumPLCType.信捷XC网口 || plcBase.PLCType == EnumPLCType.信捷XD网口)
|
|
||||||
{
|
{
|
||||||
PLC.IP = plcBase.IP;
|
var plcBase = ConfigModel.PLCBaseList[i];
|
||||||
PLC.PLCType = plcBase.PLCType;
|
if (plcBase.PLCType == EnumPLCType.信捷XC网口 || plcBase.PLCType == EnumPLCType.信捷XD网口)
|
||||||
PLC.Enable = plcBase.Enable;
|
|
||||||
PLC.PLCName = plcBase.PLCName;
|
|
||||||
PLC.PLCItemList = plcBase.PLCItemList;
|
|
||||||
PLC.Port = plcBase.Port;
|
|
||||||
PLC.OnLog -= _visionEngine_OnLog;
|
|
||||||
PLC.OnLog += _visionEngine_OnLog;
|
|
||||||
if(PLC.Enable)
|
|
||||||
{
|
{
|
||||||
PLC.PLCConnect();
|
PLC.IP = plcBase.IP;
|
||||||
Button CamLabel = new Button();
|
PLC.PLCType = plcBase.PLCType;
|
||||||
CamLabel.Name = PLC.PLCName;
|
PLC.Enable = plcBase.Enable;
|
||||||
CamLabel.Text = PLC.PLCName; // 关键1:必须有文本
|
PLC.PLCName = plcBase.PLCName;
|
||||||
CamLabel.AutoSize = true;
|
PLC.PLCItemList = plcBase.PLCItemList;
|
||||||
CamLabel.Size = new System.Drawing.Size(20, 20); // 关键2:自动调整大小
|
PLC.Port = plcBase.Port;
|
||||||
CamLabel.Location = new Point(20 + 50 * (i + ConfigModel.CameraBaseList.Count), 12); // 关键3:明确位置
|
PLC.OnLog -= _visionEngine_OnLog;
|
||||||
if (PLC.Connected)
|
PLC.OnLog += _visionEngine_OnLog;
|
||||||
CamLabel.BackColor = Color.Green; // 关键4:避免透明
|
if (PLC.Enable)
|
||||||
else
|
|
||||||
CamLabel.BackColor = Color.Yellow; // 关键4:避免透明
|
|
||||||
CamLabel.ForeColor = Color.Black; // 关键4:避免透明
|
|
||||||
//CamLabel.ForeColor = Color.Green; // 关键4:避免透明
|
|
||||||
CamLabel.Font = new Font("Microsoft YaHei", 9); // 可选:字体
|
|
||||||
|
|
||||||
// 关键5:确保添加到父控件
|
|
||||||
if (pageHeader1 != null && !pageHeader1.Controls.Contains(CamLabel))
|
|
||||||
{
|
{
|
||||||
pageHeader1.Controls.Add(CamLabel);
|
PLC.PLCConnect();
|
||||||
|
Button CamLabel = new Button();
|
||||||
|
CamLabel.Name = PLC.PLCName;
|
||||||
|
CamLabel.Text = PLC.PLCName; // 关键1:必须有文本
|
||||||
|
CamLabel.AutoSize = true;
|
||||||
|
CamLabel.Size = new System.Drawing.Size(20, 20); // 关键2:自动调整大小
|
||||||
|
CamLabel.Location = new Point(20 + 50 * (i + ConfigModel.CameraBaseList.Count), 12); // 关键3:明确位置
|
||||||
|
if (PLC.Connected)
|
||||||
|
CamLabel.BackColor = Color.Green; // 关键4:避免透明
|
||||||
|
else
|
||||||
|
CamLabel.BackColor = Color.Yellow; // 关键4:避免透明
|
||||||
|
CamLabel.ForeColor = Color.Black; // 关键4:避免透明
|
||||||
|
//CamLabel.ForeColor = Color.Green; // 关键4:避免透明
|
||||||
|
CamLabel.Font = new Font("Microsoft YaHei", 9); // 可选:字体
|
||||||
|
|
||||||
|
// 关键5:确保添加到父控件
|
||||||
|
if (pageHeader1 != null && !pageHeader1.Controls.Contains(CamLabel))
|
||||||
|
{
|
||||||
|
pageHeader1.Controls.Add(CamLabel);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
FrmLog frmLog;
|
FrmLog frmLog;
|
||||||
public void InitModel()
|
public void InitModel()
|
||||||
{
|
{
|
||||||
Dectection.Clear();
|
try
|
||||||
_cameraRelatedDetectionDict = new();
|
|
||||||
|
|
||||||
if (ConfigModel.DetectionList.Count > 0)
|
|
||||||
{
|
{
|
||||||
for (int i = 0; i < ConfigModel.DetectionList.Count; i++)
|
Dectection.Clear();
|
||||||
{
|
_cameraRelatedDetectionDict = new();
|
||||||
DetectionConfig detectionConfig = ConfigModel.DetectionList[i];
|
|
||||||
var detection = ConfigModel.DetectionList[i];
|
|
||||||
detectionConfig.CameraCollects = detection.CameraCollects;
|
|
||||||
detectionConfig.ModelconfThreshold = detection.ModelconfThreshold;
|
|
||||||
detectionConfig.ModelWidth = detection.ModelWidth;
|
|
||||||
detectionConfig.ModelHeight = detection.ModelHeight;
|
|
||||||
detectionConfig.In_lable_path = detection.In_lable_path;
|
|
||||||
detectionConfig.IsEnabled = detection.IsEnabled;
|
|
||||||
detectionConfig.ImageSaveDirectory = "D://Projects//Images";
|
|
||||||
|
|
||||||
detectionConfig.ShowLocation.X = (i + 1) % 5 + (i + 1) / 5;
|
if (ConfigModel.DetectionList.Count > 0)
|
||||||
// detectionConfig.ShowLocation.X = detection.ShowLocation.X;
|
{
|
||||||
detectionConfig.ShowLocation.Y = (i + 1) / 5 + 1;
|
for (int i = 0; i < ConfigModel.DetectionList.Count; i++)
|
||||||
// detectionConfig.ShowLocation.Y = detection.ShowLocation.Y;
|
{
|
||||||
DetectionConfigs.Add(detectionConfig);
|
DetectionConfig detectionConfig = ConfigModel.DetectionList[i];
|
||||||
|
var detection = ConfigModel.DetectionList[i];
|
||||||
|
detectionConfig.CameraCollects = detection.CameraCollects;
|
||||||
|
detectionConfig.ModelconfThreshold = detection.ModelconfThreshold;
|
||||||
|
detectionConfig.ModelWidth = detection.ModelWidth;
|
||||||
|
detectionConfig.ModelHeight = detection.ModelHeight;
|
||||||
|
detectionConfig.In_lable_path = detection.In_lable_path;
|
||||||
|
detectionConfig.IsEnabled = detection.IsEnabled;
|
||||||
|
detectionConfig.ImageSaveDirectory = "D://Projects//Images";
|
||||||
|
|
||||||
|
// 优化后代码
|
||||||
|
detectionConfig.ShowLocation.X = (i % 5) + 1; // X坐标从1开始,每行1-5
|
||||||
|
detectionConfig.ShowLocation.Y = (i / 5) + 1; // Y坐标从1开始,每5个换行
|
||||||
|
// detectionConfig.ShowLocation.Y = detection.ShowLocation.Y;
|
||||||
|
DetectionConfigs.Add(detectionConfig);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
DetectionConfigs.ForEach(detection =>
|
||||||
DetectionConfigs.ForEach(detection =>
|
|
||||||
{
|
|
||||||
detection.CameraCollects.ForEach(cam =>
|
|
||||||
{
|
{
|
||||||
List<string> Dets = new List<string>
|
detection.CameraCollects.ForEach(cam =>
|
||||||
|
{
|
||||||
|
List<string> Dets = new List<string>
|
||||||
{
|
{
|
||||||
detection.Id
|
detection.Id
|
||||||
};
|
};
|
||||||
if (!_cameraRelatedDetectionDict.ContainsKey(cam.CameraSourceId))
|
if (!_cameraRelatedDetectionDict.ContainsKey(cam.CameraSourceId))
|
||||||
{
|
{
|
||||||
_cameraRelatedDetectionDict.Add(cam.CameraSourceId, Dets);
|
_cameraRelatedDetectionDict.Add(cam.CameraSourceId, Dets);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_cameraRelatedDetectionDict[cam.CameraSourceId].Add(detection.Id);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
);
|
||||||
{
|
});
|
||||||
_cameraRelatedDetectionDict[cam.CameraSourceId].Add(detection.Id);
|
string inferenceDevice = "CPU";
|
||||||
}
|
|
||||||
}
|
|
||||||
);
|
|
||||||
});
|
|
||||||
string inferenceDevice = "CPU";
|
|
||||||
|
|
||||||
frmLog = new FrmLog();
|
frmLog = new FrmLog();
|
||||||
frmLog.Dock = DockStyle.Fill;
|
frmLog.Dock = DockStyle.Fill;
|
||||||
pnlLog.Controls.Add(frmLog);
|
pnlLog.Controls.Add(frmLog);
|
||||||
//
|
//
|
||||||
_visionEngine = new SimboVisionDriver();
|
_visionEngine = new SimboVisionDriver();
|
||||||
_visionEngine.DetectionConfigs = DetectionConfigs;
|
_visionEngine.DetectionConfigs = DetectionConfigs;
|
||||||
_visionEngine.LoggerHelper.LogPath = "D://PROJECTS//Logs//";
|
_visionEngine.LoggerHelper.LogPath = "D://PROJECTS//Logs//";
|
||||||
_visionEngine.LoggerHelper.LogPrefix = "Vision";
|
_visionEngine.LoggerHelper.LogPrefix = "Vision";
|
||||||
_visionEngine.OnLog += _visionEngine_OnLog;
|
_visionEngine.OnLog += _visionEngine_OnLog;
|
||||||
//初始化模型 加载模型
|
//初始化模型 加载模型
|
||||||
_visionEngine.Init();
|
_visionEngine.Init();
|
||||||
|
|
||||||
CtrlVisionRunBase ctrlVisionRun = new CtrlVisionRunBase(_visionEngine);
|
CtrlVisionRunBase ctrlVisionRun = new CtrlVisionRunBase(_visionEngine);
|
||||||
ctrlVisionRun.Dock = DockStyle.Fill;
|
ctrlVisionRun.Dock = DockStyle.Fill;
|
||||||
tabImgDisplay.Controls.Add(ctrlVisionRun);
|
tabImgDisplay.Controls.Add(ctrlVisionRun);
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
throw new Exception(ex.Message);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -916,7 +805,7 @@ namespace DHSoftware
|
|||||||
this.Invoke(new Action(() =>
|
this.Invoke(new Action(() =>
|
||||||
{
|
{
|
||||||
|
|
||||||
dgvProductNums.DataSource = new BindingList<ProductSummary>(ProductSummaries);
|
|
||||||
|
|
||||||
//if (dgvProductNums.Rows.Count > 0)
|
//if (dgvProductNums.Rows.Count > 0)
|
||||||
//{
|
//{
|
||||||
@ -1072,6 +961,7 @@ namespace DHSoftware
|
|||||||
private Thread _monitorThread;
|
private Thread _monitorThread;
|
||||||
private void MainWindow_Load(object sender, EventArgs e)
|
private void MainWindow_Load(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
|
|
||||||
//开启按钮监听
|
//开启按钮监听
|
||||||
// 启动所有监控线程
|
// 启动所有监控线程
|
||||||
StartAllMonitors();
|
StartAllMonitors();
|
||||||
@ -1083,6 +973,8 @@ namespace DHSoftware
|
|||||||
{
|
{
|
||||||
if (_monitorThread == null || !_monitorThread.IsAlive)
|
if (_monitorThread == null || !_monitorThread.IsAlive)
|
||||||
{
|
{
|
||||||
|
//关闭按钮自身功能(比如按按钮转盘自己启动等)
|
||||||
|
PLC.WriteBool("M40", true);
|
||||||
_isRunning = true;
|
_isRunning = true;
|
||||||
_monitorThread = new Thread(MonitorPlcButtons);
|
_monitorThread = new Thread(MonitorPlcButtons);
|
||||||
_monitorThread.IsBackground = true; // 后台线程
|
_monitorThread.IsBackground = true; // 后台线程
|
||||||
@ -1107,8 +999,7 @@ namespace DHSoftware
|
|||||||
// 处理按钮状态变化
|
// 处理按钮状态变化
|
||||||
if (startPressed)
|
if (startPressed)
|
||||||
{
|
{
|
||||||
PLC.TurnSpeed(0);
|
|
||||||
PLC.TurnStart(false);
|
|
||||||
HandleStartButton();
|
HandleStartButton();
|
||||||
}
|
}
|
||||||
if (resetPressed)
|
if (resetPressed)
|
||||||
@ -1124,7 +1015,7 @@ namespace DHSoftware
|
|||||||
//EmergencyStop(null, null, null);
|
//EmergencyStop(null, null, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
Thread.Sleep(50); // 降低 CPU 占用,根据实际调整轮询间隔
|
Thread.Sleep(150);
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
@ -1144,6 +1035,7 @@ namespace DHSoftware
|
|||||||
{
|
{
|
||||||
_monitorThread.Join(1000); // 等待线程退出
|
_monitorThread.Join(1000); // 等待线程退出
|
||||||
}
|
}
|
||||||
|
PLC.WriteBool("M40", false);
|
||||||
}
|
}
|
||||||
private bool _isClosing = false; // 状态标志
|
private bool _isClosing = false; // 状态标志
|
||||||
|
|
||||||
@ -1171,11 +1063,13 @@ namespace DHSoftware
|
|||||||
{
|
{
|
||||||
camera.CameraDisConnect();
|
camera.CameraDisConnect();
|
||||||
}
|
}
|
||||||
|
StopMonitoring();
|
||||||
if (PLC != null)
|
if (PLC != null)
|
||||||
{
|
{
|
||||||
PLC.CloseProcess();
|
PLC.CloseProcess();
|
||||||
|
|
||||||
}
|
}
|
||||||
StopMonitoring();
|
|
||||||
_visionEngine.Stop();//释放模型
|
_visionEngine.Stop();//释放模型
|
||||||
CloseWindow.Instance.Close();// 关闭提示窗口
|
CloseWindow.Instance.Close();// 关闭提示窗口
|
||||||
//Application.Exit();
|
//Application.Exit();
|
||||||
@ -1265,12 +1159,58 @@ namespace DHSoftware
|
|||||||
|
|
||||||
private void HandleStartButton()
|
private void HandleStartButton()
|
||||||
{
|
{
|
||||||
InitialCameraSumsView();
|
lock (_stopLock)
|
||||||
LogAsync(DateTime.Now, LogLevel.Information, "流程启动中,请稍候...");
|
{
|
||||||
ResetAllCameraCounts();
|
if (_isStopProcessing) return;
|
||||||
//开始流程
|
_isStopProcessing = true;
|
||||||
StartProcess();
|
}
|
||||||
LogAsync(DateTime.Now, LogLevel.Action, "流程启动完成!");
|
try
|
||||||
|
{
|
||||||
|
if (SystemModel.CurrentStatus == EnumStatus.待机中)
|
||||||
|
{
|
||||||
|
InitialCameraSumsView();
|
||||||
|
LogAsync(DateTime.Now, LogLevel.Information, "流程启动中,请稍候...");
|
||||||
|
ResetAllCameraCounts();
|
||||||
|
//开始流程
|
||||||
|
|
||||||
|
StartProcess();
|
||||||
|
SystemModel.CurrentStatus = EnumStatus.运行中;
|
||||||
|
this.BeginInvoke(new MethodInvoker(delegate ()
|
||||||
|
{
|
||||||
|
tagMachineStatus.Type = TTypeMini.Success;
|
||||||
|
tagMachineStatus.Text = "运行中";
|
||||||
|
}));
|
||||||
|
LogAsync(DateTime.Now, LogLevel.Action, "流程启动完成!");
|
||||||
|
|
||||||
|
}
|
||||||
|
else if (SystemModel.CurrentStatus == EnumStatus.运行中)
|
||||||
|
{
|
||||||
|
LogAsync(DateTime.Now, LogLevel.Warning, "设备正在运行,无需启动!");
|
||||||
|
}
|
||||||
|
else if (SystemModel.CurrentStatus == EnumStatus.清料中)
|
||||||
|
{
|
||||||
|
LogAsync(DateTime.Now, LogLevel.Warning, "设备正在清料,请稍候!");
|
||||||
|
}
|
||||||
|
else if (SystemModel.CurrentStatus == EnumStatus.警告)
|
||||||
|
{
|
||||||
|
LogAsync(DateTime.Now, LogLevel.Warning, "设备报警,请复位后重试!");
|
||||||
|
}
|
||||||
|
else if (SystemModel.CurrentStatus == EnumStatus.异常)
|
||||||
|
{
|
||||||
|
LogAsync(DateTime.Now, LogLevel.Warning, "设备异常,请检查!");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
lock (_stopLock)
|
||||||
|
{
|
||||||
|
_isStopProcessing = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -1279,10 +1219,7 @@ namespace DHSoftware
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
if (CurrentMachine)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
BatchNO = textBoxBatchNO.Text;
|
BatchNO = textBoxBatchNO.Text;
|
||||||
textBoxBatchNO.ReadOnly = true;
|
textBoxBatchNO.ReadOnly = true;
|
||||||
@ -1371,9 +1308,8 @@ namespace DHSoftware
|
|||||||
//mOfflineImageTimer.Start();
|
//mOfflineImageTimer.Start();
|
||||||
|
|
||||||
#endregion 虚拟相机
|
#endregion 虚拟相机
|
||||||
//流程执行时PLC
|
|
||||||
PLC.StartProcess();
|
|
||||||
LogAsync(DateTime.Now, LogLevel.Action, "流程启动11111111111完成!");
|
|
||||||
///这里会执行完成后,会造成后台线程断断续续,会造成界面UI卡顿
|
///这里会执行完成后,会造成后台线程断断续续,会造成界面UI卡顿
|
||||||
//var settings = ConfigModel.DetectionList.Where(u => u.IsEnabled && u.IsAddStation).ToList();
|
//var settings = ConfigModel.DetectionList.Where(u => u.IsEnabled && u.IsAddStation).ToList();
|
||||||
//if (settings != null)
|
//if (settings != null)
|
||||||
@ -1417,7 +1353,8 @@ namespace DHSoftware
|
|||||||
|
|
||||||
|
|
||||||
InitialOEEStatistic();
|
InitialOEEStatistic();
|
||||||
|
//流程执行时PLC
|
||||||
|
PLC.StartProcess();
|
||||||
CurrentMachine = true;
|
CurrentMachine = true;
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
@ -1457,15 +1394,15 @@ namespace DHSoftware
|
|||||||
//转盘2 的物料是不是重新覆盖之前的pDta
|
//转盘2 的物料是不是重新覆盖之前的pDta
|
||||||
if (axisIndex == 1)
|
if (axisIndex == 1)
|
||||||
{
|
{
|
||||||
ProductData pData = new ProductData("", pieceNumber, ProductBaseCount);
|
ProductData pData = new ProductData(BatchNO, pieceNumber, ProductBaseCount);
|
||||||
_productLists[index][pieceNumber] = pData;
|
_productLists[index][pieceNumber] = pData;
|
||||||
LogAsync(DateTime.Now, LogLevel.Action, $">> 轴{axisIndex}新产品{pieceNumber}加入队列{index}----板卡计数{PieceCount}");
|
LogAsync(DateTime.Now, LogLevel.Action, $">> 转盘{axisIndex}新产品{pieceNumber}加入队列{index}----计数{PieceCount}");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
DateTime dtNow = DateTime.Now;
|
//DateTime dtNow = DateTime.Now;
|
||||||
UpdateCT(null, (float)(dtNow - _ctTime).TotalSeconds);
|
//UpdateCT(null, (float)(dtNow - _ctTime).TotalSeconds);
|
||||||
_ctTime = dtNow;
|
// _ctTime = dtNow;
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task UpdateCT(object objData, float ctTime)
|
public async Task UpdateCT(object objData, float ctTime)
|
||||||
@ -1848,25 +1785,89 @@ namespace DHSoftware
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void HandleStopButton()
|
private readonly object _stopLock = new object(); // 锁对象
|
||||||
|
private bool _isStopProcessing = false; // 状态标志
|
||||||
|
private async void HandleStopButton()
|
||||||
{
|
{
|
||||||
if (!CurrentMachine)
|
// 通过锁和状态标志实现双重检查
|
||||||
|
lock (_stopLock)
|
||||||
{
|
{
|
||||||
return;
|
if (_isStopProcessing) return;
|
||||||
|
_isStopProcessing = true;
|
||||||
|
}
|
||||||
|
try
|
||||||
|
{
|
||||||
|
if (SystemModel.CurrentStatus == EnumStatus.待机中)
|
||||||
|
{
|
||||||
|
LogAsync(DateTime.Now, LogLevel.Warning, "设备待机中,无需停止!");
|
||||||
|
}
|
||||||
|
else if (SystemModel.CurrentStatus == EnumStatus.运行中)
|
||||||
|
{
|
||||||
|
textBoxBatchNO.ReadOnly = false;
|
||||||
|
btnCreateBatchNO.Enabled = true;
|
||||||
|
|
||||||
|
// Cameras.Clear();
|
||||||
|
// Dectection.Clear();
|
||||||
|
// Add the code for the "停止" button click here
|
||||||
|
PLC.StopProcess();
|
||||||
|
SystemModel.CurrentStatus = EnumStatus.待机中;
|
||||||
|
this.BeginInvoke(new MethodInvoker(delegate ()
|
||||||
|
{
|
||||||
|
tagMachineStatus.Type = TTypeMini.Primary;
|
||||||
|
tagMachineStatus.Text = "待机中";
|
||||||
|
}));
|
||||||
|
LogAsync(DateTime.Now, LogLevel.Action, $"流程停止!");
|
||||||
|
await Task.Run(async () =>
|
||||||
|
{
|
||||||
|
|
||||||
|
await ExecuteClearDelayAsync();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
else if (SystemModel.CurrentStatus == EnumStatus.清料中)
|
||||||
|
{
|
||||||
|
LogAsync(DateTime.Now, LogLevel.Warning, "设备正在清料,请稍候!");
|
||||||
|
}
|
||||||
|
else if (SystemModel.CurrentStatus == EnumStatus.警告)
|
||||||
|
{
|
||||||
|
LogAsync(DateTime.Now, LogLevel.Warning, "设备报警,请复位后重试!");
|
||||||
|
}
|
||||||
|
else if (SystemModel.CurrentStatus == EnumStatus.异常)
|
||||||
|
{
|
||||||
|
LogAsync(DateTime.Now, LogLevel.Warning, "设备异常,请检查!");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
lock (_stopLock)
|
||||||
|
{
|
||||||
|
_isStopProcessing = false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
textBoxBatchNO.ReadOnly = false;
|
|
||||||
btnCreateBatchNO.Enabled = true;
|
|
||||||
|
|
||||||
// Cameras.Clear();
|
|
||||||
// Dectection.Clear();
|
|
||||||
// Add the code for the "停止" button click here
|
|
||||||
PLC.StopProcess();
|
|
||||||
CurrentMachine = false;
|
|
||||||
//sLDMotion.Stop();
|
//sLDMotion.Stop();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private async Task ExecuteClearDelayAsync()
|
||||||
|
{
|
||||||
|
LogAsync(DateTime.Now, LogLevel.Action, $"转盘清料开始");
|
||||||
|
SystemModel.CurrentStatus = EnumStatus.清料中;
|
||||||
|
this.BeginInvoke(new MethodInvoker(delegate ()
|
||||||
|
{
|
||||||
|
tagMachineStatus.Type = TTypeMini.Warn;
|
||||||
|
tagMachineStatus.Text = "清料中";
|
||||||
|
}));
|
||||||
|
await PLC.ExecuteClearDelayAsync();
|
||||||
|
LogAsync(DateTime.Now, LogLevel.Action, $"转盘清料完成");
|
||||||
|
|
||||||
|
SystemModel.CurrentStatus = EnumStatus.待机中;
|
||||||
|
this.BeginInvoke(new MethodInvoker(delegate ()
|
||||||
|
{
|
||||||
|
tagMachineStatus.Type = TTypeMini.Primary;
|
||||||
|
tagMachineStatus.Text = "待机中";
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
|
||||||
public void CalculateOEE()
|
public void CalculateOEE()
|
||||||
{
|
{
|
||||||
|
@ -156,254 +156,7 @@
|
|||||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
<value>
|
<value>
|
||||||
AAABAAMAEBAAAAEAIABoBAAANgAAACAgAAABACAAKBEAAJ4EAAAwMAAAAQAgAGgmAADGFQAAKAAAABAA
|
AAABAAEAMDAAAAEAIACoJQAAFgAAACgAAAAwAAAAYAAAAAEAIAAAAAAAACQAAAAAAAAAAAAAAAAAAAAA
|
||||||
AAAgAAAAAQAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALynH/a8px/xvKcf3b2oH7W9qB97v6gdLAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8W7mUDDu/C8px//vKcf+LynH/q8px//vKcf/7yn
|
|
||||||
H/+8px/FvKUeRAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/Du50/xLv1vKcf/7unH6a/vwAEu6ocLbym
|
|
||||||
H3O3qCTbvKcf/7ynH/+7px+dv58gCAAAAAAAAAAAAAAAAAAAAAA/w7udP8S79bynH/+7px+mAAAAAAAA
|
|
||||||
AAAAAAAAQMW7e2q6hf+4pyTxvKcf/7ymH722tiQHAAAAAAAAAAAAAAAAP8O7nT/Eu/W8px//u6cfpgAA
|
|
||||||
AAAAAAAAAAAAAD7Fu3tAxLv/h7dlNb2nHtu8px//u6cfkwAAAAAAAAAAAAAAAD/Du50/xLv1vKcf/7un
|
|
||||||
H6YAAAAAAAAAAAAAAAA+xbt7QMS7/0PIvBe+ph4rvKcf+bynH/y8qCImAAAAAAAAAAA/w7udP8S79byn
|
|
||||||
H/+7px+mAAAAAAAAAAAAAAAAPsW7e0DEu/9DyLwXAAAAALynH6O8px//u6UegAAAAAAAAAAAP8O7nT/E
|
|
||||||
u/W8px//u6cfpgAAAAAAAAAAAAAAAD7Fu3tAxLv/P8W79UDEu/RyuHz5vKcf/5WwT/tAxLv0QMS79EDE
|
|
||||||
u/s/xLv1vKcf/7unH6YAAAAAAAAAAAAAAAA+xbt7QMS7/z/FupE/xLqGg7VmubynH/+krDzVP8S6hj/E
|
|
||||||
uoY/w7vRP8S79bynH/+7px+mAAAAAAAAAAAAAAAAPsW7e0DEu/9DyLwXAAAAALymHqG8px//vKYegQAA
|
|
||||||
AAAAAAAAP8O7nT/Eu/W8px//u6cfpgAAAAAAAAAAAAAAAD7Fu3tAxLv/Q8i8F7+sICi8qB/4u6Yf/b+m
|
|
||||||
ICgAAAAAAAAAAD/Du50/xLv1vKcf/7unH6YAAAAAAAAAAAAAAAA+xbt7QMS7/4W4azK9qB/YvKcf/7un
|
|
||||||
HpcAAAAAAAAAAAAAAAA/w7udP8S79bynH/+7px+mAAAAAAAAAAAAAAAAQMW7e2e6if+4qCTvvKcf/72n
|
|
||||||
H8CqqhwJAAAAAAAAAAAAAAAAP8O7nT/Eu/W8px//u6cfpoCAAAK5piAovKcebraoJti8px//vKcf/72n
|
|
||||||
H6KzmRoKAAAAAAAAAAAAAAAAAAAAAD/Du50/xLv1vKcf/7ynH/a8ph/3vKcf/7ynH/+8px//u6cey72k
|
|
||||||
H0kAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/w7udP8S79bunHvy9px/2vKce4rymHru8ph6BvagfMgAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8O7nT/Eu/UAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAACAAAABAAAAAAQAgAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAALunH+q8px/wvKcf6LynH9+8px7LvKgfrL2oH4S8px5UvaocGwAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAA/wLc5QMS780DEu/M/xLvhvKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7yn
|
|
||||||
H/+8px/+vKYf1bynHoa5qB0sAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAD3CujtAxLv/QMS7/0DEu+y8px//vKcf/7ynH/+8px//vKcf/7yn
|
|
||||||
H/+8px//vKcf/7ynH/+8px//vKcf/7ynH/68px/Fu6YfU4CAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPcK6O0DEu/9AxLv/QMS77LynH/+8px//vKcf/7yn
|
|
||||||
HuK8px/tvKcf/rynH/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcfzrqmHD8AAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9wro7QMS7/0DEu/9AxLvsvKcf/7yn
|
|
||||||
H/+8px//uqcdTgAAAAC/ryAQvakdPr2nHne8ph++vKcf+rynH/+8px//vKcf/7ynH/+8px//vKcf/ryo
|
|
||||||
Hpi5ohcLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD3CujtAxLv/QMS7/0DE
|
|
||||||
u+y8px//vKcf/7ynH/+6px1OAAAAAAAAAAAAAAAAAAAAAAAAAAC5ohcWvKgfcqyqM/y8px//vKcf/7yn
|
|
||||||
H/+8px//vKcf/7umHtK5oh8hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPcK6O0DE
|
|
||||||
u/9AxLv/QMS77LynH/+8px//vKcf/7qnHU4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//8BQcS59nC4
|
|
||||||
fv+wqS3/vKcf/7ynH/+8px//vKcf/7umH+a8pB4qAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAA9wro7QMS7/0DEu/9AxLvsvKcf/7ynH/+8px//uqcdTgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/
|
|
||||||
/wE/xLv2QMS7/0jCsP+pqzbGvKcf/7ynH/+8px//vKcf/7yoH+S7oRoeAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAD3CujtAxLv/QMS7/0DEu+y8px//vKcf/7ynH/+6px1OAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAP//AT/Eu/ZAxLv/QMS7/0DFujC9px53vKcf/rynH/+8px//vKcf/7yoHsqqqioGAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAPcK6O0DEu/9AxLv/QMS77LynH/+8px//vKcf/7qnHU4AAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAA//8BP8S79kDEu/9AxLv/QcO+LwAAAAC8ph1yvKcf/7ynH/+8px//vKcf/7yn
|
|
||||||
H30AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9wro7QMS7/0DEu/9AxLvsvKcf/7ynH/+8px//uqcdTgAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//wE/xLv2QMS7/0DEu/9Bw74vAAAAAAAAAAC8px6fvKcf/7yn
|
|
||||||
H/+8px//u6cf9b+qIBgAAAAAAAAAAAAAAAAAAAAAAAAAAD3CujtAxLv/QMS7/0DEu+y8px//vKcf/7yn
|
|
||||||
H/+6px1OAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//AT/Eu/ZAxLv/QMS7/0HDvi8AAAAAAAAAALuq
|
|
||||||
Ig+8px/ovKcf/7ynH/+8px//vKcfggAAAAAAAAAAAAAAAAAAAAAAAAAAPcK6O0DEu/9AxLv/QMS77Lyn
|
|
||||||
H/+8px//vKcf/7qnHU4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//8BP8S79kDEu/9AxLv/QcO+LwAA
|
|
||||||
AAAAAAAAAAAAALymHna8px//vKcf/7ynH/+8px/dAAAAAAAAAAAAAAAAAAAAAAAAAAA9wro7QMS7/0DE
|
|
||||||
u/9AxLvsvKcf/7ynH/+8px//uqcdTgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//wE/xLv2QMS7/0DE
|
|
||||||
u/9Bw74vAAAAAAAAAAAAAAAAuqcdGrunH/28px//vKcf/7ynH/+8pR4iAAAAAAAAAAAAAAAAAAAAAD3C
|
|
||||||
ujtAxLv/QMS7/0DEu+y8px//vKcf/7ynH/+6px1OAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//AT/E
|
|
||||||
u/ZAxLv/QMS7/z/Euu4/xLrqP8S66j/Euuo/xLrqqqs1/rynH/+8px//vKcf/2m7ie8/xLrqP8S66j/E
|
|
||||||
uuo/xLrqQMS770DEu/9AxLv/QMS77LynH/+8px//vKcf/7qnHU4AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAA//8BP8S79kDEu/9AxLv/QMS7/0DEu/9AxLv/QMS7/0DEu/+br0j/vKcf/7ynH/+8px//crh8/0DE
|
|
||||||
u/9AxLv/QMS7/0DEu/9AxLv/QMS7/0DEu/9AxLvsvKcf/7ynH/+8px//uqcdTgAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAD//wE/xLv2QMS7/0DEu/9AxLv/P8S7/j/Eu/4/xLv+P8S7/pqvSf+8px//vKcf/7yn
|
|
||||||
H/9xuHz/P8S7/j/Eu/4/xLv+P8S7/kDEu/9AxLv/QMS7/0DEu+y8px//vKcf/7ynH/+6px1OAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAP//AT/Eu/ZAxLv/QMS7/0HCujs3yLYON8i2DjfItg43yLYOuqgh27yn
|
|
||||||
H/+8px//vKcf/6+pLlk3yLYON8i2DjfItg43yLYOPsW6RkDEu/9AxLv/QMS77LynH/+8px//vKcf/7qn
|
|
||||||
HU4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//8BP8S79kDEu/9AxLv/QcO+LwAAAAAAAAAAAAAAALym
|
|
||||||
Fhe8px/8vKcf/7ynH/+8px//uqUcJQAAAAAAAAAAAAAAAAAAAAA9wro7QMS7/0DEu/9AxLvsvKcf/7yn
|
|
||||||
H/+8px//uqcdTgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//wE/xLv2QMS7/0DEu/9Bw74vAAAAAAAA
|
|
||||||
AAAAAAAAvKYfcrynH/+8px//vKcf/7ymH+AAAAABAAAAAAAAAAAAAAAAAAAAAD3CujtAxLv/QMS7/0DE
|
|
||||||
u+y8px//vKcf/7ynH/+6px1OAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//AT/Eu/ZAxLv/QMS7/0HD
|
|
||||||
vi8AAAAAAAAAAL+qFQy8px7lvKcf/7ynH/+8px//u6YehwAAAAAAAAAAAAAAAAAAAAAAAAAAPcK6O0DE
|
|
||||||
u/9AxLv/QMS77LynH/+8px//vKcf/7qnHU4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//8BP8S79kDE
|
|
||||||
u/9AxLv/QcO+LwAAAAAAAAAAvagflrynH/+8px//vKcf/7ymH/e9qhwbAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAA9wro7QMS7/0DEu/9AxLvsvKcf/7ynH/+8px//uqcdTgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/
|
|
||||||
/wE/xLv2QMS7/0DEu/9Bw74vAAAAAL2nHWi9qB/+vKcf/7ynH/+8px//vagfhAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAD3CujtAxLv/QMS7/0DEu+y8px//vKcf/7ynH/+6px1OAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAP//AT/Eu/ZAxLv/QMS7/0HDvi+9qB9su6Yf/bynH/+8px//vKcf/72nH9C/nyAIAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAPcK6O0DEu/9AxLv/QMS77LynH/+8px//vKcf/7qnHU4AAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAA//8BP8S79kDEu/9GwrP/pqw4vrynH/+8px//vKcf/7ynH/+8px/ptqgdIwAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9wro7QMS7/0DEu/9AxLvsvKcf/7ynH/+8px//uqcdTgAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//wFAxLr2a7mE/62qMf+8px//vKcf/7ynH/+8px//vacf6r+q
|
|
||||||
IDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD3CujtAxLv/QMS7/0DEu+y8px//vKcf/7yn
|
|
||||||
H/+6px1OAAAAAAAAAAAAAAAAAAAAAAAAAAC7qiIPvKYgZ6irOPy8px//vKcf/7ynH/+8px//vKcf/7yn
|
|
||||||
H9m+oxonAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPcK6O0DEu/9AxLv/QMS77Lyn
|
|
||||||
H/+8px//vKcf/7qnHU4AAAAAqqocCbmlHjO9qB9svKcfs7ynH/a8px//vKcf/7ynH/+8px//vKcf/72o
|
|
||||||
H/68ph+ju6oiDwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9wro7QMS7/0DE
|
|
||||||
u/9AxLvsvKcf/7ynH/+8px//u6ge27ynHuK8px77vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7yn
|
|
||||||
H/+8px/WvagfSQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD3C
|
|
||||||
ujtAxLv/QMS7/0DEu+y8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7yn
|
|
||||||
H/+8qB/Pu6UeXr+AAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAPcK6O0DEu/9AxLv/QMS77LynH/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7yn
|
|
||||||
H9+8px6RuaccNwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAA9wro7QMS7/0DEu/9AxLvsvKgf9bunHvy8px7zvKcf6byoH9W8px+3u6gej7ym
|
|
||||||
Hl+6pRwlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAD3CujtAxLv/QMS7/0DEu+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAADAA
|
|
||||||
AABgAAAAAQAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALynHtq8px/ku6Yf5rynH9y8piDSvKcfxryn
|
|
||||||
HrC8px6RvKcfa7ypH0G+oxonwq0fGbGdFA3/gAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAEfGuBI/xLutQMS77EDEu+xAxLvsP8S7zrynH/+8px//vKcf/7yn
|
|
||||||
H/+8px//vKcf/7ynH/+8px//vKcf/7ynH/28ph/su6cfy7unH6W8ph55uqUfSrymFhcAAAABAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEC/vxQ/w7u7QMS7/0DEu/9AxLv/QMS837yn
|
|
||||||
H/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px77vKcf7bym
|
|
||||||
H9i7px+WuqogMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEC/vxQ/w7u7QMS7/0DE
|
|
||||||
u/9AxLv/QMS837ynH/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7yn
|
|
||||||
H/+8px//vKcf/7ynH/+8px//vKcf/rumH766px1OuaIjFv//AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEC/
|
|
||||||
vxQ/w7u7QMS7/0DEu/9AxLv/QMS837ynH/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7yn
|
|
||||||
H/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+9px/2vacfvbymIGe1nyAYAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAEC/vxQ/w7u7QMS7/0DEu/9AxLv/QMS837ynH/+8px//vKcf/7ynH/+8px/wvKcexbyn
|
|
||||||
Htq7px71vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7yn
|
|
||||||
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
|
|
||||||
HkW8px/3vKcf/7ynH/+8px//vKcf/7yoH++6px9RAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEC/
|
|
||||||
vxQ/w7u7QMS7/0DEu/9AxLv/QMS837ynH/+8px//vKcf/7ynH/+8px/NuqcdGgAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE+w7t4QMS7/EDEu/9AxLv/QMS7/0HFu08AAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAALymIRe7px/DvKcf/7ynH/+8px//vKcf/7ynH/y7pR+Dv4AABAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAEC/vxQ/w7u7QMS7/0DEu/9AxLv/QMS837ynH/+8px//vKcf/7ynH/+8px/NuqcdGgAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE+w7t4QMS7/EDEu/9AxLv/QMS7/0HF
|
|
||||||
u08AAAAAAAAAAAAAAAAAAAAAAAAAAMyZMwW7px+LvKcf/rynH/+8px//vKcf/7ynH/+8px6ru6oiDwAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAEC/vxQ/w7u7QMS7/0DEu/9AxLv/QMS837ynH/+8px//vKcf/7yn
|
|
||||||
H/+8px/NuqcdGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE+w7t4QMS7/EDE
|
|
||||||
u/9AxLv/QMS7/0DEvOdAxLvcQMS73EDEu9xAxLvcQMS73EDEu9x0uHrruKkk/rynH/+8px//vKcf/7yn
|
|
||||||
H/+lrTz2TcGp30DEu9xAxLvcQMS73EDEu9xAxLvcQMS73EDEut9AxLv2QMS7/0DEu/9AxLv/QMS837yn
|
|
||||||
H/+8px//vKcf/7ynH/+8px/NuqcdGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAE+w7t4QMS7/EDEu/9AxLv/QMS7/0DEu/9AxLv/QMS7/0DEu/9AxLv/QMS7/0DEu/9ivI//s6kr/7yn
|
|
||||||
H/+8px//vKcf/7ynH/+rqzT/T8Co/0DEu/9AxLv/QMS7/0DEu/9AxLv/QMS7/0DEu/9AxLv/QMS7/0DE
|
|
||||||
u/9AxLv/QMS837ynH/+8px//vKcf/7ynH/+8px/NuqcdGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAE+w7t4QMS7/EDEu/9AxLv/QMS7/0DEu/9AxLv/QMS7/0DEu/9AxLv/QMS7/0DE
|
|
||||||
u/9cvZj/sKot/7ynH/+8px//vKcf/7ynH/+xqi7/UcCm/0DEu/9AxLv/QMS7/0DEu/9AxLv/QMS7/0DE
|
|
||||||
u/9AxLv/QMS7/0DEu/9AxLv/QMS837ynH/+8px//vKcf/7ynH/+8px/NuqcdGgAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE+w7t4QMS7/EDEu/9AxLv/QMS7/0DEu/9AxLv/QMS7/0DE
|
|
||||||
u/9AxLv/QMS7/0DEu/9bvZj/sKou/7ynH/+8px//vKcf/7ynH/+xqi3/UcCl/0DEu/9AxLv/QMS7/0DE
|
|
||||||
u/9AxLv/QMS7/0DEu/9AxLv/QMS7/0DEu/9AxLv/QMS837ynH/+8px//vKcf/7ynH/+8px/NuqcdGgAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE+w7t4QMS7/EDEu/9AxLv/QMS7/z/E
|
|
||||||
u7E/w7qNP8O6jT/Duo0/w7qNP8O6jT/Duo1wuH2wtqgm+LynH/+8px//vKcf/7ynH/+0qSntWb6cmj/D
|
|
||||||
uo0/w7qNP8O6jT/Duo0/w7qNP8O6jT/Eu5Y/xLvhQMS7/0DEu/9AxLv/QMS837ynH/+8px//vKcf/7yn
|
|
||||||
H/+8px/NuqcdGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE+w7t4QMS7/EDE
|
|
||||||
u/9AxLv/QMS7/0HEvlIzzMwFM8zMBTPMzAUzzMwFM8zMBTPMzAW4qCRku6cf9bynH/+8px//vKcf/7yn
|
|
||||||
H/+8pyDKp6c1HTPMzAUzzMwFM8zMBTPMzAUzzMwFM8zMBUDKvxhAxbu8QMS7/0DEu/9AxLv/QMS837yn
|
|
||||||
H/+8px//vKcf/7ynH/+8px/NuqcdGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
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
|
|
||||||
H/+8px//vKcf/7ynH/y9px/EvKYgSAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAEC/vxQ/w7u7QMS7/0DEu/9AxLv/QMS837ynH/+8px//vKcf/7yn
|
|
||||||
H/+8px/NuqcdGgAAAAD/gAACwqoYFbqoHUa9pR+DvaYewbyoH+G9qB/yvKcf/rynH/+8px//vKcf/7yn
|
|
||||||
H/+8px//vKcf/7ynH/+8px//vKcf/rumH5q7qiIegIAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEC/vxQ/w7u7QMS7/0DEu/9AxLv/QMS837yn
|
|
||||||
H/+8px//vKcf/7ynH/+7px/tu6gftbunH8i9px/nu6cf/bynH/+8px//vKcf/7ynH/+8px//vKcf/7yn
|
|
||||||
H/+8px//vKcf/7ynH/+8px//vKcf/7yoH/i8px/OvqcdTgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEC/vxQ/w7u7QMS7/0DE
|
|
||||||
u/9AxLv/QMS837ynH/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7yn
|
|
||||||
H/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px/6vKgfx7ymH3K7qhoeAAAAAQAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEC/
|
|
||||||
vxQ/w7u7QMS7/0DEu/9AxLv/QMS837ynH/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7yn
|
|
||||||
H/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKgf/ryoH828pR9buqcdGv+AAAIAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAEC/vxQ/w7u7QMS7/0DEu/9AxLv/QMS837ynH/+8px//vKcf/7ynH/+8px//vKcf/7yn
|
|
||||||
H/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px/8vKgf8LynH927px+muaYfQv//AAEAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAEC/vxQ/w7u7QMS7/0DEu/9AxLv/QMS837ynH/+8px//vKcf/7yn
|
|
||||||
H/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px70u6cf1rymH6+9px+DvKceVL+nICD/gAACAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEC/vxQ/w7u7QMS7/0DEu/9AxLv/QMS837yn
|
|
||||||
H+y8px/3u6Yf+bymH++8px7kvacf172nH8C8px6jvqcffb2qH1G3piEuuacaHb+fIBC/vwAEAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEC/vxQ/w7u7QMS7/0DE
|
|
||||||
u/9AxLv/QMS83wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
@ -412,7 +165,159 @@
|
|||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA6JAAAIBYAAHdlBQBcTAMAeGYGAIVzBwB6aQUA//0XAFlK
|
||||||
|
AQBRPwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAADAAAARRYDADkRBAA1DQAAURoIAP+rVQAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADEkAABjUgMAGw8AAKOODAD//xMANy0NBVtP
|
||||||
|
Dgb//wAA1L8VAJyKIQCqlx8A794+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAA8DAQA/7uNALhNOQDLUDoAqkMzAI89KwAAAAAAZScTAEweEgAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGRSBABBMwMA//8bAJJ/
|
||||||
|
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
|
||||||
|
AAAAAAAAAAAAAAAAAABfTgAANCQAAAAAAABNPw4AYlMmAFA/GwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJCACABvYgUAzbgSAAAANQGbiRgNnZAYD1ZP
|
||||||
|
GwTs2SQArZwpALyqKgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpLAAA8KwAAuqYXAIx5
|
||||||
|
DAClkRAApZUSAJKFDQAAAAAAbVgHAEw4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///////8AAP///////wAA/////AD/
|
||||||
|
AAD8B//4AH8AAPwB//gAPwAA/AB/8AA/AAD8AH/wAD8AAPwAP/AAPwAA/AAf8AA/AAD8AB/wAD8AAPwA
|
||||||
|
D/AAPwAA/AAP8AA/AAD8AA/wAD8AAPwAD/AAPwAA/AAP8AA/AAD8AAAAAD8AAPwAAAAAPwAA/AAAAAA/
|
||||||
|
AAD8AAAAAD8AAPwAAAAAPwAA/AAAAAA/AAD8AAAAAD8AAPwAAAAAPwAA/AAAAAA/AAD8AAAAAD8AAPwA
|
||||||
|
AAAAPwAA/AAAAAA/AAD8AAAAAD8AAPwAAAAAPwAA/AAD+AA/AAD8AAf4AD8AAPwAB/gAPwAA/AAP+AA/
|
||||||
|
AAD8AA/4AD8AAPwAD/gAPwAA/AAP+AA/AAD8AA/8AD8AAPwAD/4APwAA/AAP/4A/AAD+AA//8D8AAP4A
|
||||||
|
H////wAA/wA/////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////
|
||||||
|
AAA=
|
||||||
</value>
|
</value>
|
||||||
</data>
|
</data>
|
||||||
</root>
|
</root>
|
@ -67,6 +67,8 @@ namespace DHSoftware
|
|||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
SystemModel.CurrentStatus = EnumStatus.异常;
|
SystemModel.CurrentStatus = EnumStatus.异常;
|
||||||
|
MainWindow.Instance.tagMachineStatus.Type = TTypeMini.Error;
|
||||||
|
MainWindow.Instance.tagMachineStatus.Text = "异常";
|
||||||
Modal.open(WelcomeWindow.Instance, "错误!", ex.ToString(), TType.Error);
|
Modal.open(WelcomeWindow.Instance, "错误!", ex.ToString(), TType.Error);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -99,6 +101,8 @@ namespace DHSoftware
|
|||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
SystemModel.CurrentStatus = EnumStatus.异常;
|
SystemModel.CurrentStatus = EnumStatus.异常;
|
||||||
|
MainWindow.Instance.tagMachineStatus.Type = TTypeMini.Error;
|
||||||
|
MainWindow.Instance.tagMachineStatus.Text = "异常";
|
||||||
Modal.open(WelcomeWindow.Instance, "错误!", ex.ToString(), TType.Error);
|
Modal.open(WelcomeWindow.Instance, "错误!", ex.ToString(), TType.Error);
|
||||||
}
|
}
|
||||||
UpdateStep(80, "正在加载算法模型", true);
|
UpdateStep(80, "正在加载算法模型", true);
|
||||||
@ -109,6 +113,8 @@ namespace DHSoftware
|
|||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
SystemModel.CurrentStatus = EnumStatus.异常;
|
SystemModel.CurrentStatus = EnumStatus.异常;
|
||||||
|
MainWindow.Instance.tagMachineStatus.Type = TTypeMini.Error;
|
||||||
|
MainWindow.Instance.tagMachineStatus.Text = "异常";
|
||||||
Modal.open(WelcomeWindow.Instance, "错误!", ex.ToString(), TType.Error);
|
Modal.open(WelcomeWindow.Instance, "错误!", ex.ToString(), TType.Error);
|
||||||
}
|
}
|
||||||
UpdateStep(100, "程序初始化完成", true);
|
UpdateStep(100, "程序初始化完成", true);
|
||||||
|
@ -13,6 +13,7 @@ namespace DHSoftware.Views
|
|||||||
|
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
lbTitleName.Text = TitleName;
|
lbTitleName.Text = TitleName;
|
||||||
|
|
||||||
// 绑定事件
|
// 绑定事件
|
||||||
BindEventHandler();
|
BindEventHandler();
|
||||||
}
|
}
|
||||||
@ -21,6 +22,12 @@ namespace DHSoftware.Views
|
|||||||
{
|
{
|
||||||
button_ok.Click += Button_ok_Click;
|
button_ok.Click += Button_ok_Click;
|
||||||
button_cancel.Click += Button_cancel_Click;
|
button_cancel.Click += Button_cancel_Click;
|
||||||
|
Load += AddCameraControl_Load;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void AddCameraControl_Load(object? sender, EventArgs e)
|
||||||
|
{
|
||||||
|
input_name.Text = CubicleName;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Button_cancel_Click(object sender, EventArgs e)
|
private void Button_cancel_Click(object sender, EventArgs e)
|
||||||
|
@ -28,6 +28,13 @@ namespace DHSoftware.Views
|
|||||||
{
|
{
|
||||||
button_ok.Click += Button_ok_Click;
|
button_ok.Click += Button_ok_Click;
|
||||||
button_cancel.Click += Button_cancel_Click;
|
button_cancel.Click += Button_cancel_Click;
|
||||||
|
Load += AddCubicleControl_Load;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void AddCubicleControl_Load(object? sender, EventArgs e)
|
||||||
|
{
|
||||||
|
input_name.Text = CubicleName;
|
||||||
|
sltdetectionType.SelectedIndex =(int)DetectionType;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Button_cancel_Click(object sender, EventArgs e)
|
private void Button_cancel_Click(object sender, EventArgs e)
|
||||||
|
216
DHSoftware/Views/CameraControl.Designer.cs
generated
216
DHSoftware/Views/CameraControl.Designer.cs
generated
@ -29,29 +29,30 @@
|
|||||||
private void InitializeComponent()
|
private void InitializeComponent()
|
||||||
{
|
{
|
||||||
panel3 = new AntdUI.Panel();
|
panel3 = new AntdUI.Panel();
|
||||||
btnSizeAdd = new AntdUI.Button();
|
|
||||||
button1 = new AntdUI.Button();
|
|
||||||
button2 = new AntdUI.Button();
|
|
||||||
button3 = new AntdUI.Button();
|
button3 = new AntdUI.Button();
|
||||||
|
button2 = new AntdUI.Button();
|
||||||
|
button1 = new AntdUI.Button();
|
||||||
|
btnSizeAdd = new AntdUI.Button();
|
||||||
panel4 = new AntdUI.Panel();
|
panel4 = new AntdUI.Panel();
|
||||||
|
pictureBox1 = new PictureBox();
|
||||||
panel2 = new AntdUI.Panel();
|
panel2 = new AntdUI.Panel();
|
||||||
label18 = new AntdUI.Label();
|
label18 = new AntdUI.Label();
|
||||||
swhEnable = new AntdUI.Switch();
|
swhEnable = new AntdUI.Switch();
|
||||||
label1 = new AntdUI.Label();
|
label1 = new AntdUI.Label();
|
||||||
label2 = new AntdUI.Label();
|
label2 = new AntdUI.Label();
|
||||||
label3 = new AntdUI.Label();
|
label3 = new AntdUI.Label();
|
||||||
iptExposure = new AntdUI.InputNumber();
|
iptExposure = new AntdUI.Input();
|
||||||
iptGain = new AntdUI.InputNumber();
|
iptGain = new AntdUI.Input();
|
||||||
iptRevolve = new AntdUI.Select();
|
iptRevolve = new AntdUI.Select();
|
||||||
label4 = new AntdUI.Label();
|
label4 = new AntdUI.Label();
|
||||||
sltAcquisitionMode = new AntdUI.Select();
|
sltAcquisitionMode = new AntdUI.Select();
|
||||||
label5 = new AntdUI.Label();
|
label5 = new AntdUI.Label();
|
||||||
sltTriggerMode = new AntdUI.Select();
|
sltTriggerMode = new AntdUI.Select();
|
||||||
label7 = new AntdUI.Label();
|
label7 = new AntdUI.Label();
|
||||||
iptROIX = new AntdUI.InputNumber();
|
iptROIX = new AntdUI.Input();
|
||||||
iptROIY = new AntdUI.InputNumber();
|
iptROIY = new AntdUI.Input();
|
||||||
iptROIW = new AntdUI.InputNumber();
|
iptROIW = new AntdUI.Input();
|
||||||
iptROIH = new AntdUI.InputNumber();
|
iptROIH = new AntdUI.Input();
|
||||||
label6 = new AntdUI.Label();
|
label6 = new AntdUI.Label();
|
||||||
sthPic = new AntdUI.Switch();
|
sthPic = new AntdUI.Switch();
|
||||||
label8 = new AntdUI.Label();
|
label8 = new AntdUI.Label();
|
||||||
@ -65,12 +66,13 @@
|
|||||||
label14 = new AntdUI.Label();
|
label14 = new AntdUI.Label();
|
||||||
switch1 = new AntdUI.Switch();
|
switch1 = new AntdUI.Switch();
|
||||||
panel1 = new AntdUI.Panel();
|
panel1 = new AntdUI.Panel();
|
||||||
pictureBox1 = new PictureBox();
|
sltPicType = new AntdUI.Select();
|
||||||
|
label15 = new AntdUI.Label();
|
||||||
panel3.SuspendLayout();
|
panel3.SuspendLayout();
|
||||||
panel4.SuspendLayout();
|
panel4.SuspendLayout();
|
||||||
|
((System.ComponentModel.ISupportInitialize)pictureBox1).BeginInit();
|
||||||
panel2.SuspendLayout();
|
panel2.SuspendLayout();
|
||||||
panel1.SuspendLayout();
|
panel1.SuspendLayout();
|
||||||
((System.ComponentModel.ISupportInitialize)pictureBox1).BeginInit();
|
|
||||||
SuspendLayout();
|
SuspendLayout();
|
||||||
//
|
//
|
||||||
// panel3
|
// panel3
|
||||||
@ -80,51 +82,12 @@
|
|||||||
panel3.Controls.Add(button1);
|
panel3.Controls.Add(button1);
|
||||||
panel3.Controls.Add(btnSizeAdd);
|
panel3.Controls.Add(btnSizeAdd);
|
||||||
panel3.Dock = DockStyle.Bottom;
|
panel3.Dock = DockStyle.Bottom;
|
||||||
panel3.Location = new Point(0, 552);
|
panel3.Location = new Point(0, 585);
|
||||||
panel3.Name = "panel3";
|
panel3.Name = "panel3";
|
||||||
panel3.Size = new Size(691, 59);
|
panel3.Size = new Size(691, 59);
|
||||||
panel3.TabIndex = 39;
|
panel3.TabIndex = 39;
|
||||||
panel3.Text = "panel3";
|
panel3.Text = "panel3";
|
||||||
//
|
//
|
||||||
// btnSizeAdd
|
|
||||||
//
|
|
||||||
btnSizeAdd.BorderWidth = 2F;
|
|
||||||
btnSizeAdd.Font = new Font("Microsoft YaHei UI", 9F, FontStyle.Regular, GraphicsUnit.Point, 134);
|
|
||||||
btnSizeAdd.Ghost = true;
|
|
||||||
btnSizeAdd.IconRatio = 0F;
|
|
||||||
btnSizeAdd.IconSvg = "";
|
|
||||||
btnSizeAdd.Location = new Point(75, 13);
|
|
||||||
btnSizeAdd.Name = "btnSizeAdd";
|
|
||||||
btnSizeAdd.Size = new Size(80, 38);
|
|
||||||
btnSizeAdd.TabIndex = 43;
|
|
||||||
btnSizeAdd.Text = "连接相机";
|
|
||||||
//
|
|
||||||
// button1
|
|
||||||
//
|
|
||||||
button1.BorderWidth = 2F;
|
|
||||||
button1.Font = new Font("Microsoft YaHei UI", 9F, FontStyle.Regular, GraphicsUnit.Point, 134);
|
|
||||||
button1.Ghost = true;
|
|
||||||
button1.IconRatio = 0F;
|
|
||||||
button1.IconSvg = "";
|
|
||||||
button1.Location = new Point(233, 13);
|
|
||||||
button1.Name = "button1";
|
|
||||||
button1.Size = new Size(80, 38);
|
|
||||||
button1.TabIndex = 44;
|
|
||||||
button1.Text = "断开相机";
|
|
||||||
//
|
|
||||||
// button2
|
|
||||||
//
|
|
||||||
button2.BorderWidth = 2F;
|
|
||||||
button2.Font = new Font("Microsoft YaHei UI", 9F, FontStyle.Regular, GraphicsUnit.Point, 134);
|
|
||||||
button2.Ghost = true;
|
|
||||||
button2.IconRatio = 0F;
|
|
||||||
button2.IconSvg = "";
|
|
||||||
button2.Location = new Point(388, 13);
|
|
||||||
button2.Name = "button2";
|
|
||||||
button2.Size = new Size(80, 38);
|
|
||||||
button2.TabIndex = 45;
|
|
||||||
button2.Text = "单次触发";
|
|
||||||
//
|
|
||||||
// button3
|
// button3
|
||||||
//
|
//
|
||||||
button3.BorderWidth = 2F;
|
button3.BorderWidth = 2F;
|
||||||
@ -138,16 +101,65 @@
|
|||||||
button3.TabIndex = 46;
|
button3.TabIndex = 46;
|
||||||
button3.Text = "连续触发";
|
button3.Text = "连续触发";
|
||||||
//
|
//
|
||||||
|
// button2
|
||||||
|
//
|
||||||
|
button2.BorderWidth = 2F;
|
||||||
|
button2.Font = new Font("Microsoft YaHei UI", 9F, FontStyle.Regular, GraphicsUnit.Point, 134);
|
||||||
|
button2.Ghost = true;
|
||||||
|
button2.IconRatio = 0F;
|
||||||
|
button2.IconSvg = "";
|
||||||
|
button2.Location = new Point(388, 13);
|
||||||
|
button2.Name = "button2";
|
||||||
|
button2.Size = new Size(80, 38);
|
||||||
|
button2.TabIndex = 45;
|
||||||
|
button2.Text = "单次触发";
|
||||||
|
//
|
||||||
|
// button1
|
||||||
|
//
|
||||||
|
button1.BorderWidth = 2F;
|
||||||
|
button1.Font = new Font("Microsoft YaHei UI", 9F, FontStyle.Regular, GraphicsUnit.Point, 134);
|
||||||
|
button1.Ghost = true;
|
||||||
|
button1.IconRatio = 0F;
|
||||||
|
button1.IconSvg = "";
|
||||||
|
button1.Location = new Point(233, 13);
|
||||||
|
button1.Name = "button1";
|
||||||
|
button1.Size = new Size(80, 38);
|
||||||
|
button1.TabIndex = 44;
|
||||||
|
button1.Text = "断开相机";
|
||||||
|
//
|
||||||
|
// btnSizeAdd
|
||||||
|
//
|
||||||
|
btnSizeAdd.BorderWidth = 2F;
|
||||||
|
btnSizeAdd.Font = new Font("Microsoft YaHei UI", 9F, FontStyle.Regular, GraphicsUnit.Point, 134);
|
||||||
|
btnSizeAdd.Ghost = true;
|
||||||
|
btnSizeAdd.IconRatio = 0F;
|
||||||
|
btnSizeAdd.IconSvg = "";
|
||||||
|
btnSizeAdd.Location = new Point(75, 13);
|
||||||
|
btnSizeAdd.Name = "btnSizeAdd";
|
||||||
|
btnSizeAdd.Size = new Size(80, 38);
|
||||||
|
btnSizeAdd.TabIndex = 43;
|
||||||
|
btnSizeAdd.Text = "连接相机";
|
||||||
|
//
|
||||||
// panel4
|
// panel4
|
||||||
//
|
//
|
||||||
panel4.Controls.Add(pictureBox1);
|
panel4.Controls.Add(pictureBox1);
|
||||||
panel4.Dock = DockStyle.Fill;
|
panel4.Dock = DockStyle.Fill;
|
||||||
panel4.Location = new Point(0, 0);
|
panel4.Location = new Point(0, 0);
|
||||||
panel4.Name = "panel4";
|
panel4.Name = "panel4";
|
||||||
panel4.Size = new Size(691, 552);
|
panel4.Size = new Size(691, 585);
|
||||||
panel4.TabIndex = 40;
|
panel4.TabIndex = 40;
|
||||||
panel4.Text = "panel4";
|
panel4.Text = "panel4";
|
||||||
//
|
//
|
||||||
|
// pictureBox1
|
||||||
|
//
|
||||||
|
pictureBox1.BorderStyle = BorderStyle.FixedSingle;
|
||||||
|
pictureBox1.Dock = DockStyle.Fill;
|
||||||
|
pictureBox1.Location = new Point(0, 0);
|
||||||
|
pictureBox1.Name = "pictureBox1";
|
||||||
|
pictureBox1.Size = new Size(691, 585);
|
||||||
|
pictureBox1.TabIndex = 39;
|
||||||
|
pictureBox1.TabStop = false;
|
||||||
|
//
|
||||||
// panel2
|
// panel2
|
||||||
//
|
//
|
||||||
panel2.Controls.Add(panel4);
|
panel2.Controls.Add(panel4);
|
||||||
@ -155,7 +167,7 @@
|
|||||||
panel2.Dock = DockStyle.Fill;
|
panel2.Dock = DockStyle.Fill;
|
||||||
panel2.Location = new Point(218, 0);
|
panel2.Location = new Point(218, 0);
|
||||||
panel2.Name = "panel2";
|
panel2.Name = "panel2";
|
||||||
panel2.Size = new Size(691, 611);
|
panel2.Size = new Size(691, 644);
|
||||||
panel2.TabIndex = 49;
|
panel2.TabIndex = 49;
|
||||||
panel2.Text = "panel2";
|
panel2.Text = "panel2";
|
||||||
//
|
//
|
||||||
@ -172,7 +184,7 @@
|
|||||||
swhEnable.CheckedText = "启用";
|
swhEnable.CheckedText = "启用";
|
||||||
swhEnable.Location = new Point(86, 9);
|
swhEnable.Location = new Point(86, 9);
|
||||||
swhEnable.Name = "swhEnable";
|
swhEnable.Name = "swhEnable";
|
||||||
swhEnable.Size = new Size(94, 33);
|
swhEnable.Size = new Size(111, 33);
|
||||||
swhEnable.TabIndex = 49;
|
swhEnable.TabIndex = 49;
|
||||||
swhEnable.UnCheckedText = "关闭";
|
swhEnable.UnCheckedText = "关闭";
|
||||||
//
|
//
|
||||||
@ -204,7 +216,7 @@
|
|||||||
//
|
//
|
||||||
iptExposure.Location = new Point(86, 136);
|
iptExposure.Location = new Point(86, 136);
|
||||||
iptExposure.Name = "iptExposure";
|
iptExposure.Name = "iptExposure";
|
||||||
iptExposure.Size = new Size(94, 36);
|
iptExposure.Size = new Size(111, 36);
|
||||||
iptExposure.TabIndex = 53;
|
iptExposure.TabIndex = 53;
|
||||||
iptExposure.Tag = "";
|
iptExposure.Tag = "";
|
||||||
iptExposure.Text = "0";
|
iptExposure.Text = "0";
|
||||||
@ -213,7 +225,7 @@
|
|||||||
//
|
//
|
||||||
iptGain.Location = new Point(86, 179);
|
iptGain.Location = new Point(86, 179);
|
||||||
iptGain.Name = "iptGain";
|
iptGain.Name = "iptGain";
|
||||||
iptGain.Size = new Size(94, 36);
|
iptGain.Size = new Size(111, 36);
|
||||||
iptGain.TabIndex = 54;
|
iptGain.TabIndex = 54;
|
||||||
iptGain.Text = "0";
|
iptGain.Text = "0";
|
||||||
//
|
//
|
||||||
@ -223,7 +235,7 @@
|
|||||||
iptRevolve.List = true;
|
iptRevolve.List = true;
|
||||||
iptRevolve.Location = new Point(86, 222);
|
iptRevolve.Location = new Point(86, 222);
|
||||||
iptRevolve.Name = "iptRevolve";
|
iptRevolve.Name = "iptRevolve";
|
||||||
iptRevolve.Size = new Size(94, 36);
|
iptRevolve.Size = new Size(111, 36);
|
||||||
iptRevolve.TabIndex = 55;
|
iptRevolve.TabIndex = 55;
|
||||||
//
|
//
|
||||||
// label4
|
// label4
|
||||||
@ -239,7 +251,7 @@
|
|||||||
sltAcquisitionMode.List = true;
|
sltAcquisitionMode.List = true;
|
||||||
sltAcquisitionMode.Location = new Point(86, 265);
|
sltAcquisitionMode.Location = new Point(86, 265);
|
||||||
sltAcquisitionMode.Name = "sltAcquisitionMode";
|
sltAcquisitionMode.Name = "sltAcquisitionMode";
|
||||||
sltAcquisitionMode.Size = new Size(94, 36);
|
sltAcquisitionMode.Size = new Size(111, 36);
|
||||||
sltAcquisitionMode.TabIndex = 57;
|
sltAcquisitionMode.TabIndex = 57;
|
||||||
//
|
//
|
||||||
// label5
|
// label5
|
||||||
@ -255,12 +267,12 @@
|
|||||||
sltTriggerMode.List = true;
|
sltTriggerMode.List = true;
|
||||||
sltTriggerMode.Location = new Point(86, 310);
|
sltTriggerMode.Location = new Point(86, 310);
|
||||||
sltTriggerMode.Name = "sltTriggerMode";
|
sltTriggerMode.Name = "sltTriggerMode";
|
||||||
sltTriggerMode.Size = new Size(94, 36);
|
sltTriggerMode.Size = new Size(111, 36);
|
||||||
sltTriggerMode.TabIndex = 59;
|
sltTriggerMode.TabIndex = 59;
|
||||||
//
|
//
|
||||||
// label7
|
// label7
|
||||||
//
|
//
|
||||||
label7.Location = new Point(3, 498);
|
label7.Location = new Point(3, 538);
|
||||||
label7.Name = "label7";
|
label7.Name = "label7";
|
||||||
label7.Size = new Size(29, 23);
|
label7.Size = new Size(29, 23);
|
||||||
label7.TabIndex = 60;
|
label7.TabIndex = 60;
|
||||||
@ -268,34 +280,34 @@
|
|||||||
//
|
//
|
||||||
// iptROIX
|
// iptROIX
|
||||||
//
|
//
|
||||||
iptROIX.Location = new Point(86, 430);
|
iptROIX.Location = new Point(86, 470);
|
||||||
iptROIX.Name = "iptROIX";
|
iptROIX.Name = "iptROIX";
|
||||||
iptROIX.Size = new Size(94, 37);
|
iptROIX.Size = new Size(111, 37);
|
||||||
iptROIX.TabIndex = 61;
|
iptROIX.TabIndex = 61;
|
||||||
iptROIX.Tag = "";
|
iptROIX.Tag = "";
|
||||||
iptROIX.Text = "0";
|
iptROIX.Text = "0";
|
||||||
//
|
//
|
||||||
// iptROIY
|
// iptROIY
|
||||||
//
|
//
|
||||||
iptROIY.Location = new Point(86, 473);
|
iptROIY.Location = new Point(86, 513);
|
||||||
iptROIY.Name = "iptROIY";
|
iptROIY.Name = "iptROIY";
|
||||||
iptROIY.Size = new Size(94, 37);
|
iptROIY.Size = new Size(111, 37);
|
||||||
iptROIY.TabIndex = 62;
|
iptROIY.TabIndex = 62;
|
||||||
iptROIY.Text = "0";
|
iptROIY.Text = "0";
|
||||||
//
|
//
|
||||||
// iptROIW
|
// iptROIW
|
||||||
//
|
//
|
||||||
iptROIW.Location = new Point(86, 516);
|
iptROIW.Location = new Point(86, 556);
|
||||||
iptROIW.Name = "iptROIW";
|
iptROIW.Name = "iptROIW";
|
||||||
iptROIW.Size = new Size(94, 37);
|
iptROIW.Size = new Size(111, 37);
|
||||||
iptROIW.TabIndex = 63;
|
iptROIW.TabIndex = 63;
|
||||||
iptROIW.Text = "0";
|
iptROIW.Text = "0";
|
||||||
//
|
//
|
||||||
// iptROIH
|
// iptROIH
|
||||||
//
|
//
|
||||||
iptROIH.Location = new Point(86, 559);
|
iptROIH.Location = new Point(86, 599);
|
||||||
iptROIH.Name = "iptROIH";
|
iptROIH.Name = "iptROIH";
|
||||||
iptROIH.Size = new Size(94, 37);
|
iptROIH.Size = new Size(111, 37);
|
||||||
iptROIH.TabIndex = 64;
|
iptROIH.TabIndex = 64;
|
||||||
iptROIH.Text = "0";
|
iptROIH.Text = "0";
|
||||||
//
|
//
|
||||||
@ -312,13 +324,13 @@
|
|||||||
sthPic.CheckedText = "启用";
|
sthPic.CheckedText = "启用";
|
||||||
sthPic.Location = new Point(86, 56);
|
sthPic.Location = new Point(86, 56);
|
||||||
sthPic.Name = "sthPic";
|
sthPic.Name = "sthPic";
|
||||||
sthPic.Size = new Size(94, 33);
|
sthPic.Size = new Size(111, 33);
|
||||||
sthPic.TabIndex = 66;
|
sthPic.TabIndex = 66;
|
||||||
sthPic.UnCheckedText = "关闭";
|
sthPic.UnCheckedText = "关闭";
|
||||||
//
|
//
|
||||||
// label8
|
// label8
|
||||||
//
|
//
|
||||||
label8.Location = new Point(36, 430);
|
label8.Location = new Point(36, 470);
|
||||||
label8.Name = "label8";
|
label8.Name = "label8";
|
||||||
label8.Size = new Size(29, 37);
|
label8.Size = new Size(29, 37);
|
||||||
label8.TabIndex = 67;
|
label8.TabIndex = 67;
|
||||||
@ -326,7 +338,7 @@
|
|||||||
//
|
//
|
||||||
// label9
|
// label9
|
||||||
//
|
//
|
||||||
label9.Location = new Point(36, 473);
|
label9.Location = new Point(36, 513);
|
||||||
label9.Name = "label9";
|
label9.Name = "label9";
|
||||||
label9.Size = new Size(29, 37);
|
label9.Size = new Size(29, 37);
|
||||||
label9.TabIndex = 68;
|
label9.TabIndex = 68;
|
||||||
@ -334,7 +346,7 @@
|
|||||||
//
|
//
|
||||||
// label10
|
// label10
|
||||||
//
|
//
|
||||||
label10.Location = new Point(28, 516);
|
label10.Location = new Point(28, 556);
|
||||||
label10.Name = "label10";
|
label10.Name = "label10";
|
||||||
label10.Size = new Size(44, 37);
|
label10.Size = new Size(44, 37);
|
||||||
label10.TabIndex = 69;
|
label10.TabIndex = 69;
|
||||||
@ -342,7 +354,7 @@
|
|||||||
//
|
//
|
||||||
// label11
|
// label11
|
||||||
//
|
//
|
||||||
label11.Location = new Point(28, 560);
|
label11.Location = new Point(28, 600);
|
||||||
label11.Name = "label11";
|
label11.Name = "label11";
|
||||||
label11.Size = new Size(44, 36);
|
label11.Size = new Size(44, 36);
|
||||||
label11.TabIndex = 70;
|
label11.TabIndex = 70;
|
||||||
@ -350,7 +362,7 @@
|
|||||||
//
|
//
|
||||||
// label12
|
// label12
|
||||||
//
|
//
|
||||||
label12.Location = new Point(21, 362);
|
label12.Location = new Point(21, 402);
|
||||||
label12.Name = "label12";
|
label12.Name = "label12";
|
||||||
label12.Size = new Size(59, 23);
|
label12.Size = new Size(59, 23);
|
||||||
label12.TabIndex = 71;
|
label12.TabIndex = 71;
|
||||||
@ -359,9 +371,9 @@
|
|||||||
// sthAllPic
|
// sthAllPic
|
||||||
//
|
//
|
||||||
sthAllPic.CheckedText = "启用";
|
sthAllPic.CheckedText = "启用";
|
||||||
sthAllPic.Location = new Point(86, 352);
|
sthAllPic.Location = new Point(86, 392);
|
||||||
sthAllPic.Name = "sthAllPic";
|
sthAllPic.Name = "sthAllPic";
|
||||||
sthAllPic.Size = new Size(94, 33);
|
sthAllPic.Size = new Size(111, 33);
|
||||||
sthAllPic.TabIndex = 72;
|
sthAllPic.TabIndex = 72;
|
||||||
sthAllPic.UnCheckedText = "关闭";
|
sthAllPic.UnCheckedText = "关闭";
|
||||||
//
|
//
|
||||||
@ -378,12 +390,12 @@
|
|||||||
sltCamType.List = true;
|
sltCamType.List = true;
|
||||||
sltCamType.Location = new Point(86, 93);
|
sltCamType.Location = new Point(86, 93);
|
||||||
sltCamType.Name = "sltCamType";
|
sltCamType.Name = "sltCamType";
|
||||||
sltCamType.Size = new Size(94, 36);
|
sltCamType.Size = new Size(111, 36);
|
||||||
sltCamType.TabIndex = 74;
|
sltCamType.TabIndex = 74;
|
||||||
//
|
//
|
||||||
// label14
|
// label14
|
||||||
//
|
//
|
||||||
label14.Location = new Point(21, 401);
|
label14.Location = new Point(21, 441);
|
||||||
label14.Name = "label14";
|
label14.Name = "label14";
|
||||||
label14.Size = new Size(59, 23);
|
label14.Size = new Size(59, 23);
|
||||||
label14.TabIndex = 75;
|
label14.TabIndex = 75;
|
||||||
@ -392,14 +404,16 @@
|
|||||||
// switch1
|
// switch1
|
||||||
//
|
//
|
||||||
switch1.CheckedText = "启用";
|
switch1.CheckedText = "启用";
|
||||||
switch1.Location = new Point(86, 391);
|
switch1.Location = new Point(86, 431);
|
||||||
switch1.Name = "switch1";
|
switch1.Name = "switch1";
|
||||||
switch1.Size = new Size(94, 33);
|
switch1.Size = new Size(111, 33);
|
||||||
switch1.TabIndex = 76;
|
switch1.TabIndex = 76;
|
||||||
switch1.UnCheckedText = "关闭";
|
switch1.UnCheckedText = "关闭";
|
||||||
//
|
//
|
||||||
// panel1
|
// panel1
|
||||||
//
|
//
|
||||||
|
panel1.Controls.Add(sltPicType);
|
||||||
|
panel1.Controls.Add(label15);
|
||||||
panel1.Controls.Add(switch1);
|
panel1.Controls.Add(switch1);
|
||||||
panel1.Controls.Add(label14);
|
panel1.Controls.Add(label14);
|
||||||
panel1.Controls.Add(sltCamType);
|
panel1.Controls.Add(sltCamType);
|
||||||
@ -432,19 +446,25 @@
|
|||||||
panel1.Dock = DockStyle.Left;
|
panel1.Dock = DockStyle.Left;
|
||||||
panel1.Location = new Point(0, 0);
|
panel1.Location = new Point(0, 0);
|
||||||
panel1.Name = "panel1";
|
panel1.Name = "panel1";
|
||||||
panel1.Size = new Size(218, 611);
|
panel1.Size = new Size(218, 644);
|
||||||
panel1.TabIndex = 48;
|
panel1.TabIndex = 48;
|
||||||
panel1.Text = "panel1";
|
panel1.Text = "panel1";
|
||||||
//
|
//
|
||||||
// pictureBox1
|
// sltPicType
|
||||||
//
|
//
|
||||||
pictureBox1.BorderStyle = BorderStyle.FixedSingle;
|
sltPicType.List = true;
|
||||||
pictureBox1.Dock = DockStyle.Fill;
|
sltPicType.Location = new Point(86, 352);
|
||||||
pictureBox1.Location = new Point(0, 0);
|
sltPicType.Name = "sltPicType";
|
||||||
pictureBox1.Name = "pictureBox1";
|
sltPicType.Size = new Size(111, 36);
|
||||||
pictureBox1.Size = new Size(691, 552);
|
sltPicType.TabIndex = 78;
|
||||||
pictureBox1.TabIndex = 39;
|
//
|
||||||
pictureBox1.TabStop = false;
|
// label15
|
||||||
|
//
|
||||||
|
label15.Location = new Point(21, 352);
|
||||||
|
label15.Name = "label15";
|
||||||
|
label15.Size = new Size(59, 36);
|
||||||
|
label15.TabIndex = 77;
|
||||||
|
label15.Text = "图片格式";
|
||||||
//
|
//
|
||||||
// CameraControl
|
// CameraControl
|
||||||
//
|
//
|
||||||
@ -453,12 +473,12 @@
|
|||||||
Controls.Add(panel2);
|
Controls.Add(panel2);
|
||||||
Controls.Add(panel1);
|
Controls.Add(panel1);
|
||||||
Name = "CameraControl";
|
Name = "CameraControl";
|
||||||
Size = new Size(909, 611);
|
Size = new Size(909, 644);
|
||||||
panel3.ResumeLayout(false);
|
panel3.ResumeLayout(false);
|
||||||
panel4.ResumeLayout(false);
|
panel4.ResumeLayout(false);
|
||||||
|
((System.ComponentModel.ISupportInitialize)pictureBox1).EndInit();
|
||||||
panel2.ResumeLayout(false);
|
panel2.ResumeLayout(false);
|
||||||
panel1.ResumeLayout(false);
|
panel1.ResumeLayout(false);
|
||||||
((System.ComponentModel.ISupportInitialize)pictureBox1).EndInit();
|
|
||||||
ResumeLayout(false);
|
ResumeLayout(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -477,18 +497,18 @@
|
|||||||
private AntdUI.Label label1;
|
private AntdUI.Label label1;
|
||||||
private AntdUI.Label label2;
|
private AntdUI.Label label2;
|
||||||
private AntdUI.Label label3;
|
private AntdUI.Label label3;
|
||||||
private AntdUI.InputNumber iptExposure;
|
private AntdUI.Input iptExposure;
|
||||||
private AntdUI.InputNumber iptGain;
|
private AntdUI.Input iptGain;
|
||||||
private AntdUI.Select iptRevolve;
|
private AntdUI.Select iptRevolve;
|
||||||
private AntdUI.Label label4;
|
private AntdUI.Label label4;
|
||||||
private AntdUI.Select sltAcquisitionMode;
|
private AntdUI.Select sltAcquisitionMode;
|
||||||
private AntdUI.Label label5;
|
private AntdUI.Label label5;
|
||||||
private AntdUI.Select sltTriggerMode;
|
private AntdUI.Select sltTriggerMode;
|
||||||
private AntdUI.Label label7;
|
private AntdUI.Label label7;
|
||||||
private AntdUI.InputNumber iptROIX;
|
private AntdUI.Input iptROIX;
|
||||||
private AntdUI.InputNumber iptROIY;
|
private AntdUI.Input iptROIY;
|
||||||
private AntdUI.InputNumber iptROIW;
|
private AntdUI.Input iptROIW;
|
||||||
private AntdUI.InputNumber iptROIH;
|
private AntdUI.Input iptROIH;
|
||||||
private AntdUI.Label label6;
|
private AntdUI.Label label6;
|
||||||
private AntdUI.Switch sthPic;
|
private AntdUI.Switch sthPic;
|
||||||
private AntdUI.Label label8;
|
private AntdUI.Label label8;
|
||||||
@ -502,5 +522,7 @@
|
|||||||
private AntdUI.Label label14;
|
private AntdUI.Label label14;
|
||||||
private AntdUI.Switch switch1;
|
private AntdUI.Switch switch1;
|
||||||
private AntdUI.Panel panel1;
|
private AntdUI.Panel panel1;
|
||||||
|
private AntdUI.Select sltPicType;
|
||||||
|
private AntdUI.Label label15;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -10,6 +10,7 @@ using System.Windows.Forms;
|
|||||||
using AntdUI;
|
using AntdUI;
|
||||||
using DH.Commons.Base;
|
using DH.Commons.Base;
|
||||||
using DH.Commons.Enums;
|
using DH.Commons.Enums;
|
||||||
|
using DVPCameraType;
|
||||||
using static System.Windows.Forms.VisualStyles.VisualStyleElement;
|
using static System.Windows.Forms.VisualStyles.VisualStyleElement;
|
||||||
using Window = AntdUI.Window;
|
using Window = AntdUI.Window;
|
||||||
|
|
||||||
@ -26,9 +27,36 @@ namespace DHSoftware.Views
|
|||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
|
|
||||||
sltCamType.TextChanged += SltCamTpye_TextChanged;
|
sltCamType.TextChanged += SltCamTpye_TextChanged;
|
||||||
|
sltPicType.TextChanged += SltPicTpye_TextChanged;
|
||||||
InitData();
|
InitData();
|
||||||
BindData();
|
BindData();
|
||||||
}
|
}
|
||||||
|
private void SltPicTpye_TextChanged(object? sender, EventArgs e)
|
||||||
|
{
|
||||||
|
if (sender is Select slt && !string.IsNullOrEmpty(slt.Text))
|
||||||
|
{
|
||||||
|
// 将文本转换为枚举值
|
||||||
|
if (Enum.TryParse<dvpStreamFormat>(slt.Text, out var plcType))
|
||||||
|
{
|
||||||
|
switch (plcType)
|
||||||
|
{
|
||||||
|
case dvpStreamFormat.S_RGB24:
|
||||||
|
case dvpStreamFormat.S_MONO8:
|
||||||
|
|
||||||
|
break;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
private void SltCamTpye_TextChanged(object? sender, EventArgs e)
|
private void SltCamTpye_TextChanged(object? sender, EventArgs e)
|
||||||
{
|
{
|
||||||
if (sender is Select slt && !string.IsNullOrEmpty(slt.Text))
|
if (sender is Select slt && !string.IsNullOrEmpty(slt.Text))
|
||||||
@ -77,6 +105,7 @@ namespace DHSoftware.Views
|
|||||||
{
|
{
|
||||||
|
|
||||||
sltCamType.DataBindings.Add("Text", CameraBase, "CamType", true, DataSourceUpdateMode.OnPropertyChanged, "");
|
sltCamType.DataBindings.Add("Text", CameraBase, "CamType", true, DataSourceUpdateMode.OnPropertyChanged, "");
|
||||||
|
sltPicType.DataBindings.Add("Text", CameraBase, "DvpImageFormat", true, DataSourceUpdateMode.OnPropertyChanged, "");
|
||||||
sthPic.DataBindings.Add(nameof(sthPic.Checked), CameraBase, nameof(CameraBase.IsSavePicEnabled),
|
sthPic.DataBindings.Add(nameof(sthPic.Checked), CameraBase, nameof(CameraBase.IsSavePicEnabled),
|
||||||
true, DataSourceUpdateMode.OnPropertyChanged);
|
true, DataSourceUpdateMode.OnPropertyChanged);
|
||||||
sthAllPic.DataBindings.Add(nameof(sthAllPic.Checked), CameraBase, nameof(CameraBase.IsAllPicEnabled),
|
sthAllPic.DataBindings.Add(nameof(sthAllPic.Checked), CameraBase, nameof(CameraBase.IsAllPicEnabled),
|
||||||
@ -87,22 +116,20 @@ namespace DHSoftware.Views
|
|||||||
switch1.DataBindings.Add(nameof(switch1.Checked), CameraBase, nameof(CameraBase.IsZoomCamera),
|
switch1.DataBindings.Add(nameof(switch1.Checked), CameraBase, nameof(CameraBase.IsZoomCamera),
|
||||||
true, DataSourceUpdateMode.OnPropertyChanged);
|
true, DataSourceUpdateMode.OnPropertyChanged);
|
||||||
// 曝光时间绑定(假设iptExposure是NumericUpDown)
|
// 曝光时间绑定(假设iptExposure是NumericUpDown)
|
||||||
iptExposure.DataBindings.Add(nameof(iptExposure.Value), CameraBase, nameof(CameraBase.Exposure),
|
|
||||||
true, DataSourceUpdateMode.OnPropertyChanged, 0M, "N2");
|
|
||||||
|
|
||||||
|
iptExposure.DataBindings.Add(nameof(iptExposure.Text), CameraBase, nameof(CameraBase.Exposure));
|
||||||
// 增益绑定
|
// 增益绑定
|
||||||
iptGain.DataBindings.Add(nameof(iptGain.Value), CameraBase, nameof(CameraBase.Gain),
|
|
||||||
true, DataSourceUpdateMode.OnPropertyChanged, 0M, "N2");
|
|
||||||
|
|
||||||
|
iptGain.DataBindings.Add(nameof(iptGain.Text), CameraBase, nameof(CameraBase.Gain));
|
||||||
// 旋转角度绑定
|
// 旋转角度绑定
|
||||||
iptRevolve.DataBindings.Add(nameof(iptRevolve.Text), CameraBase, nameof(CameraBase.RotateImage),
|
iptRevolve.DataBindings.Add(nameof(iptRevolve.Text), CameraBase, nameof(CameraBase.RotateImage));
|
||||||
true, DataSourceUpdateMode.OnPropertyChanged, 0M, "N2");
|
|
||||||
|
|
||||||
// ROI坐标绑定
|
// ROI坐标绑定
|
||||||
iptROIX.DataBindings.Add(nameof(iptROIX.Value), CameraBase, nameof(CameraBase.ROIX));
|
iptROIX.DataBindings.Add(nameof(iptROIX.Text), CameraBase, nameof(CameraBase.ROIX));
|
||||||
iptROIY.DataBindings.Add(nameof(iptROIY.Value), CameraBase, nameof(CameraBase.ROIY));
|
iptROIY.DataBindings.Add(nameof(iptROIY.Text), CameraBase, nameof(CameraBase.ROIY));
|
||||||
iptROIW.DataBindings.Add(nameof(iptROIW.Value), CameraBase, nameof(CameraBase.ROIW));
|
iptROIW.DataBindings.Add(nameof(iptROIW.Text), CameraBase, nameof(CameraBase.ROIW));
|
||||||
iptROIH.DataBindings.Add(nameof(iptROIH.Value), CameraBase, nameof(CameraBase.ROIH));
|
iptROIH.DataBindings.Add(nameof(iptROIH.Text), CameraBase, nameof(CameraBase.ROIH));
|
||||||
|
|
||||||
// 采集模式下拉框处理
|
// 采集模式下拉框处理
|
||||||
sltAcquisitionMode.SelectedIndexChanged += (s, e) =>
|
sltAcquisitionMode.SelectedIndexChanged += (s, e) =>
|
||||||
@ -126,10 +153,16 @@ namespace DHSoftware.Views
|
|||||||
{
|
{
|
||||||
sltCamType.Items.Add(value.ToString());
|
sltCamType.Items.Add(value.ToString());
|
||||||
}
|
}
|
||||||
|
sltPicType.Items.Clear();
|
||||||
|
foreach (dvpStreamFormat value in Enum.GetValues(typeof(dvpStreamFormat)))
|
||||||
|
{
|
||||||
|
sltPicType.Items.Add(value.ToString());
|
||||||
|
}
|
||||||
// 初始化下拉框选项
|
// 初始化下拉框选项
|
||||||
sltAcquisitionMode.Items.AddRange(new[] { "连续模式", "触发模式" });
|
sltAcquisitionMode.Items.AddRange(new[] { "连续模式", "触发模式" });
|
||||||
sltTriggerMode.Items.AddRange(new[] { "软触发", "硬触发" });
|
sltTriggerMode.Items.AddRange(new[] { "软触发", "硬触发" });
|
||||||
|
|
||||||
|
|
||||||
// 设置初始选择
|
// 设置初始选择
|
||||||
sltAcquisitionMode.SelectedIndex = CameraBase.IsContinueMode ? 0 : 1;
|
sltAcquisitionMode.SelectedIndex = CameraBase.IsContinueMode ? 0 : 1;
|
||||||
sltTriggerMode.SelectedIndex = CameraBase.IsHardwareTrigger ? 1 : 0;
|
sltTriggerMode.SelectedIndex = CameraBase.IsHardwareTrigger ? 1 : 0;
|
||||||
|
2
DHSoftware/Views/FrmLog.Designer.cs
generated
2
DHSoftware/Views/FrmLog.Designer.cs
generated
@ -55,7 +55,7 @@
|
|||||||
this.tsmiClearLog.Name = "tsmiClearLog";
|
this.tsmiClearLog.Name = "tsmiClearLog";
|
||||||
this.tsmiClearLog.Size = new System.Drawing.Size(124, 22);
|
this.tsmiClearLog.Size = new System.Drawing.Size(124, 22);
|
||||||
this.tsmiClearLog.Text = "清空日志";
|
this.tsmiClearLog.Text = "清空日志";
|
||||||
this.tsmiClearLog.Click += new System.EventHandler(this.tsmiClearLog_Click);
|
// this.tsmiClearLog.Click += new System.EventHandler(this.tsmiClearLog_Click);
|
||||||
//
|
//
|
||||||
// menuStrip1
|
// menuStrip1
|
||||||
//
|
//
|
||||||
|
@ -30,8 +30,11 @@ namespace DHSoftware.Views
|
|||||||
#region 常量配置
|
#region 常量配置
|
||||||
private const string SOURCE_PROCESS = "流程";
|
private const string SOURCE_PROCESS = "流程";
|
||||||
private const int LOG_NUM_LIMIT = 2000;
|
private const int LOG_NUM_LIMIT = 2000;
|
||||||
private const int BATCH_SIZE = 50;
|
// private const int BATCH_SIZE = 50;
|
||||||
private const int PROCESS_INTERVAL = 100;
|
// 调整常量配置
|
||||||
|
private const int BATCH_SIZE = 100; // 从50提升到100
|
||||||
|
private const int PROCESS_INTERVAL = 200; // 从100ms调整到200ms
|
||||||
|
// private const int PROCESS_INTERVAL = 100;
|
||||||
private const int FIRST_COL_WIDTH = 120;
|
private const int FIRST_COL_WIDTH = 120;
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
107
DHSoftware/Views/GlobalControl.Designer.cs
generated
107
DHSoftware/Views/GlobalControl.Designer.cs
generated
@ -28,7 +28,7 @@
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
private void InitializeComponent()
|
private void InitializeComponent()
|
||||||
{
|
{
|
||||||
AntdUI.Tabs.StyleLine styleLine1 = new AntdUI.Tabs.StyleLine();
|
AntdUI.Tabs.StyleLine styleLine2 = new AntdUI.Tabs.StyleLine();
|
||||||
tabs1 = new AntdUI.Tabs();
|
tabs1 = new AntdUI.Tabs();
|
||||||
tabPage6 = new AntdUI.TabPage();
|
tabPage6 = new AntdUI.TabPage();
|
||||||
tabPage1 = new AntdUI.TabPage();
|
tabPage1 = new AntdUI.TabPage();
|
||||||
@ -56,7 +56,16 @@
|
|||||||
panel5 = new AntdUI.Panel();
|
panel5 = new AntdUI.Panel();
|
||||||
btnStopResetDelete = new AntdUI.Button();
|
btnStopResetDelete = new AntdUI.Button();
|
||||||
btnStopResetAdd = new AntdUI.Button();
|
btnStopResetAdd = new AntdUI.Button();
|
||||||
|
panel6 = new AntdUI.Panel();
|
||||||
|
panel7 = new AntdUI.Panel();
|
||||||
|
uiLabel1 = new Sunny.UI.UILabel();
|
||||||
|
swhEnableVibrator = new AntdUI.Switch();
|
||||||
|
swhEnableBelt = new AntdUI.Switch();
|
||||||
|
uiLabel2 = new Sunny.UI.UILabel();
|
||||||
|
uiLabel3 = new Sunny.UI.UILabel();
|
||||||
|
iptClearTime = new AntdUI.Input();
|
||||||
tabs1.SuspendLayout();
|
tabs1.SuspendLayout();
|
||||||
|
tabPage6.SuspendLayout();
|
||||||
tabPage1.SuspendLayout();
|
tabPage1.SuspendLayout();
|
||||||
panel1.SuspendLayout();
|
panel1.SuspendLayout();
|
||||||
tabPage2.SuspendLayout();
|
tabPage2.SuspendLayout();
|
||||||
@ -67,6 +76,7 @@
|
|||||||
panel4.SuspendLayout();
|
panel4.SuspendLayout();
|
||||||
tabPage5.SuspendLayout();
|
tabPage5.SuspendLayout();
|
||||||
panel5.SuspendLayout();
|
panel5.SuspendLayout();
|
||||||
|
panel6.SuspendLayout();
|
||||||
SuspendLayout();
|
SuspendLayout();
|
||||||
//
|
//
|
||||||
// tabs1
|
// tabs1
|
||||||
@ -81,13 +91,14 @@
|
|||||||
tabs1.Pages.Add(tabPage4);
|
tabs1.Pages.Add(tabPage4);
|
||||||
tabs1.Pages.Add(tabPage5);
|
tabs1.Pages.Add(tabPage5);
|
||||||
tabs1.Size = new Size(898, 530);
|
tabs1.Size = new Size(898, 530);
|
||||||
tabs1.Style = styleLine1;
|
tabs1.Style = styleLine2;
|
||||||
tabs1.TabIndex = 26;
|
tabs1.TabIndex = 26;
|
||||||
tabs1.Text = "tabs1";
|
tabs1.Text = "tabs1";
|
||||||
tabs1.SelectedIndex = 1;
|
|
||||||
//
|
//
|
||||||
// tabPage6
|
// tabPage6
|
||||||
//
|
//
|
||||||
|
tabPage6.Controls.Add(panel7);
|
||||||
|
tabPage6.Controls.Add(panel6);
|
||||||
tabPage6.Location = new Point(3, 28);
|
tabPage6.Location = new Point(3, 28);
|
||||||
tabPage6.Name = "tabPage6";
|
tabPage6.Name = "tabPage6";
|
||||||
tabPage6.Size = new Size(892, 499);
|
tabPage6.Size = new Size(892, 499);
|
||||||
@ -372,6 +383,86 @@
|
|||||||
btnStopResetAdd.Type = AntdUI.TTypeMini.Primary;
|
btnStopResetAdd.Type = AntdUI.TTypeMini.Primary;
|
||||||
btnStopResetAdd.WaveSize = 0;
|
btnStopResetAdd.WaveSize = 0;
|
||||||
//
|
//
|
||||||
|
// panel6
|
||||||
|
//
|
||||||
|
panel6.Controls.Add(iptClearTime);
|
||||||
|
panel6.Controls.Add(uiLabel3);
|
||||||
|
panel6.Controls.Add(swhEnableBelt);
|
||||||
|
panel6.Controls.Add(uiLabel2);
|
||||||
|
panel6.Controls.Add(swhEnableVibrator);
|
||||||
|
panel6.Controls.Add(uiLabel1);
|
||||||
|
panel6.Dock = DockStyle.Left;
|
||||||
|
panel6.Location = new Point(0, 0);
|
||||||
|
panel6.Name = "panel6";
|
||||||
|
panel6.Size = new Size(427, 499);
|
||||||
|
panel6.TabIndex = 0;
|
||||||
|
panel6.Text = "panel6";
|
||||||
|
//
|
||||||
|
// panel7
|
||||||
|
//
|
||||||
|
panel7.Dock = DockStyle.Fill;
|
||||||
|
panel7.Location = new Point(427, 0);
|
||||||
|
panel7.Name = "panel7";
|
||||||
|
panel7.Size = new Size(465, 499);
|
||||||
|
panel7.TabIndex = 1;
|
||||||
|
panel7.Text = "panel7";
|
||||||
|
//
|
||||||
|
// uiLabel1
|
||||||
|
//
|
||||||
|
uiLabel1.Font = new Font("宋体", 12F, FontStyle.Regular, GraphicsUnit.Point, 134);
|
||||||
|
uiLabel1.ForeColor = Color.FromArgb(48, 48, 48);
|
||||||
|
uiLabel1.Location = new Point(28, 36);
|
||||||
|
uiLabel1.Name = "uiLabel1";
|
||||||
|
uiLabel1.Size = new Size(63, 23);
|
||||||
|
uiLabel1.TabIndex = 0;
|
||||||
|
uiLabel1.Text = "振动盘";
|
||||||
|
//
|
||||||
|
// swhEnableVibrator
|
||||||
|
//
|
||||||
|
swhEnableVibrator.CheckedText = "启用";
|
||||||
|
swhEnableVibrator.Location = new Point(97, 26);
|
||||||
|
swhEnableVibrator.Name = "swhEnableVibrator";
|
||||||
|
swhEnableVibrator.Size = new Size(94, 33);
|
||||||
|
swhEnableVibrator.TabIndex = 50;
|
||||||
|
swhEnableVibrator.UnCheckedText = "关闭";
|
||||||
|
//
|
||||||
|
// swhEnableBelt
|
||||||
|
//
|
||||||
|
swhEnableBelt.CheckedText = "启用";
|
||||||
|
swhEnableBelt.Location = new Point(97, 82);
|
||||||
|
swhEnableBelt.Name = "swhEnableBelt";
|
||||||
|
swhEnableBelt.Size = new Size(94, 33);
|
||||||
|
swhEnableBelt.TabIndex = 52;
|
||||||
|
swhEnableBelt.UnCheckedText = "关闭";
|
||||||
|
//
|
||||||
|
// uiLabel2
|
||||||
|
//
|
||||||
|
uiLabel2.Font = new Font("宋体", 12F, FontStyle.Regular, GraphicsUnit.Point, 134);
|
||||||
|
uiLabel2.ForeColor = Color.FromArgb(48, 48, 48);
|
||||||
|
uiLabel2.Location = new Point(28, 92);
|
||||||
|
uiLabel2.Name = "uiLabel2";
|
||||||
|
uiLabel2.Size = new Size(63, 23);
|
||||||
|
uiLabel2.TabIndex = 51;
|
||||||
|
uiLabel2.Text = "皮带";
|
||||||
|
//
|
||||||
|
// uiLabel3
|
||||||
|
//
|
||||||
|
uiLabel3.Font = new Font("宋体", 12F, FontStyle.Regular, GraphicsUnit.Point, 134);
|
||||||
|
uiLabel3.ForeColor = Color.FromArgb(48, 48, 48);
|
||||||
|
uiLabel3.Location = new Point(17, 142);
|
||||||
|
uiLabel3.Name = "uiLabel3";
|
||||||
|
uiLabel3.Size = new Size(74, 23);
|
||||||
|
uiLabel3.TabIndex = 53;
|
||||||
|
uiLabel3.Text = "清料时间";
|
||||||
|
//
|
||||||
|
// iptClearTime
|
||||||
|
//
|
||||||
|
iptClearTime.Location = new Point(97, 131);
|
||||||
|
iptClearTime.Name = "iptClearTime";
|
||||||
|
iptClearTime.Size = new Size(94, 43);
|
||||||
|
iptClearTime.TabIndex = 54;
|
||||||
|
iptClearTime.Text = "0";
|
||||||
|
//
|
||||||
// GlobalControl
|
// GlobalControl
|
||||||
//
|
//
|
||||||
AutoScaleDimensions = new SizeF(7F, 17F);
|
AutoScaleDimensions = new SizeF(7F, 17F);
|
||||||
@ -380,6 +471,7 @@
|
|||||||
Name = "GlobalControl";
|
Name = "GlobalControl";
|
||||||
Size = new Size(898, 530);
|
Size = new Size(898, 530);
|
||||||
tabs1.ResumeLayout(false);
|
tabs1.ResumeLayout(false);
|
||||||
|
tabPage6.ResumeLayout(false);
|
||||||
tabPage1.ResumeLayout(false);
|
tabPage1.ResumeLayout(false);
|
||||||
panel1.ResumeLayout(false);
|
panel1.ResumeLayout(false);
|
||||||
tabPage2.ResumeLayout(false);
|
tabPage2.ResumeLayout(false);
|
||||||
@ -390,6 +482,7 @@
|
|||||||
panel4.ResumeLayout(false);
|
panel4.ResumeLayout(false);
|
||||||
tabPage5.ResumeLayout(false);
|
tabPage5.ResumeLayout(false);
|
||||||
panel5.ResumeLayout(false);
|
panel5.ResumeLayout(false);
|
||||||
|
panel6.ResumeLayout(false);
|
||||||
ResumeLayout(false);
|
ResumeLayout(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -421,5 +514,13 @@
|
|||||||
private AntdUI.Button btnAdd;
|
private AntdUI.Button btnAdd;
|
||||||
private AntdUI.Button btnDelete;
|
private AntdUI.Button btnDelete;
|
||||||
private AntdUI.TabPage tabPage6;
|
private AntdUI.TabPage tabPage6;
|
||||||
|
private AntdUI.Panel panel7;
|
||||||
|
private AntdUI.Panel panel6;
|
||||||
|
private Sunny.UI.UILabel uiLabel1;
|
||||||
|
private AntdUI.Switch swhEnableBelt;
|
||||||
|
private Sunny.UI.UILabel uiLabel2;
|
||||||
|
private AntdUI.Switch swhEnableVibrator;
|
||||||
|
private Sunny.UI.UILabel uiLabel3;
|
||||||
|
private AntdUI.Input iptClearTime;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -691,7 +691,10 @@ namespace DHSoftware.Views
|
|||||||
private void InitData()
|
private void InitData()
|
||||||
{
|
{
|
||||||
|
|
||||||
|
// 启用状态绑定
|
||||||
|
swhEnableVibrator.DataBindings.Add("Checked", global, "EnableVibrator", true, DataSourceUpdateMode.OnPropertyChanged);
|
||||||
|
swhEnableBelt.DataBindings.Add("Checked", global, "EnableBelt", true, DataSourceUpdateMode.OnPropertyChanged);
|
||||||
|
iptClearTime.DataBindings.Add("Text", global, "ClearTime", true, DataSourceUpdateMode.OnPropertyChanged);
|
||||||
|
|
||||||
TableInitProcess.Columns = new ColumnCollection() {
|
TableInitProcess.Columns = new ColumnCollection() {
|
||||||
new ColumnCheck("Selected"){Fixed = true},
|
new ColumnCheck("Selected"){Fixed = true},
|
||||||
|
@ -7,6 +7,7 @@ using DH.Commons.Base;
|
|||||||
using DH.RBAC.Model.Sys;
|
using DH.RBAC.Model.Sys;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using ScrollBar = AntdUI.ScrollBar;
|
using ScrollBar = AntdUI.ScrollBar;
|
||||||
|
using DH.Commons.Enums;
|
||||||
|
|
||||||
namespace DHSoftware.Views
|
namespace DHSoftware.Views
|
||||||
{
|
{
|
||||||
@ -59,6 +60,19 @@ namespace DHSoftware.Views
|
|||||||
switch (clickedItem.PARENTITEM.Text)
|
switch (clickedItem.PARENTITEM.Text)
|
||||||
{
|
{
|
||||||
case "相机设置":
|
case "相机设置":
|
||||||
|
bool b = false;
|
||||||
|
if (ButtonPermissionList.Count > 0)
|
||||||
|
{
|
||||||
|
foreach (var item in ButtonPermissionList)
|
||||||
|
{
|
||||||
|
if (item.EnCode == "sys-cameraset")
|
||||||
|
{
|
||||||
|
b = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!b) { AntdUI.Message.warn(this, $"对不起,无权限访问相机设置!", autoClose: 3); return; }
|
||||||
foreach (var tab in tabs1.Pages)
|
foreach (var tab in tabs1.Pages)
|
||||||
{
|
{
|
||||||
if (tab is AntdUI.TabPage existingTab && existingTab.Text == $"{clickedItem.PARENTITEM.Text}-{clickedItem.Text}")
|
if (tab is AntdUI.TabPage existingTab && existingTab.Text == $"{clickedItem.PARENTITEM.Text}-{clickedItem.Text}")
|
||||||
@ -99,6 +113,19 @@ namespace DHSoftware.Views
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case "工位设置":
|
case "工位设置":
|
||||||
|
bool b1 = false;
|
||||||
|
if (ButtonPermissionList.Count > 0)
|
||||||
|
{
|
||||||
|
foreach (var item in ButtonPermissionList)
|
||||||
|
{
|
||||||
|
if (item.EnCode == "sys-stationset")
|
||||||
|
{
|
||||||
|
b1 = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!b1) { AntdUI.Message.warn(this, $"对不起,无权限访问工位设置!", autoClose: 3); return; }
|
||||||
// 检查是否已存在同名 TabPage
|
// 检查是否已存在同名 TabPage
|
||||||
foreach (var tab in tabs1.Pages)
|
foreach (var tab in tabs1.Pages)
|
||||||
{
|
{
|
||||||
@ -146,6 +173,19 @@ namespace DHSoftware.Views
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case "运控设置":
|
case "运控设置":
|
||||||
|
bool b2 = false;
|
||||||
|
if (ButtonPermissionList.Count > 0)
|
||||||
|
{
|
||||||
|
foreach (var item in ButtonPermissionList)
|
||||||
|
{
|
||||||
|
if (item.EnCode == "sys-motionset")
|
||||||
|
{
|
||||||
|
b2 = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!b2) { AntdUI.Message.warn(this, $"对不起,无权限访问运控设置!", autoClose: 3); return; }
|
||||||
foreach (var tab in tabs1.Pages)
|
foreach (var tab in tabs1.Pages)
|
||||||
{
|
{
|
||||||
if (tab is AntdUI.TabPage existingTab && existingTab.Text == $"{clickedItem.PARENTITEM.Text}-{clickedItem.Text}")
|
if (tab is AntdUI.TabPage existingTab && existingTab.Text == $"{clickedItem.PARENTITEM.Text}-{clickedItem.Text}")
|
||||||
@ -185,6 +225,19 @@ namespace DHSoftware.Views
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case "其他设置":
|
case "其他设置":
|
||||||
|
bool b3 = false;
|
||||||
|
if (ButtonPermissionList.Count > 0)
|
||||||
|
{
|
||||||
|
foreach (var item in ButtonPermissionList)
|
||||||
|
{
|
||||||
|
if (item.EnCode == "sys-globalset")
|
||||||
|
{
|
||||||
|
b3 = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!b3) { AntdUI.Message.warn(this, $"对不起,无权限访问其他设置!", autoClose: 3); return; }
|
||||||
foreach (var tab in tabs1.Pages)
|
foreach (var tab in tabs1.Pages)
|
||||||
{
|
{
|
||||||
if (tab is AntdUI.TabPage existingTab && existingTab.Text == $"{clickedItem.PARENTITEM.Text}-{clickedItem.Text}")
|
if (tab is AntdUI.TabPage existingTab && existingTab.Text == $"{clickedItem.PARENTITEM.Text}-{clickedItem.Text}")
|
||||||
@ -329,15 +382,30 @@ namespace DHSoftware.Views
|
|||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
private List<SysPermission> _buttonPermissionList = new List<SysPermission>();
|
||||||
|
private readonly object _permissionLock = new object();
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 按钮权限列表(线程安全)
|
||||||
|
/// </summary>
|
||||||
public List<SysPermission> ButtonPermissionList
|
public List<SysPermission> ButtonPermissionList
|
||||||
{
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
lock (_permissionLock)
|
||||||
|
{
|
||||||
|
return new List<SysPermission>(_buttonPermissionList); // 返回副本避免外部修改
|
||||||
|
}
|
||||||
|
}
|
||||||
set
|
set
|
||||||
{
|
{
|
||||||
List<SysPermission> list = value;
|
lock (_permissionLock)
|
||||||
SetPermission(list, this.Controls);
|
{
|
||||||
|
_buttonPermissionList = value ?? new List<SysPermission>();
|
||||||
|
SetPermission(_buttonPermissionList, this.Controls); // 应用权限到控件
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void SetPermission(List<SysPermission> list, Control.ControlCollection controls)
|
private void SetPermission(List<SysPermission> list, Control.ControlCollection controls)
|
||||||
{
|
{
|
||||||
foreach (Control control in controls)
|
foreach (Control control in controls)
|
||||||
@ -453,7 +521,19 @@ namespace DHSoftware.Views
|
|||||||
{
|
{
|
||||||
if (e.Button == MouseButtons.Right)
|
if (e.Button == MouseButtons.Right)
|
||||||
{
|
{
|
||||||
|
bool b = false;
|
||||||
|
if (ButtonPermissionList.Count > 0)
|
||||||
|
{
|
||||||
|
foreach(var item in ButtonPermissionList)
|
||||||
|
{
|
||||||
|
if (item.EnCode == "sys-setright")
|
||||||
|
{
|
||||||
|
b= true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!b) { return; }
|
||||||
var menu = sender as Menu;
|
var menu = sender as Menu;
|
||||||
if (menu == null) return;
|
if (menu == null) return;
|
||||||
|
|
||||||
@ -491,6 +571,7 @@ namespace DHSoftware.Views
|
|||||||
if (result == DialogResult.OK)
|
if (result == DialogResult.OK)
|
||||||
{
|
{
|
||||||
menu1.Remove(clickedItem);
|
menu1.Remove(clickedItem);
|
||||||
|
ConfigModel.CameraBaseList.RemoveAll(c => c.CameraName == clickedItem.Text);
|
||||||
foreach (var tab in tabs1.Pages)
|
foreach (var tab in tabs1.Pages)
|
||||||
{
|
{
|
||||||
if (tab is AntdUI.TabPage existingTab && existingTab.Text == $"{clickedItem.PARENTITEM.Text}-{clickedItem.Text}")
|
if (tab is AntdUI.TabPage existingTab && existingTab.Text == $"{clickedItem.PARENTITEM.Text}-{clickedItem.Text}")
|
||||||
@ -503,7 +584,7 @@ namespace DHSoftware.Views
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
ConfigModel.CameraBaseList.RemoveAll(c => c.CameraName == clickedItem.Text);
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -515,7 +596,8 @@ namespace DHSoftware.Views
|
|||||||
{
|
{
|
||||||
Size = new Size(300, 200),
|
Size = new Size(300, 200),
|
||||||
// 传递当前名称到表单
|
// 传递当前名称到表单
|
||||||
CubicleName = originalName
|
CubicleName = originalName,
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
AntdUI.Modal.open(new AntdUI.Modal.Config(this, "", form, TType.None)
|
AntdUI.Modal.open(new AntdUI.Modal.Config(this, "", form, TType.None)
|
||||||
@ -577,6 +659,7 @@ namespace DHSoftware.Views
|
|||||||
if (result == DialogResult.OK)
|
if (result == DialogResult.OK)
|
||||||
{
|
{
|
||||||
menu1.Remove(clickedItem);
|
menu1.Remove(clickedItem);
|
||||||
|
ConfigModel.CameraBaseList.RemoveAll(c => c.CameraName == clickedItem.Text);
|
||||||
foreach (var tab in tabs1.Pages)
|
foreach (var tab in tabs1.Pages)
|
||||||
{
|
{
|
||||||
if (tab is AntdUI.TabPage existingTab && existingTab.Text == $"{clickedItem.PARENTITEM.Text}-{clickedItem.Text}")
|
if (tab is AntdUI.TabPage existingTab && existingTab.Text == $"{clickedItem.PARENTITEM.Text}-{clickedItem.Text}")
|
||||||
@ -595,12 +678,14 @@ namespace DHSoftware.Views
|
|||||||
case "重命名":
|
case "重命名":
|
||||||
// 保存原始名称用于查找
|
// 保存原始名称用于查找
|
||||||
string originalName = clickedItem.Text;
|
string originalName = clickedItem.Text;
|
||||||
|
EnumDetectionType enumDetectionType= ConfigModel.DetectionList.FirstOrDefault(c =>
|
||||||
|
c.Name.Equals(originalName, StringComparison.OrdinalIgnoreCase)).DetectionType;
|
||||||
var form = new AddCubicleControl(this, "重命名工位操作")
|
var form = new AddCubicleControl(this, "重命名工位操作")
|
||||||
{
|
{
|
||||||
Size = new Size(300, 500),
|
Size = new Size(300, 500),
|
||||||
// 传递当前名称到表单
|
// 传递当前名称到表单
|
||||||
CubicleName = originalName
|
CubicleName = originalName,
|
||||||
|
DetectionType = enumDetectionType
|
||||||
};
|
};
|
||||||
|
|
||||||
AntdUI.Modal.open(new AntdUI.Modal.Config(this, "", form, TType.None)
|
AntdUI.Modal.open(new AntdUI.Modal.Config(this, "", form, TType.None)
|
||||||
@ -624,6 +709,7 @@ namespace DHSoftware.Views
|
|||||||
var detection = ConfigModel.DetectionList.FirstOrDefault(c =>
|
var detection = ConfigModel.DetectionList.FirstOrDefault(c =>
|
||||||
c.Name.Equals(originalName, StringComparison.OrdinalIgnoreCase));
|
c.Name.Equals(originalName, StringComparison.OrdinalIgnoreCase));
|
||||||
detection.Name = newName;
|
detection.Name = newName;
|
||||||
|
detection.DetectionType = form.DetectionType;
|
||||||
foreach (var tab in tabs1.Pages)
|
foreach (var tab in tabs1.Pages)
|
||||||
{
|
{
|
||||||
if (tab is AntdUI.TabPage existingTab && existingTab.Text == $"{clickedItem.PARENTITEM.Text}-{originalName}")
|
if (tab is AntdUI.TabPage existingTab && existingTab.Text == $"{clickedItem.PARENTITEM.Text}-{originalName}")
|
||||||
|
@ -462,7 +462,6 @@
|
|||||||
//
|
//
|
||||||
iptBarrierPos.Location = new Point(284, 0);
|
iptBarrierPos.Location = new Point(284, 0);
|
||||||
iptBarrierPos.Name = "iptBarrierPos";
|
iptBarrierPos.Name = "iptBarrierPos";
|
||||||
iptBarrierPos.ReadOnly = true;
|
|
||||||
iptBarrierPos.Size = new Size(175, 43);
|
iptBarrierPos.Size = new Size(175, 43);
|
||||||
iptBarrierPos.TabIndex = 20;
|
iptBarrierPos.TabIndex = 20;
|
||||||
iptBarrierPos.Text = "0";
|
iptBarrierPos.Text = "0";
|
||||||
|
@ -175,7 +175,7 @@ namespace DHSoftware.Views
|
|||||||
AntdUI.Message.warn(this, "挡料电机速度值无效");
|
AntdUI.Message.warn(this, "挡料电机速度值无效");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!int.TryParse(iptBarrierPos.Text, out int barrierPos) || speed == 0)
|
if (!int.TryParse(iptBarrierPos.Text, out int barrierPos) || barrierPos == 0)
|
||||||
{
|
{
|
||||||
AntdUI.Message.warn(this, "挡料电机位置值无效");
|
AntdUI.Message.warn(this, "挡料电机位置值无效");
|
||||||
return;
|
return;
|
||||||
|
@ -120,254 +120,7 @@
|
|||||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
<value>
|
<value>
|
||||||
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
|
|
||||||
H/+8px//vKcf/7ynH/+8px//vKcf/7ynH/28ph/su6cfy7unH6W8ph55uqUfSrymFhcAAAABAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEC/vxQ/w7u7QMS7/0DEu/9AxLv/QMS837yn
|
|
||||||
H/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px77vKcf7bym
|
|
||||||
H9i7px+WuqogMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEC/vxQ/w7u7QMS7/0DE
|
|
||||||
u/9AxLv/QMS837ynH/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7yn
|
|
||||||
H/+8px//vKcf/7ynH/+8px//vKcf/rumH766px1OuaIjFv//AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEC/
|
|
||||||
vxQ/w7u7QMS7/0DEu/9AxLv/QMS837ynH/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7yn
|
|
||||||
H/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+9px/2vacfvbymIGe1nyAYAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAEC/vxQ/w7u7QMS7/0DEu/9AxLv/QMS837ynH/+8px//vKcf/7ynH/+8px/wvKcexbyn
|
|
||||||
Htq7px71vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7yn
|
|
||||||
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
|
|
||||||
HkW8px/3vKcf/7ynH/+8px//vKcf/7yoH++6px9RAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEC/
|
|
||||||
vxQ/w7u7QMS7/0DEu/9AxLv/QMS837ynH/+8px//vKcf/7ynH/+8px/NuqcdGgAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE+w7t4QMS7/EDEu/9AxLv/QMS7/0HFu08AAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAALymIRe7px/DvKcf/7ynH/+8px//vKcf/7ynH/y7pR+Dv4AABAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAEC/vxQ/w7u7QMS7/0DEu/9AxLv/QMS837ynH/+8px//vKcf/7ynH/+8px/NuqcdGgAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE+w7t4QMS7/EDEu/9AxLv/QMS7/0HF
|
|
||||||
u08AAAAAAAAAAAAAAAAAAAAAAAAAAMyZMwW7px+LvKcf/rynH/+8px//vKcf/7ynH/+8px6ru6oiDwAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAEC/vxQ/w7u7QMS7/0DEu/9AxLv/QMS837ynH/+8px//vKcf/7yn
|
|
||||||
H/+8px/NuqcdGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE+w7t4QMS7/EDE
|
|
||||||
u/9AxLv/QMS7/0DEvOdAxLvcQMS73EDEu9xAxLvcQMS73EDEu9x0uHrruKkk/rynH/+8px//vKcf/7yn
|
|
||||||
H/+lrTz2TcGp30DEu9xAxLvcQMS73EDEu9xAxLvcQMS73EDEut9AxLv2QMS7/0DEu/9AxLv/QMS837yn
|
|
||||||
H/+8px//vKcf/7ynH/+8px/NuqcdGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAE+w7t4QMS7/EDEu/9AxLv/QMS7/0DEu/9AxLv/QMS7/0DEu/9AxLv/QMS7/0DEu/9ivI//s6kr/7yn
|
|
||||||
H/+8px//vKcf/7ynH/+rqzT/T8Co/0DEu/9AxLv/QMS7/0DEu/9AxLv/QMS7/0DEu/9AxLv/QMS7/0DE
|
|
||||||
u/9AxLv/QMS837ynH/+8px//vKcf/7ynH/+8px/NuqcdGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAE+w7t4QMS7/EDEu/9AxLv/QMS7/0DEu/9AxLv/QMS7/0DEu/9AxLv/QMS7/0DE
|
|
||||||
u/9cvZj/sKot/7ynH/+8px//vKcf/7ynH/+xqi7/UcCm/0DEu/9AxLv/QMS7/0DEu/9AxLv/QMS7/0DE
|
|
||||||
u/9AxLv/QMS7/0DEu/9AxLv/QMS837ynH/+8px//vKcf/7ynH/+8px/NuqcdGgAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE+w7t4QMS7/EDEu/9AxLv/QMS7/0DEu/9AxLv/QMS7/0DE
|
|
||||||
u/9AxLv/QMS7/0DEu/9bvZj/sKou/7ynH/+8px//vKcf/7ynH/+xqi3/UcCl/0DEu/9AxLv/QMS7/0DE
|
|
||||||
u/9AxLv/QMS7/0DEu/9AxLv/QMS7/0DEu/9AxLv/QMS837ynH/+8px//vKcf/7ynH/+8px/NuqcdGgAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE+w7t4QMS7/EDEu/9AxLv/QMS7/z/E
|
|
||||||
u7E/w7qNP8O6jT/Duo0/w7qNP8O6jT/Duo1wuH2wtqgm+LynH/+8px//vKcf/7ynH/+0qSntWb6cmj/D
|
|
||||||
uo0/w7qNP8O6jT/Duo0/w7qNP8O6jT/Eu5Y/xLvhQMS7/0DEu/9AxLv/QMS837ynH/+8px//vKcf/7yn
|
|
||||||
H/+8px/NuqcdGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE+w7t4QMS7/EDE
|
|
||||||
u/9AxLv/QMS7/0HEvlIzzMwFM8zMBTPMzAUzzMwFM8zMBTPMzAW4qCRku6cf9bynH/+8px//vKcf/7yn
|
|
||||||
H/+8pyDKp6c1HTPMzAUzzMwFM8zMBTPMzAUzzMwFM8zMBUDKvxhAxbu8QMS7/0DEu/9AxLv/QMS837yn
|
|
||||||
H/+8px//vKcf/7ynH/+8px/NuqcdGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
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
|
|
||||||
H/+8px//vKcf/7ynH/y9px/EvKYgSAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAEC/vxQ/w7u7QMS7/0DEu/9AxLv/QMS837ynH/+8px//vKcf/7yn
|
|
||||||
H/+8px/NuqcdGgAAAAD/gAACwqoYFbqoHUa9pR+DvaYewbyoH+G9qB/yvKcf/rynH/+8px//vKcf/7yn
|
|
||||||
H/+8px//vKcf/7ynH/+8px//vKcf/rumH5q7qiIegIAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEC/vxQ/w7u7QMS7/0DEu/9AxLv/QMS837yn
|
|
||||||
H/+8px//vKcf/7ynH/+7px/tu6gftbunH8i9px/nu6cf/bynH/+8px//vKcf/7ynH/+8px//vKcf/7yn
|
|
||||||
H/+8px//vKcf/7ynH/+8px//vKcf/7yoH/i8px/OvqcdTgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEC/vxQ/w7u7QMS7/0DE
|
|
||||||
u/9AxLv/QMS837ynH/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7yn
|
|
||||||
H/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px/6vKgfx7ymH3K7qhoeAAAAAQAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEC/
|
|
||||||
vxQ/w7u7QMS7/0DEu/9AxLv/QMS837ynH/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKcf/7yn
|
|
||||||
H/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px//vKgf/ryoH828pR9buqcdGv+AAAIAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAEC/vxQ/w7u7QMS7/0DEu/9AxLv/QMS837ynH/+8px//vKcf/7ynH/+8px//vKcf/7yn
|
|
||||||
H/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px/8vKgf8LynH927px+muaYfQv//AAEAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAEC/vxQ/w7u7QMS7/0DEu/9AxLv/QMS837ynH/+8px//vKcf/7yn
|
|
||||||
H/+8px//vKcf/7ynH/+8px//vKcf/7ynH/+8px70u6cf1rymH6+9px+DvKceVL+nICD/gAACAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEC/vxQ/w7u7QMS7/0DEu/9AxLv/QMS837yn
|
|
||||||
H+y8px/3u6Yf+bymH++8px7kvacf172nH8C8px6jvqcffb2qH1G3piEuuacaHb+fIBC/vwAEAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEC/vxQ/w7u7QMS7/0DE
|
|
||||||
u/9AxLv/QMS83wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
@ -376,7 +129,159 @@
|
|||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA6JAAAIBYAAHdlBQBcTAMAeGYGAIVzBwB6aQUA//0XAFlK
|
||||||
|
AQBRPwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAADAAAARRYDADkRBAA1DQAAURoIAP+rVQAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADEkAABjUgMAGw8AAKOODAD//xMANy0NBVtP
|
||||||
|
Dgb//wAA1L8VAJyKIQCqlx8A794+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAA8DAQA/7uNALhNOQDLUDoAqkMzAI89KwAAAAAAZScTAEweEgAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGRSBABBMwMA//8bAJJ/
|
||||||
|
Cii7pAx80LcNrNe+C7HSug+Owq4TP2JZMAOvnigAtaUqAFdVAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4CgQA/XFPAJI9KzSsQy9Zoj8wMHg4LArcXEAAnEcwAMNY
|
||||||
|
PwBfKhUAQygNAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANysAAAAA
|
||||||
|
AAD/6xEApY8LQ9K2CtTpywX/8NID//HUAv/v0wT/5c0L69O8HG17cz8DqZorADwmAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBCwAA/5JlALdGLoTdUTT+3lA26M9U
|
||||||
|
NrG4UjVUiEIvC71fPAAAAAAAfEQqAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAOzIAAKGICQCUfAob1bcLyfHPBP/x0gH/8tMB//PTAf/y1gD/8dYB/+jPDuvMuyg/3MslAP//
|
||||||
|
/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBDgAA/39YAL1H
|
||||||
|
L4PoUzT/7lU0/+xWNP/jVjf2zlc5pKZaOSXXZz8AAAUWAHtCLwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAOi4AANrADwCzmwtb58kG+/LSAf/y0gH/8tQB//LVAf/y1gH/8NcA/+7V
|
||||||
|
Bv/dyCCM//8AAJiKKQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAA9DAIA/31TAMBIMIPnUzT/7VQ1/+5VNP/uVzP/6Vg0/9VdOca2YD4sz2hDAP+QYQBcGw4AAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMSgAAP//FAC+pQt+7M4E//LRAP/z0gH/8tQB//LV
|
||||||
|
AP/z1wD/89cA//HYA//l0B2leXOHA6eYMQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAA6CgEA/3tRAMBIMYLnUzX/7lU0/+5VM//uVjP/7VY1/+lZM//TYDy5sGNHF7tl
|
||||||
|
RwCuZEcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANCYAAP//FQDCqAuA7c8E//LS
|
||||||
|
AP/z0gH/89QB//LVAP/z1wD/9NcB//LYA//l0Rume3J1A6WULAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2CgAA/3NLAMFJMIDnUzT/7lUz/+5WM//tVjT/7Vc1/+xY
|
||||||
|
Mv/lXDX+zmVDfgArtQCZVz8AVEIOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOyoAAP//
|
||||||
|
EwDGqgx97c4E//LSAf/y0gH/8tQB//LVAP/z1wD/9NgA//PYAv/l0BqnfnNtA6SSKQAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsBgAA/2xFAMNLMXznVDP/7VQz/+5V
|
||||||
|
NP/tVjT/7lgz/+5YM//uWTP/22I82sNzUyLIclIAj1M5AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAOjAAAP//EADFqwt87M4E//HSAf/x0wH/8dQA//LUAP/y1wD/89gA//LZAv/l0RqngHRsBKOT
|
||||||
|
KQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaAAAA/2hDAMRM
|
||||||
|
MXroVTT/7lU0/+5VNP/uVjT/7lg0/+9ZNP/vWTP/5101/c5sSGLiakMAXjkaAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAASDAAAP//DwDGrAt77c8E//LTAf/y1AH/8tQB//LVAP/z1wD/89gA//PZ
|
||||||
|
Av/m0RungHRwA6WUKgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAHAAAA/2RAAMNMMXnnVDP/7lU0/+5VNP/uVzT/7lk0/+5YM//vWTP/6Vwz/9VmQ5cAoMMBi1A0AAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQTYAAP//EADHrAx9788D//PUAf/01AH/89UB//HW
|
||||||
|
AP/z2AH/9NgB//TaA//o1B2niH18A6qaLwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAA/mM+AMRMMXnmVTP/7VYz/+5WNP/vWDT/7lkz/+5YM//vWDP/61sz/9dk
|
||||||
|
QLSbdl8HrWlMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVEABAP/8DgDKrgx77tAD//LU
|
||||||
|
Af/z1QH/89YB//PXAP/02AH/9NkB//TaA//o1B2nin1+A6uaMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANAAAA/2RAAMRLMXnnVDT/7lY0/+1YM//uWDP/7lkz/+1Y
|
||||||
|
M//tWDP/7Vsz/9tlQbyld18JsWxQAGdSAgB9agUAh3MMAIZxDACLdg4AkXsQAI95EACHdQ4AZFgAAP/o
|
||||||
|
DwDIrQx17c8E//LUAP/y1AH/89cB//PXAP/02AH/9NkB//PaA//o0xylg3aCA6yaMAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAA/2RAAMZMMXjoVTT/7lc0/+9Y
|
||||||
|
NP/uWDP/7lkz/+5YMv/uWDP/5Vw0/9BjP6uSZ3gFy6wbAP/8EwAAABoAHhMgA0U2GwRURR4FXVAgBVdL
|
||||||
|
IAUAADQB6dIaAOfMEgDCqgxp680F//PVAP/z1QH/89cB//PXAf/z2AD/9NkB//PaAv/o0xymhXp9A6qZ
|
||||||
|
MAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/WU+AMdO
|
||||||
|
MXXoVzT/7lY0/+5XNP/tWDP/7Vkz/+dZNP7YWDfRw1Y0daJQMymjjBQevaMTSsywD3jXug2V2r4MpNu+
|
||||||
|
DKrcvgys3sAMrN7ADazZwA+azboXSwAAmgG4pBBF58sH9fLWAv/01gH/89cB//PYAP/02QD/9NkA//Pb
|
||||||
|
Av/p1RymhoKFA62fMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAA/GU/AMhOMnXoVjX/7lY0/+5XNP/qWTP/2Foz6MNUNX6VSyslqZYNQc2zC5bewQnX58oH9uzO
|
||||||
|
BP/u0QP/8NIC//LSAv/x0QL/8tEC//PSAv/x0QT/6c4K8M6+FmafixQg4ccK2/TWAv/y1wD/89gA//PX
|
||||||
|
AP/12gD/9NkA//PaAv/p1hukgX6MA66hLwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAA92E+AMdNMnToVjX/71gy/+daM//PWDPMp0stRJ+KDC/KsQqe4cMJ7+3P
|
||||||
|
A//y0QL/89IB//PRAf/x0wH/8dMA//LUAP/y0wH/8dIA//HTAP/y0wD/8tUB/+HKEtOdkygf0rwOnfHU
|
||||||
|
BP/01gD/89gB//PXAP/12gD/9NoA//PaAv/p1hqjfHuhArOmMQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA92FAAMVMMnTnVjX/61kz/9FZNcKdRy4suaEOU9q+
|
||||||
|
C9rszwP/89IB//PSAP/z0gD/9NMA//PSAf/y0QH/89IB//LTAf/y1AH/89MB//LTAf/y1AH/89QB/+bO
|
||||||
|
EO67sC00vacSPeXMCe311wH/9NkA//TYAf/12QH/9NoA//PbA//p1Ruhe3a/ArioOQAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+mNAAMNLMXXlVzP/01g1z6BO
|
||||||
|
MC+7pg1i48MJ7PHTAv/z0wH/8tMB//PSAP/z0wD/9NMB//PSAP/z0gH/9NMB//PUAf/y1AH/8tQB//LU
|
||||||
|
Af/z1QL/89YB/+jQD/K/tCw8AAAAAc65DpDu1AT/9NgB//TYAf/12gH/9dsA//TcA//p1RyheXHNArim
|
||||||
|
OwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+2NBAMJL
|
||||||
|
MXjWVjbusE00SrehDFbhwwnt8NMC//LTAv/z1AH/8tMB//PSAP/00wD/9NMA//PTAf/00wH/9NMB//PU
|
||||||
|
Af/z1QH/8tQA//LUAP/01QH/9dYB/+rQD/HBtC07xLQkAKWQEBzXwwy58NYE//TZAP/22wD/9twB//Tc
|
||||||
|
A//q1R2ifnemArKiNwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAA42BFALdLNHK9TTiKoYkPNNy/Ctzx0gH/8tMA//PVAf/y1QH/8tMB//LTAf/z0wD/9NMB//PT
|
||||||
|
Af/y0wH/8tMB//PTAf/z1AH/89UB//PVAP/01gH/9dcB/+XPEea7rC8rwbEvANnDEgCxnBIl28YNs/DW
|
||||||
|
Bf/22wL/9dwC//TdA//p1x+je4KlArClOQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAOAAAA13NYAJJENkONSiwrzbIKoPDPBP/y0wD/8tQB//PVAP/y1AD/8dMA//HT
|
||||||
|
AP/y0wD/9NMB//TTAf/z0wH/8tMB//TTAf/01AD/89UA//TUAf/z1gH/8dYG/9bGGKiMhzQKopcoAP//
|
||||||
|
yQDRvRIApZcTF868D4Tjzwrj8dkG//XdBP/n2Bulc3qcA62iNQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASAAAAVxwRACQAQQWslQ1F4sYG7/PTAf/x0wH/8tQB//PV
|
||||||
|
AP/y1AD/8dMA//HTAP/z0wH/89QB//LVAv/v0wP/7dEE++zRBvnt0Af68NEG+vDRBvrq0Avx3cgYs7+s
|
||||||
|
JCnaxigArZYaALShFAC0nhYAtqUUAAAAAAG2pw8u0MAPeuHKErvayyaGc32FAqKZNgAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPAAAAcFgHAAAAAAPKsA6a7tAE//PU
|
||||||
|
Af/y1AH/89UB//PVAP/y1QD/9NMB//PUAf/01QH/79UF/uTOC87bxBJ/0rkQVs22EVHMthNSzLcPUsy3
|
||||||
|
ElHGshw+qpwnENzHJACGcxYDq5UbHLKeFSKynRcitKEWIKydFhgzNSgD//8WAIV7Gwujni0OlZp5AI2I
|
||||||
|
OgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABqYwAAmIMNAJN+
|
||||||
|
Dh/avQvZ89MC//HTAf/y1AH/9NYB//PVAP/01QD/9NUB//XVAf/u0wf32sUUi7+uHBv//wAA5ssPAOHJ
|
||||||
|
EgDiyRUA4swQAOLKFADTvh4AtaUjAJmHDwCYhxMV1r8Su+XOCeLlzQvg5c8I3+LPCtTcyBGpz7sZS31+
|
||||||
|
LQSupSgA/9cAAJCKOQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AABIQgAAwacPALKaDkPnyAb09dMB//HTAf/y0wD/89UA//PWAP/01QH/89UB/+/VBv/ZyBuWhYUqCMS1
|
||||||
|
GgBjTgoAnIkTAGBRAwBcUgQAW1EDAFlOAwBZSgQAQkEIAKKPDgCfjhIa48oL2fXcAf/12wH/9NoB//Pb
|
||||||
|
Af/y3QP/6tYK8NLDHHF6ckwDrKAuAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAC3ngEA5cYSAMGoDmbrzAb+89QB//LUAP/z1AD/9NUA//XWAf/01QH/9NYB/+bQ
|
||||||
|
D+TBtikux70kAMG7HAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKKPDgCgjREa48oL1/Tc
|
||||||
|
Af/12wH/89oB//PaAP/13AH/89wC/+rUEenSwi053swrAPDlWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+cRAMyyDnftzwT/8tQA//LUAP/01QD/9dUB//XW
|
||||||
|
Af/11gH/89UC/+PMGL+tpkALs6gwAHhgGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKOR
|
||||||
|
DgChkBEZ5MwK1/XbAf/02wH/89oA//PaAP/02wH/9dwB//LbB//f0CCD//8AAKaaNgAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQDAAA//0OAM+2Dn3v0QT/8tQA//PV
|
||||||
|
AP/z1QD/9NUA//TWAf/01QH/8tQD/+DKGreilkwIr6AyAH4EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAKOTEAChkRQY48wM1fXcAf/02wH/89oA//PaAP/02wH/9NwC//TcA//o1xygYGzxArir
|
||||||
|
QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaEgAA//8PAM+2
|
||||||
|
Dn7v0gT/8tQA//PVAP/z1gD/9NYA//TXAf/01gH/89UC/+DKG7mel0cJq54xAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAJqJEACKexkL3coPuvbdAv/22wL/9doB//TbAf/03AH/9N0B//Td
|
||||||
|
A//r1x6hgIDVAr2tQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAYDQAA//8PAM+1Dn3v0gT/89UA//PWAP/z1gD/9NcA//XYAf/01wD/89UC/+DLGbuYmEYJpp4wAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHdlBgD//w4A0LwRa+/XB/zz3QH/9twA//bc
|
||||||
|
AP/13QH/9d0B//XeA//r1xyjjYKtArmoOwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAFAAAA//kPANG3Dnvv0gT/89UA//TXAP/01wD/9NcA//TXAP/11wD/89YC/+HM
|
||||||
|
G7udnEsJq6E0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIVzCgCznxYApZAXD9jE
|
||||||
|
Epru2Af79NsD//XdAP/13QD/9t0B//XeA//r1x6lj4OZA7WkOgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+0PAM+3Dnjw0wT/9NYA//TXAP/z2AD/9NcA//XY
|
||||||
|
Af/12AD/8tYD/9/KHLiUk0wIpJoyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKms
|
||||||
|
AwDPtxsAxbIYAKOYFw7RvxRl4MsOwufUCPDw2gT/9t4C//XfA//p2BulgX2MA66hMgAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADKtgcA4ccVAMWwEVrs0Af79NcA//TY
|
||||||
|
Af/02AL/9NcA//XYAf/01wH/89YG/9zLI5cAAJ0BjYUlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAABdUgAAzr8bALOkFgD//xgAnpAVEL+uEz/RvRCD38sMxu3VCvPj0iCle31oBKGX
|
||||||
|
KwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAsZ8SAKmW
|
||||||
|
ExzfxQzN9dYD//TZAf/02AH/9NgB//XYAf/z2AH/6dMS79LHNUXk2DAA//+CAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASEwAAId2CgBfSQQAppcSAMu7FAD//w8AlYwPEsW0
|
||||||
|
FD3ItzBAi3xSApODLwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AABPOgAAKRgAAP//HAC/qhRL48oK3vLWA//12AL/9NgC//PYBP/s0w/y1sQleoyVWASwrD0AcmkbAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABWRwAAYUwBAIiA
|
||||||
|
CwBtYgYAn5QMANC/EwDl1DAAj4FdAKKSLgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAgGwHAH9vBwD///8Au6gRM9a/D5DiyA3B4csLxdnHEaTOuSFOmYctBr2x
|
||||||
|
MwDAuz0AUygAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAABfTgAANCQAAAAAAABNPw4AYlMmAFA/GwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJCACABvYgUAzbgSAAAANQGbiRgNnZAYD1ZP
|
||||||
|
GwTs2SQArZwpALyqKgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpLAAA8KwAAuqYXAIx5
|
||||||
|
DAClkRAApZUSAJKFDQAAAAAAbVgHAEw4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///////8AAP///////wAA/////AD/
|
||||||
|
AAD8B//4AH8AAPwB//gAPwAA/AB/8AA/AAD8AH/wAD8AAPwAP/AAPwAA/AAf8AA/AAD8AB/wAD8AAPwA
|
||||||
|
D/AAPwAA/AAP8AA/AAD8AA/wAD8AAPwAD/AAPwAA/AAP8AA/AAD8AAAAAD8AAPwAAAAAPwAA/AAAAAA/
|
||||||
|
AAD8AAAAAD8AAPwAAAAAPwAA/AAAAAA/AAD8AAAAAD8AAPwAAAAAPwAA/AAAAAA/AAD8AAAAAD8AAPwA
|
||||||
|
AAAAPwAA/AAAAAA/AAD8AAAAAD8AAPwAAAAAPwAA/AAD+AA/AAD8AAf4AD8AAPwAB/gAPwAA/AAP+AA/
|
||||||
|
AAD8AA/4AD8AAPwAD/gAPwAA/AAP+AA/AAD8AA/8AD8AAPwAD/4APwAA/AAP/4A/AAD+AA//8D8AAP4A
|
||||||
|
H////wAA/wA/////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////
|
||||||
|
AAA=
|
||||||
</value>
|
</value>
|
||||||
</data>
|
</data>
|
||||||
</root>
|
</root>
|
BIN
DHSoftware/assets/logo.ico
Normal file
BIN
DHSoftware/assets/logo.ico
Normal file
Binary file not shown.
After Width: | Height: | Size: 9.4 KiB |
BIN
DHSoftware/assets/screenshots/favicon.ico
Normal file
BIN
DHSoftware/assets/screenshots/favicon.ico
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.3 KiB |
Binary file not shown.
Reference in New Issue
Block a user