#0022: MC软件新增速度监控;中间件新增调试模式
This commit is contained in:
@@ -117,7 +117,7 @@ HSI_Motion::HSI_Motion()
|
||||
g_IsClose = false; //用于DoEvents()的退出,而不异常
|
||||
setLightFlag = false;
|
||||
m_bISUseMoreLights = 0; //更多灯光
|
||||
m_Jog_Auto_Focus = 1; //变焦使用的速度
|
||||
m_Jog_Auto_Focus = 1.0; //变焦使用的速度,默认为1.0mm/s, 仅限Z轴
|
||||
m_StartInputPort = 1; //外部输入按钮启动程序
|
||||
iaxisNum = 0;
|
||||
iScanMotionType = 0;
|
||||
@@ -245,13 +245,19 @@ HSI_Motion::HSI_Motion()
|
||||
g_pLogger->SendAndFlushWithTime(L"\n");
|
||||
g_pLogger->SendAndFlushWithTime(L"==========================================================\n");
|
||||
|
||||
// CLMS 授权验证
|
||||
if (!CheckLicense())
|
||||
//读取配置文件
|
||||
IS_DEBUG = GetPrivateProfileInt(L"EF3", L"ACS_PORT", 0, m_AppPath + _T("\\Config\\EF3_Config.ini"));
|
||||
g_pLogger->SendAndFlushWithTime(L"ACS_PORT = %d\n", IS_DEBUG);
|
||||
if (IS_DEBUG != 500) //非调试模式
|
||||
{
|
||||
//弹窗提示
|
||||
AfxMessageBox(_T("[Check License] Acs-Metus Middleware No Authorization Found, Please Contact the Corresponding Sales"), MB_ICONWARNING | MB_OK);
|
||||
g_pLogger->SendAndFlushWithTime(L"[Check License] Acs-Metus Middleware No Authorization Found, Please Contact the Corresponding Sales\n");
|
||||
return;
|
||||
// CLMS 授权验证
|
||||
if (!CheckLicense())
|
||||
{
|
||||
//弹窗提示
|
||||
AfxMessageBox(_T("[Check License] Acs-Metus Middleware No Authorization Found, Please Contact the Corresponding Sales"), MB_ICONWARNING | MB_OK);
|
||||
g_pLogger->SendAndFlushWithTime(L"[Check License] Acs-Metus Middleware No Authorization Found, Please Contact the Corresponding Sales\n");
|
||||
return;
|
||||
}
|
||||
}
|
||||
g_pLogger->SendAndFlushWithTime(L"[Check License] Acs Middleware Check License OK\n");
|
||||
|
||||
@@ -420,12 +426,15 @@ HSI_STATUS HSI_Motion::Startup(HWND _hWnd, bool _bOfflineOnly)
|
||||
hWnd = _hWnd;
|
||||
bOfflineOnly = _bOfflineOnly;
|
||||
|
||||
// CLMS 授权验证
|
||||
if (!CheckLicense())
|
||||
if (IS_DEBUG != 500)
|
||||
{
|
||||
// 授权验证失败
|
||||
g_pLogger->SendAndFlushWithTime(L"[Check License] Acs-Metus Middleware No Authorization Found, Please Contact the Corresponding Sales\n");
|
||||
return HSI_STATUS_FAILED; // 返回适当的错误状态
|
||||
// CLMS 授权验证
|
||||
if (!CheckLicense())
|
||||
{
|
||||
// 授权验证失败
|
||||
g_pLogger->SendAndFlushWithTime(L"[Check License] Acs-Metus Middleware No Authorization Found, Please Contact the Corresponding Sales\n");
|
||||
return HSI_STATUS_FAILED; // 返回适当的错误状态
|
||||
}
|
||||
}
|
||||
|
||||
if (!bOfflineOnly)
|
||||
@@ -4149,8 +4158,7 @@ HSI_STATUS HSI_Motion::Load_EF3_Motion_Inifile(CString GoogolIniFile)
|
||||
csAppPath);
|
||||
}
|
||||
}
|
||||
m_Jog_Auto_Focus = m_JogDriveSpeed[3][4]; //3轴4档位速度
|
||||
g_pLogger->SendAndFlushWithTime(L"[Load_EF3_Motion_Inifile] m_Jog_Auto_Focus: %d\n", m_Jog_Auto_Focus); //记录自动对焦速度
|
||||
|
||||
m_Home_Machine_Axis[1] = GetPrivateProfileInt(L"HOME", L"HOME_MACHINE_AXIS_1", 1, csAppPath);
|
||||
m_Home_Machine_Axis[2] = GetPrivateProfileInt(L"HOME", L"HOME_MACHINE_AXIS_2", 1, csAppPath);
|
||||
m_Home_Machine_Axis[3] = GetPrivateProfileInt(L"HOME", L"HOME_MACHINE_AXIS_3", 1, csAppPath);
|
||||
@@ -7930,19 +7938,22 @@ HSI_STATUS HSI_Motion::SetSpeedXyz(double Speed)
|
||||
|
||||
HSI_STATUS HSI_Motion::GetFocusSpeed(double& Speed)
|
||||
{
|
||||
g_pLogger->SendAndFlushWithTime(L"[GetFocusSpeed] In\n");
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
if (1 == m_iSpeedType)
|
||||
{
|
||||
//Speed = m_JogDriveSpeed[3][4] * (m_Resolution[3] * 50);
|
||||
Speed = m_JogDriveSpeed[3][4];
|
||||
}
|
||||
else
|
||||
{
|
||||
Speed = m_JogDriveSpeed[3][4];
|
||||
}
|
||||
g_pLogger->SendAndFlushWithTime(L"[GetFocusSpeed] Speed = %d, m_Jog_Auto_Focus = %d\n", Speed, m_Jog_Auto_Focus);
|
||||
g_pLogger->SendAndFlushWithTime(L"[GetFocusSpeed] Out\n");
|
||||
|
||||
// 方式1
|
||||
//Speed = m_Jog_Auto_Focus;
|
||||
g_pLogger->SendAndFlushWithTime(L"[GetFocusSpeed] m_Jog_Auto_Focus = %f\n", m_Jog_Auto_Focus);
|
||||
|
||||
// 方式2,从底层查询
|
||||
// 正常这里要读取z轴的速度,但是这里直接返回m_Jog_Auto_Focus
|
||||
double getMotionParam[5] = { 0 };
|
||||
GetSingleAxisParam(ACSAxisNumbers[2], getMotionParam); //获取单轴运动参数
|
||||
g_pLogger->SendAndFlushWithTime(
|
||||
L"[GetFocusSpeed] Axis= %d, Velocity = %.2f, Acceleration= %.2f, Deceleration= %.2f, KillDeceleration= %.2f, Jerk= %.2f\n",
|
||||
ACSAxisNumbers[2], getMotionParam[0], getMotionParam[1], getMotionParam[2], getMotionParam[3], getMotionParam[4]);
|
||||
|
||||
Speed = getMotionParam[0]; //从getMotionParam[0]中获取速度
|
||||
g_pLogger->SendAndFlushWithTime(L"[GetFocusSpeed] AxisNum = %d, Speed=%.2f\n", ACSAxisNumbers[2], Speed);
|
||||
return rStatus;
|
||||
}
|
||||
|
||||
@@ -7968,31 +7979,25 @@ HSI_STATUS HSI_Motion::GetFocusSpeed(double& Speed)
|
||||
HSI_STATUS HSI_Motion::SetFocusSpeed(double Speed)
|
||||
{
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] In\n");
|
||||
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] In \n");
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] Speed = %f\n", Speed);
|
||||
if (Speed >= -1 && Speed <= 0)
|
||||
{
|
||||
m_JogDriveSpeed[3][4] = static_cast<int>(fabs(Speed * m_Jog_Auto_Focus));
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] m_Jog_SpeedZ[3][4] = %d\n", m_JogDriveSpeed[3][4]);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (1 == m_iSpeedType)
|
||||
{
|
||||
//m_JogDriveSpeed[3][4] = Speed / (m_Resolution[3] * 50);
|
||||
m_JogDriveSpeed[3][4] = Speed;
|
||||
m_Jog_Auto_Focus = Speed;
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] m_Jog_Auto_Focus= %f\n", m_Jog_Auto_Focus);
|
||||
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] m_iSpeedType=1, m_Jog_SpeedZ[3][4] = %d\n", m_JogDriveSpeed[3][4]);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_JogDriveSpeed[3][4] = Speed;
|
||||
// 正常这里要设置z轴的速度
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] 设置Z轴定位速度 %f\n", m_Jog_Auto_Focus);
|
||||
double Z_SetmotionParam[5] = {
|
||||
m_Jog_Auto_Focus, //速度
|
||||
m_Jog_Auto_Focus * 10 ,//加速度
|
||||
m_Jog_Auto_Focus * 10, //减速度
|
||||
m_Jog_Auto_Focus * 100,//加加速度
|
||||
m_Jog_Auto_Focus * 100 //减减速度
|
||||
};
|
||||
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] m_JogDriveSpeed[3][4] = %d\n", m_JogDriveSpeed[3][4]);
|
||||
}
|
||||
}
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] Out\n");
|
||||
SetSingleAxisMotionParams(ACSAxisNumbers[2], Z_SetmotionParam);//设置Z轴定位速度
|
||||
m_SetPotion_DriveSpeed[ACSAxisNumbers[2]] = Z_SetmotionParam[0]; //记录Z轴速度
|
||||
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] Out \n");
|
||||
return rStatus;
|
||||
}
|
||||
|
||||
|
||||
@@ -420,7 +420,7 @@ public:
|
||||
int m_JogDecLine[5][5];
|
||||
int m_JogAccCurve[5][5];
|
||||
int m_JogDecCurve[5][5];
|
||||
int m_Jog_Auto_Focus; //变焦使用的速度
|
||||
double m_Jog_Auto_Focus; //变焦使用的速度
|
||||
int m_LogIsOpen[5]; //是否打开记录,0为打开,非0为关闭
|
||||
|
||||
unsigned int m_precisionCount[5]; //回家误差脉冲个数
|
||||
@@ -579,6 +579,11 @@ public:
|
||||
|
||||
CPSerial m_SO7_Serial;
|
||||
DWORD m_WriteByte;
|
||||
|
||||
|
||||
int IS_DEBUG; //是否启用调试模式
|
||||
|
||||
|
||||
BOOL Send_Command(int com, const char* _SendData, DWORD _SendDataLength);
|
||||
BOOL Send_Command(int com, const char* _SendData, DWORD SendDataLength, int expectType);// 带期望返回值的发送命令
|
||||
BOOL Receive_Data();
|
||||
|
||||
@@ -12,5 +12,5 @@
|
||||
#define HSI_VERSION_REVNUM
|
||||
#define HSI_VERSION_BUILD_DATE _T(__DATE__ )
|
||||
#define HSI_VERSION_BUILD_TIME _T(__TIME__ )
|
||||
#define HSI_FILE_DESCRIPTION "2025.02.20 / 16:04 "
|
||||
#define HSI_FILE_CSDESCRIPTION _T("2025.02.20 / 16:04 ")
|
||||
#define HSI_FILE_DESCRIPTION "2025.03.03 / 15:05 "
|
||||
#define HSI_FILE_CSDESCRIPTION _T("2025.03.03 / 15:05 ")
|
||||
|
||||
Binary file not shown.
@@ -203,6 +203,12 @@
|
||||
<Compile Include="MainFrom.Designer.cs">
|
||||
<DependentUpon>MainFrom.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Motion\MonitorForm.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Motion\MonitorForm.Designer.cs">
|
||||
<DependentUpon>MonitorForm.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Motion\DemoShow.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
@@ -235,6 +241,9 @@
|
||||
<SubType>Designer</SubType>
|
||||
<LastGenOutput>MainFrom1.Designer.cs</LastGenOutput>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Motion\MonitorForm.resx">
|
||||
<DependentUpon>MonitorForm.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Motion\DemoShow.resx">
|
||||
<DependentUpon>DemoShow.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
@@ -308,6 +317,7 @@
|
||||
<None Include="Resources\home.png" />
|
||||
<None Include="Resources\etalon.png" />
|
||||
<None Include="Resources\start.png" />
|
||||
<None Include="Resources\speed.png" />
|
||||
<Content Include="SharpGL.ico" />
|
||||
<Content Include="SharpGL.png" />
|
||||
</ItemGroup>
|
||||
|
||||
Generated
+22
-1
@@ -62,6 +62,8 @@
|
||||
this.rtb_stop = new Telerik.WinControls.UI.RadButtonElement();
|
||||
this.radRibbonBarGroup9 = new Telerik.WinControls.UI.RadRibbonBarGroup();
|
||||
this.rtb_etalon = new Telerik.WinControls.UI.RadButtonElement();
|
||||
this.radRibbonBarGroup10 = new Telerik.WinControls.UI.RadRibbonBarGroup();
|
||||
this.rtb_monitor = new Telerik.WinControls.UI.RadButtonElement();
|
||||
this.ribbonTab2 = new Telerik.WinControls.UI.RibbonTab();
|
||||
this.radRibbonBarGroup2 = new Telerik.WinControls.UI.RadRibbonBarGroup();
|
||||
this.rtb_about = new Telerik.WinControls.UI.RadButtonElement();
|
||||
@@ -221,7 +223,8 @@
|
||||
this.radRibbonBarGroup6,
|
||||
this.radRibbonBarGroup8,
|
||||
this.radRibbonBarGroup7,
|
||||
this.radRibbonBarGroup9});
|
||||
this.radRibbonBarGroup9,
|
||||
this.radRibbonBarGroup10});
|
||||
this.ribbonTab1.Name = "ribbonTab1";
|
||||
this.ribbonTab1.Text = "常用";
|
||||
this.ribbonTab1.TextRenderingHint = System.Drawing.Text.TextRenderingHint.SystemDefault;
|
||||
@@ -450,6 +453,22 @@
|
||||
this.rtb_etalon.Text = "";
|
||||
this.rtb_etalon.Click += new System.EventHandler(this.rtb_etalon_Click);
|
||||
//
|
||||
// radRibbonBarGroup10
|
||||
//
|
||||
this.radRibbonBarGroup10.Items.AddRange(new Telerik.WinControls.RadItem[] {
|
||||
this.rtb_monitor});
|
||||
this.radRibbonBarGroup10.Name = "radRibbonBarGroup10";
|
||||
this.radRibbonBarGroup10.Text = "速度监控";
|
||||
//
|
||||
// rtb_monitor
|
||||
//
|
||||
this.rtb_monitor.AutoSize = false;
|
||||
this.rtb_monitor.Bounds = new System.Drawing.Rectangle(0, 0, 66, 75);
|
||||
this.rtb_monitor.Image = global::HexcalMC.Properties.Resources.speed;
|
||||
this.rtb_monitor.Name = "rtb_monitor";
|
||||
this.rtb_monitor.Text = "";
|
||||
this.rtb_monitor.Click += new System.EventHandler(this.rtb_monitor_Click);
|
||||
//
|
||||
// ribbonTab2
|
||||
//
|
||||
this.ribbonTab2.AutoEllipsis = false;
|
||||
@@ -1525,5 +1544,7 @@
|
||||
private Telerik.WinControls.UI.RadButtonElement rtb_etalon;
|
||||
private System.Windows.Forms.RadioButton rdoTCP;
|
||||
private System.Windows.Forms.RadioButton rdoSimu;
|
||||
private Telerik.WinControls.UI.RadRibbonBarGroup radRibbonBarGroup10;
|
||||
private Telerik.WinControls.UI.RadButtonElement rtb_monitor;
|
||||
}
|
||||
}
|
||||
|
||||
+29
-3
@@ -1542,11 +1542,37 @@ namespace HexcalMC
|
||||
}
|
||||
}
|
||||
|
||||
#endregion ACS平台相关
|
||||
private void rtb_monitor_Click(object sender, EventArgs e)
|
||||
{
|
||||
DebugDfn.AddLogText("监控界面");
|
||||
//判断通讯对象是否存在
|
||||
if (_acs == null || !_acs.IsConnected)
|
||||
{
|
||||
DebugDfn.AddLogText("未建立与运动平台通讯,请在主界面先建立通讯");
|
||||
|
||||
#region 菜单栏
|
||||
// 在合适的位置调用 MessageBox.Show() 方法
|
||||
MessageBox.Show(
|
||||
"未建立与运动平台通讯,请在主界面先建立通讯",
|
||||
"提示",
|
||||
MessageBoxButtons.OK,
|
||||
MessageBoxIcon.Information
|
||||
);
|
||||
|
||||
private void btn_motion_Click(object sender, EventArgs e)
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
MonitorForm monitorForm = new MonitorForm(this);
|
||||
monitorForm.Show();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#endregion ACS平台相关
|
||||
|
||||
#region 菜单栏
|
||||
|
||||
private void btn_motion_Click(object sender, EventArgs e)
|
||||
{
|
||||
//判断通讯对象是否存在
|
||||
if (_acs == null || !_acs.IsConnected)
|
||||
|
||||
Generated
+95
@@ -0,0 +1,95 @@
|
||||
namespace HexcalMC
|
||||
{
|
||||
partial class MonitorForm
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MonitorForm));
|
||||
this.formsPlot1 = new ScottPlot.FormsPlot();
|
||||
this.btn_etalon_import = new System.Windows.Forms.Button();
|
||||
this.button1 = new System.Windows.Forms.Button();
|
||||
this.dataTimer = new System.Windows.Forms.Timer(this.components);
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// formsPlot1
|
||||
//
|
||||
this.formsPlot1.Location = new System.Drawing.Point(134, 29);
|
||||
this.formsPlot1.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
|
||||
this.formsPlot1.Name = "formsPlot1";
|
||||
this.formsPlot1.Size = new System.Drawing.Size(863, 580);
|
||||
this.formsPlot1.TabIndex = 0;
|
||||
//
|
||||
// btn_etalon_import
|
||||
//
|
||||
this.btn_etalon_import.Location = new System.Drawing.Point(12, 92);
|
||||
this.btn_etalon_import.Name = "btn_etalon_import";
|
||||
this.btn_etalon_import.Size = new System.Drawing.Size(102, 30);
|
||||
this.btn_etalon_import.TabIndex = 44;
|
||||
this.btn_etalon_import.Text = "开始监控";
|
||||
this.btn_etalon_import.UseVisualStyleBackColor = true;
|
||||
this.btn_etalon_import.Click += new System.EventHandler(this.btn_etalon_import_Click);
|
||||
//
|
||||
// button1
|
||||
//
|
||||
this.button1.Location = new System.Drawing.Point(12, 156);
|
||||
this.button1.Name = "button1";
|
||||
this.button1.Size = new System.Drawing.Size(102, 30);
|
||||
this.button1.TabIndex = 45;
|
||||
this.button1.Text = "停止监控";
|
||||
this.button1.UseVisualStyleBackColor = true;
|
||||
this.button1.Click += new System.EventHandler(this.button1_Click);
|
||||
//
|
||||
// dataTimer
|
||||
//
|
||||
this.dataTimer.Interval = 500;
|
||||
this.dataTimer.Tick += new System.EventHandler(this.dataTimer_Tick);
|
||||
//
|
||||
// MonitorForm
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(1018, 620);
|
||||
this.Controls.Add(this.button1);
|
||||
this.Controls.Add(this.btn_etalon_import);
|
||||
this.Controls.Add(this.formsPlot1);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Name = "MonitorForm";
|
||||
this.Text = "状态监控";
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private ScottPlot.FormsPlot formsPlot1;
|
||||
private System.Windows.Forms.Button btn_etalon_import;
|
||||
private System.Windows.Forms.Button button1;
|
||||
private System.Windows.Forms.Timer dataTimer;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,120 @@
|
||||
using ACS.SPiiPlusNET;
|
||||
using HexcalMC.Base;
|
||||
using ScottPlot.Renderable;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Timers;
|
||||
using System.Windows.Forms;
|
||||
using System.Windows.Markup;
|
||||
using Telerik.WinControls.UI;
|
||||
using static ScottPlot.Generate;
|
||||
using static System.Windows.Forms.VisualStyles.VisualStyleElement.Rebar;
|
||||
|
||||
namespace HexcalMC
|
||||
{
|
||||
public partial class MonitorForm : System.Windows.Forms.Form
|
||||
{
|
||||
private readonly MainFrom mainFrom;
|
||||
private readonly Api _acs; //ACS控制器
|
||||
|
||||
private double[] dataX; // X轴数据(时间戳)
|
||||
private double[] dataY; // Y轴数据(动态值)
|
||||
private int dataLength = 200; // 显示的数据点数量:ml-citation{ref="4,5" data="citationList"}
|
||||
private Random rand = new Random();
|
||||
|
||||
public MonitorForm(MainFrom _mainFrom)
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
mainFrom = _mainFrom;
|
||||
this._acs = _mainFrom._acs;
|
||||
|
||||
this.MaximizeBox = false;
|
||||
this.MinimizeBox = false;
|
||||
|
||||
InitializePlot();
|
||||
}
|
||||
|
||||
// 初始化图表
|
||||
private void InitializePlot()
|
||||
{
|
||||
// 初始化数据数组
|
||||
dataX = new double[dataLength];
|
||||
dataY = new double[dataLength];
|
||||
|
||||
// 填充初始数据(示例为随机值)
|
||||
for (int i = 0; i < dataLength; i++)
|
||||
{
|
||||
dataX[i] = System.DateTime.Now.AddSeconds(-dataLength + i).ToOADate();
|
||||
dataY[i] = rand.NextDouble() * 100;
|
||||
}
|
||||
|
||||
// 绘制初始曲线
|
||||
formsPlot1.Plot.AddScatter(dataX, dataY);
|
||||
formsPlot1.Plot.XAxis.DateTimeFormat(true); // X轴显示为时间格式:ml-citation{ref="3" data="citationList"}
|
||||
formsPlot1.Plot.XLabel("时间");
|
||||
formsPlot1.Plot.YLabel("数值");
|
||||
formsPlot1.Plot.Title("Z轴速度-实时动态图");
|
||||
formsPlot1.Refresh();
|
||||
}
|
||||
|
||||
// 定时器事件:更新数据并刷新图表
|
||||
|
||||
|
||||
private void dataTimer_Tick(object sender, EventArgs e)
|
||||
{
|
||||
// 生成新数据(模拟实时数据)
|
||||
//double newValue = rand.NextDouble() * 100;
|
||||
double newValue = GetSpeed(8);
|
||||
DebugDfn.AddLogText("newValue:" + newValue);
|
||||
|
||||
// 数据滚动更新:移除旧数据,添加新数据:ml-citation{ref="4,5" data="citationList"}
|
||||
Array.Copy(dataY, 1, dataY, 0, dataY.Length - 1);
|
||||
dataY[dataY.Length - 1] = newValue;
|
||||
|
||||
// 更新时间戳
|
||||
Array.Copy(dataX, 1, dataX, 0, dataX.Length - 1);
|
||||
dataX[dataX.Length - 1] = System.DateTime.Now.ToOADate();
|
||||
|
||||
// 在UI线程中更新图表
|
||||
formsPlot1.Invoke((MethodInvoker)delegate
|
||||
{
|
||||
formsPlot1.Plot.Clear();
|
||||
formsPlot1.Plot.AddScatter(dataX, dataY);
|
||||
formsPlot1.Refresh();
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
private double GetSpeed(int axis)
|
||||
{
|
||||
|
||||
//判断对象是否为空
|
||||
if (_acs == null)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
// 获取当前速度
|
||||
|
||||
return _acs.GetRVelocity((ACS.SPiiPlusNET.Axis)axis);
|
||||
}
|
||||
|
||||
private void btn_etalon_import_Click(object sender, EventArgs e)
|
||||
{
|
||||
//启动定时器刷新
|
||||
dataTimer.Start();
|
||||
}
|
||||
|
||||
private void button1_Click(object sender, EventArgs e)
|
||||
{
|
||||
//停止定时器刷新
|
||||
dataTimer.Stop();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,203 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="dataTimer.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>25</value>
|
||||
</metadata>
|
||||
<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">
|
||||
<value>
|
||||
AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AACt5tMNidzBKYTbviZ92LoOedi5AgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAzO/jAbfp2C6J3MGShNu+h3zYujF52LkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAACS3sYvgtq+anrYuquB2r22ftm7z4DZvKuL3MJWzvDkBM7w5AEAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAbtSzA3nXuWh82Lqnedi5rI7dxGaB2r3Hfdi734DZvbuf4sx4jt3DNn7Z
|
||||
uxIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB01bYieNe4nXrYudR52LmsmODJIoPavqJ72Lrpedi5/H3Y
|
||||
u9Z92LqEfdi6TYjbwCaX4MgIl+DIAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIfbwHp+2bvQedi55XnYuawAAAAAf9m8XXzY
|
||||
urR52Ln/edi5/3nYuf982LrZgtm9mJfgyCCX4MgGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIbbvweG278aftm733vYufh52Lnledi5rAAA
|
||||
AACN3MITiNvAZ3rYueh52Ln/edi5/3nYuft62Ln0ftm744Tavo6N3cNDld/HCgAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAA2cuMB9fIhRXTwnUw08J1MNPCdTDTwnUw08J1MNPCdTDTwnUwssiKQI/PonCC0aXzgdCl/oLQ
|
||||
pOmGz6O608J1MLzLkDWp0J5tktKoyYDQpf+A0KX/gNCl/4DQpf+B0aX8hNGn1IrSqKeRz59yoLhlKKC4
|
||||
ZQUAAAAAAAAAAAAAAADXyIYT18mHNNXFfW7Tw3h308J2etPCdXvTwnV708J1e9LBc3vFv3GNnrxvwZK/
|
||||
dvuRv3b/lMB58ZvBfdLTwnV708J1e8bFgJSuy5LDk8J+/5HAeP+Rv3b/kb92/5G/dv+Rv3b/kr5085e7
|
||||
bMylsFBarKg5CwAAAAAAAAAAAAAAANbGfyrXx4Js3tGbw9fIhezUxHr608J1/9PCdf/TwnX/0L5s/8qy
|
||||
Tv+7lwv/upYI/7qWCP+8mxb/w6Y1/9PCdf/TwnX/08J1/9HAcP/Coyv/vJkQ/7qWCP+6lgj/upYI/7qW
|
||||
CP+6lgj/upYI7bqWCJ66lggUAAAAAAAAAAAAAAAA08N4KtTDeG7YyojW5dmwWeHUo3TZyom71MR6/dPC
|
||||
df/Jsk7/wKIn/7qWCP+6lgj/upYI/72bFv/DpjX/08J1/9PCdf/TwnX/0sFz/824X/+/nyD/upYK/7qW
|
||||
CP+6lgj/upYI/7qWCP+6lgjtupYInrqWCBQAAAAAAAAAAAAAAADTwnUq08J2cdXFfe3g1KJu4NSiTtrL
|
||||
jljay42RzMN84sKtQ/e8mhX/upYI/7qWCP+7lwn/vZsW/8OmNf/Twnb/08J2/9PCdf/SwXX/0b9u/8Sp
|
||||
OP++nBn/upYI/7uXCf+7lwn/u5cJ/7qWCO26lgieupYIFAAAAAAAAAAAAAAAANPCdSrTwnVz08J2/9rL
|
||||
jaXd0JlL2Nu2DdjVqC67yY3Ls7FS8rGeIf+3mRH/upYJ/7qWCP+9mxb/w6Y1/9PCdv/Twnb/08J2/9PC
|
||||
df/TwnX/yrNS/8KkLP+6lgr/u5cJ/7uXCf+7lwn/upYI7bqWCJ66lggUAAAAAAAAAAAAAAAA08J1KtPC
|
||||
dXPTwnb/1sZ/99/SnYje374cuunaHonbwdiE0an6j8KB/6qnOf+5lwv/upYI/72bFv/DpjX/08J2/9PC
|
||||
dv/Twnb/08J2/9PCdv/SwHH/yK9I/7yaE/+7lwn/u5cJ/7uXCf+6lgjtupYInrqWCBQAAAAAAAAAAAAA
|
||||
AADTwnUq08J1c9PCdv/Twnb+18iGw8/Sn4mZ4MmNftm773vWtv591LD/gNCk/5O9dP+nqT3/t6Al/8Om
|
||||
Nf/Twnb/08J2/9PCdv/Twnb/08J2/9LBdP/OuWD/xqs+/7qWCP+6lgj/u5cJ/7qWCO26lgieupYIFAAA
|
||||
AAAAAAAAAAAAANPCdSrTwnVz08J2/9PCdf/UxHvnyMmLzovZudB72Ln5edi5/3nYuf952Ln/gs6g/4/B
|
||||
fv+fuGb7s7Ra9NTDeP7Twnb/08J1/9PCdv/Twnb/08J1/9G+bf/Mtlj/vZsV/7qXCv+6lgj/upYI7bqW
|
||||
CJ66lggUAAAAAAAAAAAAAAAA08J1KtPCdXPTwnb/08J1/9G/bv/Dv3L/iM2d/nvWtv952Ln/eti6/3rY
|
||||
uv952Ln/eta3/4XRp/WdxYjf1cV73NPDd+zTwnX408J1/9PCdf/TwnX/08J1/9C+a//Coyv/u5gO/7qW
|
||||
CP+6lgjtupYInrqWCBQAAAAAAAAAAAAAAADTwnUq08J1c9PCdv/TwnX/y7RT/7ynN/+ir07/ftKr/3nY
|
||||
uf962Lr/eti6/3rYuv962Lr/edi55XnYuazWxoEp1MR8idPDeM/TwnX908J1/9PCdf/TwnX/0sBy/865
|
||||
YP++nRr/u5cJ/7qWCO26lgieupYIFAAAAAAAAAAAAAAAANPCdSrTwnVz08J1/8+7Zf/EqTn/upoS/7Wb
|
||||
Fv+Lxov/ftOs/3nYuf962Lr/eti6/3rYuv952Lnledi5rNbGgQjUxHwa1MR7O9XFfm3VxX3f08J399PC
|
||||
df/SwXX/0sBx/8WpOf++nRr/upYI7bqWCJ66lggUAAAAAAAAAAAAAAAA08J1KtPCdHPTwnT/yLBK/8Ch
|
||||
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
|
||||
f//wAH///AB///+Af///wH///+B////4f/8=
|
||||
</value>
|
||||
</data>
|
||||
</root>
|
||||
+10
@@ -210,6 +210,16 @@ namespace HexcalMC.Properties {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap speed {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("speed", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
|
||||
/// </summary>
|
||||
|
||||
@@ -118,6 +118,9 @@
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="stop" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\stop.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="about" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\about.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
@@ -130,11 +133,11 @@
|
||||
<data name="On" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\On.bmp;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="HexagonNew" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\HexagonNew.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
<data name="demo_show" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\demo_show.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="quick_location_64" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\quick_location_64.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
<data name="start" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\start.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="mothion_64" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\mothion_64.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
@@ -142,9 +145,6 @@
|
||||
<data name="Hexagon" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Hexagon.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="help" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\help.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="quick_location" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\quick_location.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
@@ -154,19 +154,22 @@
|
||||
<data name="demo_show_128" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\demo_show_128.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="Off" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\Off.bmp;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
<data name="HexagonNew" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\HexagonNew.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="stop" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\stop.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
<data name="quick_location_64" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\quick_location_64.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="home" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\home.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="demo_show" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\demo_show.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
<data name="help" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\help.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="start" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\start.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
<data name="Off" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Images\Off.bmp;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="speed" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\speed.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
</root>
|
||||
@@ -21,7 +21,7 @@
|
||||
<dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
|
||||
</dsig:Transforms>
|
||||
<dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
|
||||
<dsig:DigestValue>o9GBKbn6bHl5Tbw9WSRdf0fjMgTcBKZwOi2zbjSGZL8=</dsig:DigestValue>
|
||||
<dsig:DigestValue>kw+hFfwnop75FYiMm+CkPl/Ui8EpkT8BuDrRnaok1W0=</dsig:DigestValue>
|
||||
</hash>
|
||||
</dependentAssembly>
|
||||
</dependency>
|
||||
|
||||
Binary file not shown.
@@ -55,14 +55,14 @@
|
||||
</dependentAssembly>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="HexcalMC.exe" size="512000">
|
||||
<dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="HexcalMC.exe" size="521216">
|
||||
<assemblyIdentity name="HexcalMC" version="0.0.3.0" language="neutral" processorArchitecture="amd64" />
|
||||
<hash>
|
||||
<dsig:Transforms>
|
||||
<dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
|
||||
</dsig:Transforms>
|
||||
<dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
|
||||
<dsig:DigestValue>f9lPz4efLHPXDVjq6WbZBlYqubnq7d52jUr55F7l9wk=</dsig:DigestValue>
|
||||
<dsig:DigestValue>5H0iiPDRd1YOihJPwyJD4tzIp7TNDn1eXdVNt91nqVg=</dsig:DigestValue>
|
||||
</hash>
|
||||
</dependentAssembly>
|
||||
</dependency>
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user