init: 导入项目到 meswork Gitea

This commit is contained in:
XingCheng3
2026-05-29 10:07:05 +08:00
commit ad9a4106fb
3582 changed files with 460312 additions and 0 deletions

View File

@@ -0,0 +1,17 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
namespace ModelBasic
{
public partial class SS
{
}
}

View File

@@ -0,0 +1,17 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
namespace ModelBasic
{
public partial class SS
{
}
}

View File

@@ -0,0 +1,17 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
namespace ModelBasic
{
public partial class SS
{
}
}

View File

@@ -0,0 +1,17 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
namespace ModelBasic
{
public partial class SS
{
}
}

View File

@@ -0,0 +1,17 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
namespace ModelBasic
{
public partial class SS
{
}
}

View File

@@ -0,0 +1,44 @@
using System;
/// <summary>
/// 承载类
/// 模型显示隐藏自转
/// 2021.1.15
/// </summary>
[Serializable]
public class ActPlayModelVisibleAndRotation
{
/// <summary>
/// CraftDeviceTypeCode
/// </summary>
public int CraftDeviceTypeCode { get; set; }
/// <summary>
/// CraftCade
/// </summary>
public string CraftCade { get; set; }
/// <summary>
/// CraftName
/// </summary>
public string CraftName { get; set; }
/// <summary>
/// StartTime
/// </summary>
public int StartTime { get; set; }
/// <summary>
/// KeepTime
/// </summary>
public int KeepTime { get; set; }
/// <summary>
/// StartFrame
/// </summary>
public int StartFrame { get; set; }
/// <summary>
/// OperationValue
/// </summary>
public string OperationValue { get; set; }
/// <summary>
/// ModelCode
/// </summary>
public string ModelCode { get; set; }
}

View File

@@ -0,0 +1,308 @@
using System;
using System.Collections.Generic;
using System.Data;
using System.IO;
using System.Text;
namespace BasicData
{
/// <summary>
/// 变量类型代码
/// 101 合格数据变量
/// 102 不合格数据变量
/// 103 机床报警变量
/// 1 MES通讯状态PLC
///2 MES激发变量开始扫描
///3 MES激发变量返修标志
///4 MES通讯状态MES
///5 MES激发变量扫描完成
///6 MES激发变量允许工作
///7 MES激发变量物料验证完毕
///8 MES激发变量返修放行
///9 MES发动机机型标志
///10 MES发动机号
///11 MES发动机机型
///25 MES发动机追踪代码
///12 机床状态变量
///13 MES激发变量托盘到位离开
///14 监控系统通讯状态PLC
///15 监控系统通讯状态MIS
///16 加工时间变量激发
///17 加工时间变量目标时间
///18 加工时间变量实际时间
///19 质量数据可以读数据
///21 质量数据总成合格标志
///20 MES保存完数据
///26 加工时间保存完数据
///22 质量数据发动机机型标志
///23 质量数据发动机号
///24 质量数据发动机机型
///27 操作者工号
///28 订单号
///29 工位具体零件合格标志
/// </summary>
public struct QualityDataType
{
/// <summary>
/// 变量类型代码
/// 101 合格数据变量
/// 102 不合格数据变量
/// 103 机床报警变量
/// 1 MES通讯状态PLC
///2 MES激发变量开始扫描
///3 MES激发变量返修标志
///4 MES通讯状态MES
///5 MES激发变量扫描完成
///6 MES激发变量允许工作
///7 MES激发变量物料验证完毕
///8 MES激发变量返修放行
///9 MES发动机机型标志
///10 MES发动机号
///11 MES发动机机型
///25 MES发动机追踪代码
///12 机床状态变量
///13 MES激发变量托盘到位离开
///14 监控系统通讯状态PLC
///15 监控系统通讯状态MIS
///16 加工时间变量激发
///17 加工时间变量目标时间
///18 加工时间变量实际时间
///19 质量数据可以读数据
///21 质量数据总成合格标志
///20 MES保存完数据
///26 加工时间保存完数据
///22 质量数据发动机机型标志
///23 质量数据发动机号
///24 质量数据发动机机型
///27 操作者工号
///28 订单号
/// 10 前提条件不满足
///20 不合格
///251 合格
///254 直通
///255 不要求工作
///253 备用工位完成
///254 返修工位完成
///0 未定义
///29 工位具体零件合格标志
/// </summary>
public int tagValueType;
/// <summary>
/// 变量类型
/// </summary>
public int tagTypeID;
/// <summary>
/// 工位号
/// </summary>
public string opName;
/// <summary>
/// 变量代码
/// </summary>
public int tagID;
/// <summary>
/// 变量值
/// </summary>
public object tagValue;
/// <summary>
/// 数据质量代码
/// 192 数据正常
/// </summary>
public int tagQuality;
/// <summary>
/// 列位置1234
/// </summary>
public int tagOrderBy;
/// <summary>
/// 变量排序(1:拧矩2转角)
/// </summary>
public int tagItemOrderBy;
/// <summary>
/// 变量代码与变量特点
/// 0:没定义1工位合格标志2需要合格标志的测量数据3每个工位的合格标志4:物料5:IQA码6:压装数据
/// 7:压装合格标志8(自动拧紧)工位合格标志
/// </summary>
public int tagProperty;
/// <summary>
/// 合格标志01
/// </summary>
public int isGoodBad;
}
[Serializable]
public class jsonobj
{
public string Type;
public string Name;
public string Param;
public string Pagination;
public bool HasReturn;
}
[Serializable]
public class jsonobjV2
{
public string Type;
public string Name;
public object Param;
public string Pagination;
public bool HasReturn;
}
/// <summary>
///
/// </summary>
public class MesBasicData
{
/// <summary>
/// 通过指定路径将 文本文件 转换成 DataTable
/// </summary>
/// <param name="fileName"></param>
/// <returns></returns>
public static DataTable GetBasicData(string fileName)
{
string[] strFileLines = File.ReadAllLines(fileName, Encoding.Default);
if (strFileLines.Length < 2) return null;
string[] strFieldName = strFileLines[0].Split('\t');
DataTable dtBasicData;
dtBasicData = new DataTable();
for (int i = 0; i < strFieldName.Length; i++)
{
dtBasicData.Columns.Add(strFieldName[i]);
}
DataRow dr = dtBasicData.NewRow();
for (int i = 1; i < strFileLines.Length; i++)
{
string[] strColumns = strFileLines[i].Split('\t');
for (int j = 0; j < strColumns.Length; j++)
{
strColumns[j] = strColumns[j].Trim('"').TrimEnd('"');
dr[j] = strColumns[j];
}
if (dr["是否启用"].ToString() == "1")
{
dtBasicData.Rows.Add(strColumns);
}
}
return dtBasicData;
}
/// <summary>
///
/// </summary>
public class DataTableSelect
{
static public DataTable SelectTable(DataTable SourceTable, string filterString)
{
DataTable dt = SourceTable.Clone();
var rows = SourceTable.Select(filterString);
if (rows != null && rows.Length > 0)
{
foreach (DataRow row in rows)
{
dt.ImportRow(row);
}
}
return dt;
}
/// <summary>
/// 返回执行Select distinct后的DataTable
/// </summary>
/// <param name="SourceTable">源数据表</param>
/// <param name="filterString">字段集</param>
/// <param name="FieldNames">字段集</param>
/// <returns></returns>
static public DataTable SelectDistinctGroup(DataTable SourceTable, string filterString, params string[] FieldNames)
{
DataTable dtFilter;
DataTable newTable;
dtFilter = SelectTable(SourceTable, filterString);
newTable = SelectDistinct(dtFilter, FieldNames);
return newTable;
}
/// <summary>
/// 返回执行Select distinct后的DataTable
/// </summary>
/// <param name="SourceTable">源数据表</param>
/// <param name="FieldNames">字段集</param>
/// <returns></returns>
static public DataTable SelectDistinct(DataTable SourceTable, params string[] FieldNames)
{
object[] lastValues;
DataTable newTable;
DataRow[] orderedRows;
if (FieldNames == null || FieldNames.Length == 0)
throw new ArgumentNullException("FieldNames");
lastValues = new object[FieldNames.Length];
newTable = new DataTable();
foreach (string fieldName in FieldNames)
newTable.Columns.Add(fieldName, SourceTable.Columns[fieldName].DataType);
orderedRows = SourceTable.Select("", string.Join(",", FieldNames));
foreach (DataRow row in orderedRows)
{
if (!fieldValuesAreEqual(lastValues, row, FieldNames))
{
newTable.Rows.Add(createRowClone(row, newTable.NewRow(), FieldNames));
setLastValues(lastValues, row, FieldNames);
}
}
return newTable;
}
static private bool fieldValuesAreEqual(object[] lastValues, DataRow currentRow, string[] fieldNames)
{
bool areEqual = true;
for (int i = 0; i < fieldNames.Length; i++)
{
if (lastValues[i] == null || !lastValues[i].Equals(currentRow[fieldNames[i]]))
{
areEqual = false;
break;
}
}
return areEqual;
}
static private DataRow createRowClone(DataRow sourceRow, DataRow newRow, string[] fieldNames)
{
foreach (string field in fieldNames)
newRow[field] = sourceRow[field];
return newRow;
}
static private void setLastValues(object[] lastValues, DataRow sourceRow, string[] fieldNames)
{
for (int i = 0; i < fieldNames.Length; i++)
lastValues[i] = sourceRow[fieldNames[i]];
}
}
}
}

View File

@@ -0,0 +1,29 @@
/// <summary>
/// 2021.2.23
///
/// </summary>
public struct Cmd_Const
{
public const string Receive_Position = "Position";
public const string Receive_ClickModel = "ClickModel";
public const string RobotTcpCurr = "RobotTcpCurr";
public const string RobotTcpEnd = "RobotTcpEnd";
public const string B_C_ImportModel = "B_C_ImportModel";//2021.4.10
public const string B_C_ExportModel = "B_C_ExportModel";//2021.4.10
public const string Receive_ModelTree = "ModelTree";//2021.5.7
public const string B_C_GetProjectCode = "B_C_GetProjectCode";//2021.9.6
public const string B_C_WriteLog = "B_C_WriteLog";//2021.12.04
}

View File

@@ -0,0 +1,20 @@
/// <summary>
/// 2021.2.23
/// 2021.10.11.1916.LLX
/// </summary>
public struct Cmd_Frame
{
public const string Craft = "craft";
public const string SignalWrite = "signalwrite";
public const string Visible = "visible";
public const string Rotation = "rotation";
public const string Wait = "wait";
public const string Attach = "attach";
}

View File

@@ -0,0 +1,25 @@
/// <summary>
/// 2021.2.23
///
/// </summary>
public struct Cmd_Protocol
{
public static string Frames => "|Frames|";
public static string Select => "|Select|";
public static string DragMove => "|DragMove|";
public static string PlayAct => "|PlayAct|";
public static string DrawPath => "|DrawPath|";
public static string CraftCurrOperation => "|CraftCurrOperation|";
public static string ReLoadData => "|ReLoadData|";
public static string RobotTcp => "|RobotTcp|";
public static string C_B_ImportModel => "|C_B_ImportModel|";//2021.4.10
public static string C_B_SetProjectCode => "|C_B_SetProjectCode|";//2021.9.6
public static string C_B_ReLoad_TagIDHandler => "|C_B_ReLoad_TagIDHandler|";//2021.10.10
public static string C_B_TagIDTrigger => "|C_B_TagIDTrigger|";//2021.10.10
public static string C_B_KinematicsEditing => "|C_B_KinematicsEditing|";//2021.11.25
public static string C_B_SaveModel => "|C_B_SaveModel|";//2021.11.26
}

View File

@@ -0,0 +1,467 @@
using System;
using System.Collections.Generic;
/// <summary>
/// CurrPostion
/// 2021.1.~
/// </summary>
[Serializable]
public class CurrPostion
{
///// <summary>
///// 帧
///// </summary>
//public int Index
//{
// get;
// set;
//}
public string CraftCode
{
get;
set;
}
/// <summary>
/// 模型名
/// </summary>
public string ModelCode
{
get;
set;
}
/// <summary>
/// 模型名
/// </summary>
public string ModelName
{
get;
set;
}
/// <summary>
/// X
/// </summary>
public double X
{
get;
set;
}
/// <summary>
/// Y
/// </summary>
public double Y
{
get;
set;
}
/// <summary>
/// Z
/// </summary>
public double Z
{
get;
set;
}
/// <summary>
/// RX
/// </summary>
public double RX
{
get;
set;
}
/// <summary>
/// RY
/// </summary>
public double RY
{
get;
set;
}
/// <summary>
/// RZ
/// </summary>
public double RZ
{
get;
set;
}
/// <summary>
/// QX
/// </summary>
public double QX
{
get;
set;
}
/// <summary>
/// QY
/// </summary>
public double QY
{
get;
set;
}
/// <summary>
/// QZ
/// </summary>
public double QZ
{
get;
set;
}
/// <summary>
/// QW
/// </summary>
public double QW
{
get;
set;
}
/// <summary>
/// X_Base
/// </summary>
public double X_Base
{
get;
set;
}
/// <summary>
/// Y_Base
/// </summary>
public double Y_Base
{
get;
set;
}
/// <summary>
/// Z_Base
/// </summary>
public double Z_Base
{
get;
set;
}
/// <summary>
/// RX_Base
/// </summary>
public double RX_Base
{
get;
set;
}
/// <summary>
/// RY_Base
/// </summary>
public double RY_Base
{
get;
set;
}
/// <summary>
/// RZ_Base
/// </summary>
public double RZ_Base
{
get;
set;
}
/// <summary>
/// QX_Base
/// </summary>
public double QX_Base
{
get;
set;
}
/// <summary>
/// QY_Base
/// </summary>
public double QY_Base
{
get;
set;
}
/// <summary>
/// QZ_Base
/// </summary>
public double QZ_Base
{
get;
set;
}
/// <summary>
/// QW_Base
/// </summary>
public double QW_Base
{
get;
set;
}
/// <summary>
/// X_Tool
/// </summary>
public double X_Tool
{
get;
set;
}
/// <summary>
/// Y_Tool
/// </summary>
public double Y_Tool
{
get;
set;
}
/// <summary>
/// Z_Tool
/// </summary>
public double Z_Tool
{
get;
set;
}
/// <summary>
/// RX_Tool
/// </summary>
public double RX_Tool
{
get;
set;
}
/// <summary>
/// RY_Tool
/// </summary>
public double RY_Tool
{
get;
set;
}
/// <summary>
/// RZ_Tool
/// </summary>
public double RZ_Tool
{
get;
set;
}
/// <summary>
/// QX_Tool
/// </summary>
public double QX_Tool
{
get;
set;
}
/// <summary>
/// QY_Tool
/// </summary>
public double QY_Tool
{
get;
set;
}
/// <summary>
/// QZ_Tool
/// </summary>
public double QZ_Tool
{
get;
set;
}
/// <summary>
/// QW_Tool
/// </summary>
public double QW_Tool
{
get;
set;
}
public string CurrJoint { get; set; }
public string MoveType { get; set; }
public double J1 { get; set; }
public double J2 { get; set; }
public double J3 { get; set; }
public double J4 { get; set; }
public double J5 { get; set; }
public double J6 { get; set; }
public string ProcessCode { get; set; }
public int SequenceNo { get; set; }
public string ProcessName { get; set; }
public int UseTime { get; set; }
public List<JointData> currentJoint = null;
public void SetCurrJoint()
{
this.CurrJoint =
"["
+ J1.ToString("f5") + ","
+ J2.ToString("f5") + ","
+ J3.ToString("f5") + ","
+ J4.ToString("f5") + ","
+ J5.ToString("f5") + ","
+ J6.ToString("f5")
+ "]";
}
public void SetTcpQ(double[] tcpQ)
{
X = tcpQ[0];
Y = tcpQ[1];
Z = tcpQ[2];
QX = tcpQ[3];
QY = tcpQ[4];
QZ = tcpQ[5];
QW = tcpQ[6];
}
public void SetTcpRpy(double[] tcpRpy)
{
X = tcpRpy[0];
Y = tcpRpy[1];
Z = tcpRpy[2];
RX = tcpRpy[3];
RY = tcpRpy[4];
RZ = tcpRpy[5];
}
public void SetJ(double[] p_JList)
{
J1 = p_JList[0];
J2 = p_JList[1];
J3 = p_JList[2];
J4 = p_JList[3];
J5 = p_JList[4];
J6 = p_JList[5];
SetCurrJoint();
}
public double[] GetJ()
{
return new double[] { J1, J2, J3, J4, J5, J6 };
}
public double[] GetTcpQ()
{
return new double[] { X, Y, Z, QX, QY, QZ, QW };
}
public double[] GetTcpRpy()
{
return new double[] { X, Y, Z, RX, RY, RZ };
}
public double[] GetTen()
{
return new double[] { X, Y, Z, QX, QY, QZ, QW, RX, RY, RZ };
}
public double[] GetBaseTen()
{
return new double[] { X_Base, Y_Base, Z_Base, QX_Base, QY_Base, QZ_Base, QW_Base, RX_Base, RY_Base, RZ_Base };
}
public double[] GetBaseQ()
{
return new double[] { X_Base, Y_Base, Z_Base, QX_Base, QY_Base, QZ_Base, QW_Base };
}
public double[] GetBaseRpy()
{
return new double[] { X_Base, Y_Base, Z_Base, RX_Base, RY_Base, RZ_Base };
}
public double[] GetToolTen()
{
return new double[] { X_Tool, Y_Tool, Z_Tool, QX_Tool, QY_Tool, QZ_Tool, QW_Tool, RX_Tool, RY_Tool, RZ_Tool };
}
public double[] GetToolQ()
{
return new double[] { X_Tool, Y_Tool, Z_Tool, QX_Tool, QY_Tool, QZ_Tool, QW_Tool };
}
public double[] GetToolRpy()
{
return new double[] { X_Tool, Y_Tool, Z_Tool, RX_Tool, RY_Tool, RZ_Tool };
}
}
[Serializable]
public class JointData
{
public string id;
public string name;
public string value;
public string type;
}
/////// <summary>
/////// 带 currentJoint 信息
/////// </summary>
////[Serializable]
////public class CurrJoint : CurrPostion
////{
//// public List<JointData> currentJoint = null;
////}
///// <summary>
///// 带 currentJoint 信息
///// </summary>
//[Serializable]
//public class CurrJoint_J : CurrJoint
//{
//}
public class CurrJointName
{
public const string CraftCode = "CraftCode";
public const string ProcessCode = "ProcessCode";
public const string SequenceNo = "SequenceNo";
public const string ProcessName = "ProcessName";
public const string UseTime = "UseTime";
public const string X = "X";
public const string Y = "Y";
public const string Z = "Z";
public const string RX = "RX";
public const string RY = "RY";
public const string RZ = "RZ";
public const string X_Base = "X_Base";
public const string Y_Base = "Y_Base";
public const string Z_Base = "Z_Base";
public const string RX_Base = "RX_Base";
public const string RY_Base = "RY_Base";
public const string RZ_Base = "RZ_Base";
public const string X_Tool = "X_Tool";
public const string Y_Tool = "Y_Tool";
public const string Z_Tool = "Z_Tool";
public const string RX_Tool = "RX_Tool";
public const string RY_Tool = "RY_Tool";
public const string RZ_Tool = "RZ_Tool";
public const string QX = "QX";
public const string QY = "QY";
public const string QZ = "QZ";
public const string QW = "QW";
public const string QX_Base = "QX_Base";
public const string QY_Base = "QY_Base";
public const string QZ_Base = "QZ_Base";
public const string QW_Base = "QW_Base";
public const string QX_Tool = "QX_Tool";
public const string QY_Tool = "QY_Tool";
public const string QZ_Tool = "QZ_Tool";
public const string QW_Tool = "QW_Tool";
public const string ModelCode = "ModelCode";
public const string ModelName = "ModelName";
public const string Reverse = "Reverse";
public const string CurrJoint = "CurrJoint";
public const string MoveType = "MoveType";
public const string J1 = "J1";
public const string J2 = "J2";
public const string J3 = "J3";
public const string J4 = "J4";
public const string J5 = "J5";
public const string J6 = "J6";
}

View File

@@ -0,0 +1,23 @@
/// <summary>
/// CurrSignalList
/// 2021.10.10.LLX
/// </summary>
public class CurrSignalList
{
/// <summary>
/// TagID
/// </summary>
public string TagID
{
get;
set;
}
/// <summary>
/// TagValue
/// </summary>
public string TagValue
{
get;
set;
}
}

View File

@@ -0,0 +1,199 @@
using KinematicsBase;
/// <summary>
///
/// </summary>
public class Data_ClickModel
{
/// <summary>
///
/// </summary>
public DeviceType DeviceTypeCode
{
get;
set;
} = DeviceType.Device;
/// <summary>
///
/// </summary>
public string ModelCode
{
get;
set;
} = "";
/// <summary>
///
/// </summary>
public string ModelName
{
get;
set;
} = "";
/// <summary>
///
/// </summary>
public string ModelCodeBase
{
get;
set;
} = "";
/// <summary>
///
/// </summary>
public string ModelNameBase
{
get;
set;
} = "";
/// <summary>
///
/// </summary>
public string ModelCodeTool
{
get;
set;
} = "";
/// <summary>
///
/// </summary>
public string ModelNameTool
{
get;
set;
} = "";
/// <summary>
///
/// </summary>
public string ModelCodeTcp
{
get;
set;
} = "";
/// <summary>
///
/// </summary>
public string ModelNameTcp
{
get;
set;
} = "";
/// <summary>
///
/// </summary>
public Data_Position Position
{
get;
set;
} = new Data_Position();
/// <summary>
///
/// </summary>
public Data_Position Base
{
get;
set;
} = new Data_Position();
/// <summary>
///
/// </summary>
public Data_Position Tool
{
get;
set;
} = new Data_Position();
/// <summary>
///
/// </summary>
public Data_Position Tcp
{
get;
set;
} = new Data_Position();
}
/// <summary>
///
/// </summary>
public class Data_Position
{
/// <summary>
///
/// </summary>
public double tx
{
get;
set;
} = 0;
/// <summary>
///
/// </summary>
public double ty
{
get;
set;
} = 0;
/// <summary>
///
/// </summary>
public double tz
{
get;
set;
} = 0;
/// <summary>
///
/// </summary>
public double rx
{
get;
set;
} = 0;
/// <summary>
///
/// </summary>
public double ry
{
get;
set;
} = 0;
/// <summary>
///
/// </summary>
public double rz
{
get;
set;
} = 0;
/// <summary>
///
/// </summary>
public double qx
{
get;
set;
} = 0;
/// <summary>
///
/// </summary>
public double qy
{
get;
set;
} = 0;
/// <summary>
///
/// </summary>
public double qz
{
get;
set;
} = 0;
/// <summary>
///
/// </summary>
public double qw
{
get;
set;
} = 0;
}

View File

@@ -0,0 +1,84 @@
using KinematicsBase;
using System;
using System.Collections.Generic;
/// <summary>
///
/// </summary>
public class Data_RobotCurr
{
/// <summary>
///
/// </summary>
public string ModelCode
{
get;
set;
} = "";
/// <summary>
///
/// </summary>
public string ModelName
{
get;
set;
} = "";
public string TcpSelf
{
get;
set;
} = "";
public List<Data_CurrentJoint> CurrentJoint
{
get;
set;
} = new List<Data_CurrentJoint> ();
/// <summary>
///
/// </summary>
public Data_Position Base
{
get;
set;
} = new Data_Position();
/// <summary>
///
/// </summary>
public Data_Position Tool
{
get;
set;
} = new Data_Position();
/// <summary>
///
/// </summary>
public Data_Position Tcp
{
get;
set;
} = new Data_Position();
}
public class Data_CurrentJoint
{
public string JId
{
get;
set;
} = "";
public string JName
{
get;
set;
} = "";
public string JValue
{
get;
set;
} = "";
public string JType
{
get;
set;
} = "";
}

View File

@@ -0,0 +1,40 @@
/// <summary>
/// 设备工艺内容
/// 2021.12.15
/// </summary>
public class DeviceCraftData
{
public string ModelCode
{
get;
set;
}
public string AttitudeCode_From
{
get;
set;
}
public string AttitudeCode_To
{
get;
set;
}
public string AttitudeName_From
{
get;
set;
}
public string AttitudeName_To
{
get;
set;
}
public int KeepTime
{
get;
set;
}
}

View File

@@ -0,0 +1,165 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
namespace DownLoadProgram
{
public class DownLoadRobotProgram
{
public string pathName { get; set; } = "";//CraftName
public string robotId { get; set; } = "";//ModelCode
public string robotName { get; set; } = "";//ModelName
public string robotType { get; set; } = "IRB6640";
public string rcsVersion { get; set; } = "IRC5";
public List<PathTag> tags { get; set; } = new List<PathTag>() { new PathTag(), new PathTag() };
}
public class PathTag
{
public string tagName { get; set; } = "";
public string tagId { get; set; } = "";
public string moveType { get; set; } = "MoveJ";
public string storageType { get; set; } = "PERS";
public TagLocationConf location { get; set; } = new TagLocationConf();
public TagJoint joint { get; set; } = new TagJoint();
public TagTool tool { get; set; } = new TagTool();
public TagSpeed speed { get; set; } = new TagSpeed();
public TagZone zone { get; set; } = new TagZone();
public Wobj wobj { get; set; } = new Wobj();
public List<String> olpCommand { get; set; } = new List<String>() { "WaitDI DI1,1", "SetDO DO1,1" };
}
public class TagLocationConf
{
public TagPosition position { get; set; } = new TagPosition();
public TagQuaternion quaternion { get; set; } = new TagQuaternion();
public List<String> robotConf { get; set; } = new List<String>() { "0", "0", "0", "0" };
}
public class TagLocation
{
public TagPosition position { get; set; } = new TagPosition();
public TagQuaternion quaternion { get; set; } = new TagQuaternion();
}
public class TagPosition
{
public string x { get; set; } = "0";
public string y { get; set; } = "0";
public string z { get; set; } = "0";
}
public class TagQuaternion
{
public string x { get; set; } = "0";
public string y { get; set; } = "0";
public string z { get; set; } = "0";
public string w { get; set; } = "1";
}
public class TagJoint
{
public List<String> robotJoint { get; set; } = new List<String>() { "0", "0", "0", "0", "0", "0" };
public List<String> externalJoint { get; set; } = new List<String>() { "9000000000", "9000000000", "9000000000", "9000000000", "9000000000", "9000000000" };
}
public class TagTool
{
public string toolId { get; set; } = Guid.NewGuid().ToString().ToUpper();
public string toolName { get; set; } = "t1";
public string robotHold { get; set; } = "1";
public string storageType { get; set; } = "PERS";
public TagLocation toolFrame { get; set; } = new TagLocation();
public TagLocation centerOfGravity { get; set; } = new TagLocation();
public LoadParameter loadParameter { get; set; } = new LoadParameter();
}
public class LoadParameter
{
public string mass { get; set; } = "0.001";
public string inertiaX { get; set; } = "0";
public string inertiaY { get; set; } = "0";
public string inertiaZ { get; set; } = "0";
}
public class TagSpeed
{
public string speedId { get; set; } = Guid.NewGuid().ToString().ToUpper();
public string speedName { get; set; } = "s1";
public string storageType { get; set; } = "CONST";
public string tcpSpeed { get; set; } = "5";
public string orientation { get; set; } = "500";
public string linearExternalAxis { get; set; } = "5000";
public string rotationalExternalAxis { get; set; } = "1000";
}
public class TagZone
{
public string zoneId { get; set; } = "";
public string zoneName { get; set; } = "z1";
public string storageType { get; set; } = "CONST";
public string finePoint { get; set; } = "0";
public TcpMovement tcpMovement { get; set; } = new TcpMovement();
public NoTcpMovement noTcpMovement { get; set; } = new NoTcpMovement();
}
public class TcpMovement
{
public string tcpPath { get; set; } = "50";
public string orientation { get; set; } = "75";
public string externalAxis { get; set; } = "75";
}
public class NoTcpMovement
{
public string orientation { get; set; } = "7.5";
public string linearExternalAxis { get; set; } = "75";
public string rotationalExternalAxis { get; set; } = "7.5";
}
public class Wobj
{
public string wobjId { get; set; } = "";
public string wobjName { get; set; } = "w1";
public string robotHold { get; set; } = "0";
public string userFrameProg { get; set; } = "1";
public string mechanicalUnit { get; set; } = "";
public string storageType { get; set; } = "PERS";
public TagLocation userFrame { get; set; } = new TagLocation();
public TagLocation objectFrame { get; set; } = new TagLocation();
}
}

View File

@@ -0,0 +1,16 @@
/// <summary>
///
/// </summary>
public enum EnumTagTypeID
{
Int16 = 2,
Int32 = 3,
Float = 4,
UInt64 = 7,
String = 8,
Bool = 11,
Byte = 17,
UInt16 = 18,
Double = 19,
}

View File

@@ -0,0 +1,2 @@
public delegate void GeneralFunction( double[] a, double[] b, double[] c);

View File

@@ -0,0 +1,192 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
namespace KinematicsBase
{
#region BaseClass
/// <summary>
/// Clones the specified list.
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="List">The list.</param>
/// <returns>List{``0}.</returns>
[Serializable]
public enum DeviceType
{
Default = 0,
Device = 1,
Robot = 2,
AGV = 3,
Gripper = 4,
Err = 1000
}
[Serializable]
/// <summary>
/// 接受选择的模型
/// </summary>
public class ModelSelect
{
public string ModelCode { get; set; }
public string ModelName { get; set; }
public string tx { get; set; }
public string ty { get; set; }
public string rx { get; set; }
public string ry { get; set; }
public string rz { get; set; }
public DeviceType DeviceTypeCode { get; set; }
}
[Serializable]
public enum AxisFlag
{
X,
Y,
Z
}
/// <summary>
/// 从一个姿态到另一个姿态是时间优先或速度有限
/// </summary>
[Serializable]
public enum MoveToPosePriorType
{
Time,
Velocity
}
[Serializable]
public class Position
{
public double X { set; get; }
public double Y { set; get; }
public double Z { set; get; }
}
[Serializable]
public class FixedAngle
{
public FixedAngle()
{
}
public double R { set; get; }
public double P { set; get; }
public double Y { set; get; }
}
/// <summary>
/// 运动约束单位矩阵
/// </summary>
[Serializable]
public class PositionNormalMatrix
{
public int x { set; get; }
public int y { set; get; }
public int z { set; get; }
public int rx { set; get; }
public int ry { set; get; }
public int rz { set; get; }
}
[Serializable]
public class Quaternion
{
public Quaternion()
{
}
public double X { set; get; }
public double Y { set; get; }
public double Z { set; get; }
public double W { set; get; }
}
[Serializable]
public class PositionFixedAngle
{
public PositionFixedAngle()
{
this.Position = new Position();
this.FixedAngle = new FixedAngle();
}
public Position Position { set; get; }
public FixedAngle FixedAngle { set; get; }
}
[Serializable]
public class PositionQuaternion
{
public PositionQuaternion()
{
this.Position = new Position();
this.Quaternion = new Quaternion();
}
public Position Position { set; get; }
public Quaternion Quaternion { set; get; }
}
[Serializable]
public class PositionQuaternionWithID : PositionQuaternion
{
public PositionQuaternionWithID()
{
this.UUID = "";
}
public string UUID { set; get; }
}
[Serializable]
public class Point
{
public Point()
{
}
public Point(double x, double y, double z)
{
this.X = x;
this.Y = y;
this.Z = z;
}
public double X { get; set; }
public double Y { get; set; }
public double Z { get; set; }
}
[Serializable]
public class Axis
{
public Axis()
{
this.Start = new Point();
this.End = new Point();
this.Flip = 0;
}
public Axis(Point start, Point end)
{
this.Start = start;
this.End = end;
this.Flip = 0;
}
public Point Start { get; set; }
public Point End { get; set; }
public AxisFlag AxisFlag { get; set; }
/// <summary>
/// 1.反向0.正常
/// </summary>
public int Flip { get; set; }
public PositionFixedAngle Loaction { get; set; }
public PositionQuaternion LoactionQuaternion { get; set; }
}
#endregion
}

View File

@@ -0,0 +1,9 @@
public enum KinematicsActionType
{
Add,
Update,
Remove,
ReceiveDevice,
Save
}

View File

@@ -0,0 +1,8 @@
public enum KinematicsPropertyType
{
Link,
Joint,
Pose,
Kinematics
}

View File

@@ -0,0 +1,596 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
/// <summary>
///
/// </summary>
namespace LogicalBlock
{
/// <summary>
///
/// </summary>
public class LogicalBlockBasic
{
/// <summary>
/// 模型代码 或 工艺代码
/// </summary>
public string ResourcesCode
{
get;
set;
} = "";
/// <summary>
///
/// </summary>
public Type_Resources ResourcesType
{
get;
set;
} = Type_Resources.Model;
/// <summary>
///
/// </summary>
public string LogicalBlockCode
{
get;
set;
} = Guid.NewGuid().ToString().ToUpper();
/// <summary>
///
/// </summary>
public string LogicalBlockName
{
get;
set;
} = "空逻辑块";
/// <summary>
///
/// </summary>
public List<LogicalBlock_Input> List_LogicalBlock_Input
{
get;
set;
} = new List<LogicalBlock_Input>();
/// <summary>
///
/// </summary>
public List<LogicalBlock_Output> List_LogicalBlock_Output
{
get;
set;
} = new List<LogicalBlock_Output>();
/// <summary>
///
/// </summary>
public List<LogicalBlock_Param> List_LogicalBlock_Param
{
get;
set;
} = new List<LogicalBlock_Param>();
/// <summary>
///
/// </summary>
public List<LogicalBlock_Const> List_LogicalBlock_Const
{
get;
set;
} = new List<LogicalBlock_Const>();
/// <summary>
///
/// </summary>
public List<LogicalBlock_Operation> List_LogicalBlock_Operation
{
get;
set;
} = new List<LogicalBlock_Operation>();
/// <summary>
///
/// </summary>
public void GetConnectedSignalStr_Input()
{
foreach (LogicalBlock_Input logicalBlock_Input in List_LogicalBlock_Input)
{
var ConnectedSignal = logicalBlock_Input.ConnectedSignal;
logicalBlock_Input.ConnectedSignalStr = string.Join(", ", ConnectedSignal.Select(k => k.SignalName).ToArray());
}
}
/// <summary>
///
/// </summary>
public void GetConnectedSignalStr_Output()
{
foreach (LogicalBlock_Output logicalBlock_Output in List_LogicalBlock_Output)
{
var ConnectedSignal = logicalBlock_Output.ConnectedSignal;
logicalBlock_Output.ConnectedSignalStr = string.Join(", ", ConnectedSignal.Select(k => k.SignalName).ToArray());
}
}
}
/// <summary>
///
/// </summary>
public class LogicalBlock_Output : LogicalBlock_Input
{
/// <summary>
///
/// </summary>
public string ScriptText
{
get;
set;
}
}
/// <summary>
///
/// </summary>
public class LogicalBlock_Input
{
/// <summary>
///
/// </summary>
public string VarName
{
get;
set;
}
/// <summary>
///
/// </summary>
public Type_Signal VarType
{
get;
set;
}
/// <summary>
///
/// </summary>
public string ConnectedSignalStr
{
get;
set;
}
/// <summary>
///
/// </summary>
public List<LB_Device_Signal> ConnectedSignal
{
get;
set;
}
/// <summary>
///
/// </summary>
public string Explain
{
get;
set;
}
}
/// <summary>
///
/// </summary>
public class LogicalBlock_Param
{
/// <summary>
///
/// </summary>
public string VarName
{
get;
set;
}
/// <summary>
///
/// </summary>
public Type_Sensor SensorType
{
get;
set;
}
/// <summary>
///
/// </summary>
public string Explain
{
get;
set;
}
/// <summary>
///
/// </summary>
public string ScriptText
{
get;
set;
}
/// <summary>
/// 姿态代码,或者是位置数据代码等,即参数的代码。
/// </summary>
public string ParamCode
{
get;
set;
}
}
/// <summary>
///
/// </summary>
public class LogicalBlock_Const
{
/// <summary>
///
/// </summary>
public string VarName
{
get;
set;
}
/// <summary>
///
/// </summary>
public Type_Signal VarType
{
get;
set;
}
/// <summary>
///
/// </summary>
public string VarValue
{
get;
set;
}
/// <summary>
///
/// </summary>
public string Explain
{
get;
set;
}
}
/// <summary>
///
/// </summary>
public class LogicalBlock_Operation
{
/// <summary>
///
/// </summary>
public string OperationName
{
get;
set;
}
/// <summary>
///
/// </summary>
public Type_Operation ApplyType
{
get;
set;
}
/// <summary>
///
/// </summary>
public string ApplyToCode
{
get;
set;
}
/// <summary>
///
/// </summary>
public string ApplyToName
{
get;
set;
}
/// <summary>
///
/// </summary>
public string Explain
{
get;
set;
}
/// <summary>
///
/// </summary>
public string ScriptText
{
get;
set;
}
/// <summary>
///
/// </summary>
public string ScriptText_Speed
{
get;
set;
}
}
/// <summary>
///
/// </summary>
public class LB_Device_Signal
{
/// <summary>
///
/// </summary>
public string SignalCode
{
get;
set;
}
/// <summary>
///
/// </summary>
public string SignalName
{
get;
set;
}
/// <summary>
///
/// </summary>
public string SignalRegion
{
get;
set;
}
}
/// <summary>
/// 资源类型
/// </summary>
public enum Type_Resources
{
/// <summary>
/// 模型资源
/// </summary>
Model = 1,
/// <summary>
/// 工艺资源
/// </summary>
Craft = 2
}
/// <summary>
///
/// </summary>
public class JsSymbolTable
{
/// <summary>
///
/// </summary>
public string SymbolName
{
get;
set;
}
/// <summary>
///
/// </summary>
public string SymbolValue
{
get;
set;
}
}
/// <summary>
///
/// </summary>
public class ResourcesArithmeticUnit
{
/// <summary>
///
/// </summary>
public Dictionary<String, JsSymbolTable> DC_SignalCode_JsSymbolTable
{
get;
set;
}
/// <summary>
///
/// </summary>
public Dictionary<String, LogicalBlock_Param> DC_ParamCode_LogicalBlockParam
{
get;
set;
}
/// <summary>
///
/// </summary>
public Dictionary<String, String> DC_ParamName_ParamValue
{
get;
set;
}
}
/// <summary>
///
/// </summary>
public enum Type_Signal
{
/// <summary>
///
/// </summary>
BOOL = 1,
/// <summary>
///
/// </summary>
BYTE = 2,
/// <summary>
///
/// </summary>
WORD = 3,
/// <summary>
///
/// </summary>
DWORD = 4,
/// <summary>
///
/// </summary>
INT = 5,
/// <summary>
///
/// </summary>
DINT = 6,
/// <summary>
///
/// </summary>
REAL = 7,
/// <summary>
///
/// </summary>
LREAL = 8
}
/// <summary>
///
/// </summary>
public enum Type_Sensor
{
/// <summary>
///
/// </summary>
BOOL = 1,
/// <summary>
///
/// </summary>
BYTE = 2,
/// <summary>
///
/// </summary>
WORD = 3,
/// <summary>
///
/// </summary>
DWORD = 4,
/// <summary>
///
/// </summary>
INT = 5,
/// <summary>
///
/// </summary>
DINT = 6,
/// <summary>
///
/// </summary>
REAL = 7,
/// <summary>
///
/// </summary>
LREAL = 8,
/// <summary>
/// 关节值传感器(BOOL)
/// 姿态传感器
/// 2021.11.26.LLX
/// </summary>
JointValueSensor = 9,
/// <summary>
/// 关节距离传感器(REAL)
/// 2021.11.26.LLX
/// </summary>
JointDistanceSensor = 10,
/// <summary>
/// 关节运行中传感器(BOOL)
/// 2021.12.07.LLX
/// </summary>
JointRuningSensor = 11,
/// <summary>
/// 位置传感器
/// 2021.11.26.LLX
/// </summary>
PositionSensor = 12
}
/// <summary>
///
/// </summary>
public enum Type_Operation
{
/// <summary>
/// BOOL
/// </summary>
MoveToAttitude = 1,
/// <summary>
/// BOOL
/// </summary>
JumpToAttitude = 2,
/// <summary>
/// REAL
/// </summary>
MoveToJoint = 3,
/// <summary>
/// BOOL
/// </summary>
CraftInvoke = 4,
/// <summary>
/// BOOL
/// </summary>
Visible = 5,
/// <summary>
/// BOOL
/// </summary>
Rotation = 6,
/// <summary>
/// BOOL
/// </summary>
Attach = 7
}
/// <summary>
///
/// </summary>
public struct SensorParamChangedParam
{
/// <summary>
/// 资源代码
/// </summary>
public string ResourcesCode
{
get;
set;
}
/// <summary>
/// 姿态代码,或轴数据等代码
/// 传感器代码
/// </summary>
public string ParamCode
{
get;
set;
}
/// <summary>
/// 传感器值发生变化
/// </summary>
public string ChangedValue
{
get;
set;
}
}
}

View File

@@ -0,0 +1,21 @@
/// <summary>
/// 全局运行模式
/// 2021.12.3.LLX
/// </summary>
public enum Mode_Run
{
/// <summary>
/// 仿真模式
/// </summary>
Simulation = 1,
/// <summary>
/// 虚拟调试模式
/// </summary>
VirtualCommissioning = 2,
/// <summary>
/// 数字孪生模式
/// </summary>
DigitaTwin = 3
}

View File

@@ -0,0 +1,164 @@
/// <summary>
/// 模型属性
/// 2021.4.2,修改
/// </summary>
//[System.Serializable]
public class ModelAttribute
{
/// <summary>
///ModelCode
/// </summary>
public string ModelCode
{
get;
set;
}
/// <summary>
/// ModelTypeCode
/// </summary>
public string ModelTypeCode
{
get;
set;
}
/// <summary>
///ModelName
/// </summary>
public string ModelName
{
get;
set;
}
/// <summary>
/// DeviceTypeCode
/// </summary>
public int DeviceTypeCode
{
get;
set;
}
/// <summary>
/// DeviceTypeName
/// </summary>
public string DeviceTypeName
{
get;
set;
}
/// <summary>
/// 完整的Urdf文件内容
/// 2021.5.10
/// </summary>
public string UrdfContent
{
get;
set;
}
/// <summary>
/// 运动学
/// 2021.12.22.LLX
/// KinematicsData
/// </summary>
public KinematicsBase.Kinematics KinematicsData
{
get;
set;
} = null;
public CurrModelPosition Position
{
get;
set;
} = null;
}
/// <summary>
///
/// </summary>
public class CurrModelPosition
{
/// <summary>
///
/// </summary>
public double tx
{
get;
set;
}
/// <summary>
///
/// </summary>
public double ty
{
get;
set;
}
/// <summary>
///
/// </summary>
public double tz
{
get;
set;
}
/// <summary>
///
/// </summary>
public double rx
{
get;
set;
}
/// <summary>
///
/// </summary>
public double ry
{
get;
set;
}
/// <summary>
///
/// </summary>
public double rz
{
get;
set;
}
/// <summary>
///
/// </summary>
public double qx
{
get;
set;
}
/// <summary>
///
/// </summary>
public double qy
{
get;
set;
}
/// <summary>
///
/// </summary>
public double qz
{
get;
set;
}
/// <summary>
///
/// </summary>
public double qw
{
get;
set;
}
}

View File

@@ -0,0 +1,24 @@
/// <summary>
/// 模型组
/// 2022.01.05
/// </summary>
public class ModelGroup
{
/// <summary>
/// 模型代码
/// </summary>
public string ModelCode
{
get;
set;
}
/// <summary>
/// 模型名称
/// </summary>
public string ModelName
{
get;
set;
}
}

View File

@@ -0,0 +1,37 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
/// <summary>
/// 模型名称数据
/// </summary>
public class ModelNameData
{
/// <summary>
/// 模型名称数据
/// </summary>
/// <param name="modelName"></param>
/// <param name="progressNum"></param>
/// <param name="visible"></param>
public ModelNameData(string modelName, double progressNum, int visible)
{
this.ModelName = modelName;
this.ProgressNum = progressNum;
this.Visible = visible;
}
/// <summary>
/// 模型名称
/// </summary>
public string ModelName { get; set; }
/// <summary>
/// 进度条
/// </summary>
public double ProgressNum { get; set; }
/// <summary>
/// 可见性
/// </summary>
public int Visible { get; set; }
}

View File

@@ -0,0 +1,42 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
/// <summary>
/// 模型可见
/// </summary>
public class ModelNameVisible
{
/// <summary>
/// 模型名称数据
/// </summary>
/// <param name="modelName"></param>
/// <param name="progressNum"></param>
/// <param name="visible"></param>
public ModelNameVisible(int modelCode, int modelTypeCode, string modelName, int visible)
{
this.ModelCode = modelCode;
this.ModelTypeCode = modelTypeCode;
this.ModelName = modelName;
this.Visible = visible;
}
/// <summary>
/// 模型代码
/// </summary>
public int ModelCode { get; set; }
/// <summary>
/// 父节点代码
/// </summary>
public int ModelTypeCode { get; set; }
/// <summary>
/// 模型名称
/// </summary>
public string ModelName { get; set; }
/// <summary>
/// 可见性
/// </summary>
public int Visible { get; set; }
}

View File

@@ -0,0 +1,312 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
/// <summary>
///
/// </summary>
[Serializable]
public class ModelProcess
{
/// <summary>
///
/// </summary>
public string ProcessCode
{
get;
set;
}
/// <summary>
///
/// </summary>
public string SequenceNo
{
get;
set;
}
/// <summary>
///
/// </summary>
public string ProcessName
{
get;
set;
}
/// <summary>
///
/// </summary>
public string UseTime
{
get;
set;
}
/// <summary>
///
/// </summary>
public string X
{
get;
set;
}
/// <summary>
///
/// </summary>
public string Y
{
get;
set;
}
/// <summary>
///
/// </summary>
public string Z
{
get;
set;
}
/// <summary>
///
/// </summary>
public string RX
{
get;
set;
}
/// <summary>
///
/// </summary>
public string RY
{
get;
set;
}
/// <summary>
///
/// </summary>
public string RZ
{
get;
set;
}
/// <summary>
///
/// </summary>
public string X_Base
{
get;
set;
}
/// <summary>
///
/// </summary>
public string Y_Base
{
get;
set;
}
/// <summary>
///
/// </summary>
public string Z_Base
{
get;
set;
}
/// <summary>
///
/// </summary>
public string RX_Base
{
get;
set;
}
/// <summary>
///
/// </summary>
public string RY_Base
{
get;
set;
}
/// <summary>
///
/// </summary>
public string RZ_Base
{
get;
set;
}
/// <summary>
///
/// </summary>
public string X_Tool
{
get;
set;
}
/// <summary>
///
/// </summary>
public string Y_Tool
{
get;
set;
}
/// <summary>
///
/// </summary>
public string Z_Tool
{
get;
set;
}
/// <summary>
///
/// </summary>
public string RX_Tool
{
get;
set;
}
/// <summary>
///
/// </summary>
public string RY_Tool
{
get;
set;
}
/// <summary>
///
/// </summary>
public string RZ_Tool
{
get;
set;
}
/// <summary>
///
/// </summary>
public string QX
{
get;
set;
}
/// <summary>
///
/// </summary>
public string QY
{
get;
set;
}
/// <summary>
///
/// </summary>
public string QZ
{
get;
set;
}
/// <summary>
///
/// </summary>
public string QW
{
get;
set;
}
/// <summary>
///
/// </summary>
public string QX_Base
{
get;
set;
}
/// <summary>
///
/// </summary>
public string QY_Base
{
get;
set;
}
/// <summary>
///
/// </summary>
public string QZ_Base
{
get;
set;
}
/// <summary>
///
/// </summary>
public string QW_Base
{
get;
set;
}
/// <summary>
///
/// </summary>
public string QX_Tool
{
get;
set;
}
/// <summary>
///
/// </summary>
public string QY_Tool
{
get;
set;
}
/// <summary>
///
/// </summary>
public string QZ_Tool
{
get;
set;
}
/// <summary>
///
/// </summary>
public string QW_Tool
{
get;
set;
}
/// <summary>
///
/// </summary>
public string ModelName
{
get;
set;
}
/// <summary>
///
/// </summary>
public string ModelCode
{
get;
set;
}
}

View File

@@ -0,0 +1,281 @@
using System.Collections.Generic;
/// <summary>
/// 项目帧
/// </summary>
public class P_OPERATION
{
/// <summary>
/// 一组项目帧
/// </summary>
public C_OPERATION OPERATION
{
set;
get;
} = new C_OPERATION();
}
/// <summary>
/// 帧集合
/// </summary>
public class C_OPERATION
{
/// <summary>
/// 帧集合
/// </summary>
public List<C_Frames> frames
{
set;
get;
} = new List<C_Frames>();
}
/// <summary>
/// 帧
/// </summary>
public class C_Frames
{
/// <summary>
/// 帧
/// </summary>
public string time
{
set;
get;
} = "0.01";
/// <summary>
/// 帧内容集合
/// </summary>
public List<C_ObjStates> objStates
{
set;
get;
} = new List<C_ObjStates>();
public List<C_Craft> crafts
{
set;
get;
} = new List<C_Craft>();
public List<C_Signalwrite> signalwrites
{
set;
get;
} = new List<C_Signalwrite>();
public List<C_Visible> visibles
{
set;
get;
} = new List<C_Visible>();
public List<C_Rotation> rotations
{
set;
get;
} = new List<C_Rotation>();
public List<C_Wait> waits
{
set;
get;
} = new List<C_Wait>();
public List<C_Attach> attachs
{
set;
get;
} = new List<C_Attach>();
}
/// <summary>
/// 帧内容
/// </summary>
public class C_ObjStates
{
/// <summary>
/// 模型代码
/// </summary>
public string i
{
set;
get;
} = "";
/// <summary>
/// tx
/// </summary>
public string tx
{
set;
get;
} = "";
/// <summary>
/// ty
/// </summary>
public string ty
{
set;
get;
} = "";
/// <summary>
/// tz
/// </summary>
public string tz
{
set;
get;
} = "";
/// <summary>
/// qx
/// </summary>
public string qx
{
set;
get;
} = "";
/// <summary>
/// qy
/// </summary>
public string qy
{
set;
get;
} = "";
/// <summary>
/// qz
/// </summary>
public string qz
{
set;
get;
} = "";
/// <summary>
/// qw
/// </summary>
public string qw
{
set;
get;
} = "";
}
/// <summary>
///
/// </summary>
public class C_Craft
{
public string CraftCode
{
get;
set;
}
public string CraftValue
{
get;
set;
}
}
/// <summary>
/// 帧信号
/// </summary>
public class C_Signalwrite
{
/// <summary>
/// TagID
/// </summary>
public string TagID
{
get;
set;
}
/// <summary>
/// TagValue
/// </summary>
public string TagValue
{
get;
set;
}
}
/// <summary>
///
/// </summary>
public class C_Visible
{
public string ModelCode
{
get;
set;
}
public string Visible
{
get;
set;
}
}
public class C_Rotation
{
public string ModelCode
{
get;
set;
}
public string Axis
{
get;
set;
}
public int Rate
{
get;
set;
}
}
public class C_Wait
{
public string WaitStr
{
get;
set;
}
}
public class C_Attach
{
/// <summary>
///
/// </summary>
public string AttachToModelCode
{
get;
set;
} = "";
public string AttachToModelName
{
get;
set;
} = "";
/// <summary>
///
/// </summary>
public List<ModelGroup> List_AttachModel
{
get;
set;
} = new List<ModelGroup>();
/// <summary>
///
/// </summary>
public bool IsTwoWay
{
get;
set;
} = false;
/// <summary>
///
/// </summary>
public bool IsAttach
{
get;
set;
} = false;
}

View File

@@ -0,0 +1,66 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
public class OperateResult
{
/// <summary>
/// 实例化一个默认的结果对象
/// </summary>
public OperateResult()
{
}
/// <summary>
/// 使用指定的消息实例化一个默认的结果对象
/// </summary>
/// <param name="msg">错误消息</param>
public OperateResult(string msg)
{
this.Message = msg;
}
/// <summary>
/// 使用错误代码,消息文本来实例化对象
/// </summary>
/// <param name="err">错误代码</param>
/// <param name="msg">错误消息</param>
public OperateResult(int err, string msg)
{
this.ErrorCode = err;
this.Message = msg;
}
/// <summary>
/// 指示本次访问是否成功
/// </summary>
public bool IsSuccess
{
get;
set;
} = false;
/// <summary>
/// 具体的错误描述
/// </summary>
public string Message
{
get;
set;
} = "";
/// <summary>
/// 具体的错误代码
/// </summary>
public int ErrorCode
{
get;
set;
} = 10000;
}

View File

@@ -0,0 +1,734 @@
using System;
/// <summary>
/// 操作结果
/// </summary>
/// <typeparam name="T1"></typeparam>
/// <typeparam name="T2"></typeparam>
/// <typeparam name="T3"></typeparam>
public class OperationResult<T1, T2, T3> : OperateResult
{
/// <summary>
/// T1
/// </summary>
public T1 PlayIDList
{
get;
set;
}
/// <summary>
/// T2
/// </summary>
public T2 PlayName
{
get;
set;
}
/// <summary>
/// T3
/// </summary>
public T3 ModelName
{
get;
set;
}
}
/// <summary>
/// 操作结果
/// </summary>
/// <typeparam name="T1"></typeparam>
/// <typeparam name="T2"></typeparam>
public class OperationResult<T1, T2> : OperateResult
{
/// <summary>
/// T
/// </summary>
public T1 t1
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T2 t2
{
get;
set;
}
}
public class OperationResultMesDtSim<T1, T2, T3, T4,T5,T6> : OperateResult
{
/// <summary>
/// T1
/// </summary>
public T1 PlayIDList
{
get;
set;
}
/// <summary>
/// T2
/// </summary>
public T2 PlayName
{
get;
set;
}
/// <summary>
/// T3
/// </summary>
public T3 ModelName
{
get;
set;
}
/// <summary>
/// 1 : From DT
/// 2: From MisData
/// </summary>
public T4 TagFrom
{
get;
set;
}
public T5 OpName
{
get;
set;
}
public T6 TagIDCopyFrom
{
get;
set;
}
}
///// <summary>
///// 操作结果
///// </summary>
///// <typeparam name="T1"></typeparam>
///// <typeparam name="T2"></typeparam>
///// <typeparam name="T3"></typeparam>
///// <typeparam name="T4"></typeparam>
//public class OperationResult<T1, T2, T3, T4> : OperateResult
//{
// /// <summary>
// /// T
// /// </summary>
// public T1 t1
// {
// get;
// set;
// }
// /// <summary>
// /// T
// /// </summary>
// public T2 t2
// {
// get;
// set;
// }
// /// <summary>
// /// T
// /// </summary>
// public T3 t3
// {
// get;
// set;
// }
// /// <summary>
// /// T
// /// </summary>
// public T4 t4
// {
// get;
// set;
// }
//}
/// <summary>
/// 操作结果
/// </summary>
/// <typeparam name="T1"></typeparam>
/// <typeparam name="T2"></typeparam>
/// <typeparam name="T3"></typeparam>
/// <typeparam name="T4"></typeparam>
/// <typeparam name="T5"></typeparam>
public class OperationResult<T1, T2, T3, T4, T5> : OperateResult
{
/// <summary>
/// T
/// </summary>
public T1 t1
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T2 t2
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T3 t3
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T4 t4
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T5 t5
{
get;
set;
}
}
/// <summary>
/// 操作结果
/// </summary>
/// <typeparam name="T1"></typeparam>
/// <typeparam name="T2"></typeparam>
/// <typeparam name="T3"></typeparam>
/// <typeparam name="T4"></typeparam>
/// <typeparam name="T5"></typeparam>
/// <typeparam name="T6"></typeparam>
public class OperationResult<T1, T2, T3, T4, T5, T6> : OperateResult
{
/// <summary>
/// T
/// </summary>
public T1 ID
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T2 TagID
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T3 TagValue
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T4 ModelCode
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T5 Visible
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T6 ModelName
{
get;
set;
}
}
/// <summary>
/// 操作结果
/// </summary>
/// <typeparam name="T1"></typeparam>
/// <typeparam name="T2"></typeparam>
/// <typeparam name="T3"></typeparam>
/// <typeparam name="T4"></typeparam>
/// <typeparam name="T5"></typeparam>
/// <typeparam name="T6"></typeparam>
public class OperationResultAct<T1, T2, T3, T4, T5, T6> : OperateResult
{
/// <summary>
/// T
/// </summary>
public T1 t1
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T2 t2
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T3 t3
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T4 t4
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T5 t5
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T6 t6
{
get;
set;
}
}
/// <summary>
/// 操作结果
/// </summary>
/// <typeparam name="T1"></typeparam>
/// <typeparam name="T2"></typeparam>
/// <typeparam name="T3"></typeparam>
/// <typeparam name="T4"></typeparam>
/// <typeparam name="T5"></typeparam>
/// <typeparam name="T6"></typeparam>
/// <typeparam name="T7"></typeparam>
public class OperationResult<T1, T2, T3, T4, T5, T6, T7> : OperateResult
{
/// <summary>
/// T
/// </summary>
public T1 ID
{
get;
set;
}
public T2 HandlerType
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T3 TagID
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T4 TagValue
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T5 HandlerCode
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T6 HandlerValue
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T7 HandlerName
{
get;
set;
}
}
/// <summary>
/// 操作结果
/// </summary>
/// <typeparam name="T1"></typeparam>
/// <typeparam name="T2"></typeparam>
/// <typeparam name="T3"></typeparam>
/// <typeparam name="T4"></typeparam>
/// <typeparam name="T5"></typeparam>
/// <typeparam name="T6"></typeparam>
/// <typeparam name="T7"></typeparam>
/// <typeparam name="T8"></typeparam>
public class OperationResult<T1, T2, T3, T4, T5, T6, T7, T8> : OperateResult
{
/// <summary>
/// T
/// </summary>
public T1 t1
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T2 t2
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T3 t3
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T4 t4
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T5 t5
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T6 t6
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T7 t7
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T8 t8
{
get;
set;
}
}
/// <summary>
/// 操作结果
/// </summary>
/// <typeparam name="T1"></typeparam>
/// <typeparam name="T2"></typeparam>
/// <typeparam name="T3"></typeparam>
/// <typeparam name="T4"></typeparam>
/// <typeparam name="T5"></typeparam>
/// <typeparam name="T6"></typeparam>
/// <typeparam name="T7"></typeparam>
/// <typeparam name="T8"></typeparam>
/// <typeparam name="T9"></typeparam>
public class OperationResult<T1, T2, T3, T4, T5, T6, T7, T8, T9> : OperateResult
{
/// <summary>
/// T
/// </summary>
public T1 t1
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T2 t2
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T3 t3
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T4 t4
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T5 t5
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T6 t6
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T7 t7
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T8 t8
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T9 t9
{
get;
set;
}
}
/// <summary>
/// 工艺的帧数据
/// 2021.1.28
/// 修改
/// </summary>
/// <typeparam name="T1"></typeparam>
/// <typeparam name="T2"></typeparam>
/// <typeparam name="T3"></typeparam>
/// <typeparam name="T4"></typeparam>
[Serializable]
public class FrameD<T1, T2, T3, T4>
{
/// <summary>
/// T1
/// </summary>
public T1 StartFrame
{
get;
set;
}
/// <summary>
/// T2
/// </summary>
public T2 Data
{
get;
set;
}
/// <summary>
/// T4
/// </summary>
public T3 ModelCode
{
get;
set;
}
/// <summary>
/// T5
/// </summary>
public T4 CraftCode
{
get;
set;
}
}
/// <summary>
///
/// 2021.2.19
/// </summary>
/// <typeparam name="T1"></typeparam>
/// <typeparam name="T2"></typeparam>
/// <typeparam name="T3"></typeparam>
[Serializable]
public class FrameData<T1, T2, T3>
{
/// <summary>
/// T1
/// </summary>
public T1 StartFrame
{
get;
set;
}
/// <summary>
/// T2
/// </summary>
public T2 Data
{
get;
set;
}
/// <summary>
/// T3
/// </summary>
public T3 CraftCode
{
get;
set;
}
}
/// <summary>
/// OperationResultActPlay
/// </summary>
/// <typeparam name="T1"></typeparam>
/// <typeparam name="T2"></typeparam>
/// <typeparam name="T3"></typeparam>
/// <typeparam name="T4"></typeparam>
/// <typeparam name="T5"></typeparam>
/// <typeparam name="T6"></typeparam>
public class OperationResultActPlay<T1, T2, T3, T4, T5, T6, T7> : OperateResult
{
/// <summary>
/// T
/// </summary>
public T1 t1
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T2 t2
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T3 t3
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T4 t4
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T5 t5
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T6 t6
{
get;
set;
}
/// <summary>
/// T
/// </summary>
public T7 t7
{
get;
set;
}
}

View File

@@ -0,0 +1,65 @@
/// <summary>
/// 播放传递的参数
/// 2021.3.29
/// </summary>
public struct PlayTransmitParam
{
/// <summary>
/// 工艺代码
/// </summary>
public int CraftCode
{
get;
set;
}
/// <summary>
/// 模型代码
/// </summary>
public int ModelCode
{
get;
set;
}
/// <summary>
/// 基座标组
/// </summary>
public System.Collections.Generic.List<double[]> List_BaseQ
{
get;
set;
}
/// <summary>
/// 工具坐标组
/// </summary>
public System.Collections.Generic.List<double[]> List_ToolQ
{
get;
set;
}
/// <summary>
/// 位置点坐标组
/// </summary>
public System.Collections.Generic.List<double[]> List_PtQ
{
get;
set;
}
/// <summary>
/// 使用时间组
/// </summary>
public System.Collections.Generic.List<System.Int32> List_UseTime
{
get;
set;
}
/// <summary>
/// 当前工艺所有工序离散结果
/// </summary>
public System.Collections.Generic.List<double[]> List_PtQ_All
{
get;
set;
}
}

View File

@@ -0,0 +1 @@
public delegate void ErrInfoHandler<T>(T t);

View File

@@ -0,0 +1,28 @@
using System;
using System.Collections.Generic;
/// <summary>
/// 执行脚本
/// 排队参数
/// 2021.11.25.LLX
/// </summary>
public struct QueueExecScriptParam
{
/// <summary>
/// 产生变化的信号代码
/// </summary>
public string ChangedTagID;
/// <summary>
/// 产生变化的信号值
/// </summary>
public string ChangedTagValue;
/// <summary>
/// 信号表
/// </summary>
public Dictionary<String, String> DC_TagID_PlcValue;
/// <summary>
/// 资源代码
/// 模型代码 或 工艺代码
/// </summary>
public string ResourcesCode;
}

View File

@@ -0,0 +1,3 @@
public delegate void ShowMainProgress(int c);
public delegate void ShowMainProgressCountPer(string countPer,int c);
public delegate void HideMainProgress(int delayTime);

View File

@@ -0,0 +1 @@
public delegate void ShowMainProgressSet(string o, int m);

View File

@@ -0,0 +1 @@
public delegate void Func(string t, string i, string v,string a);

View File

@@ -0,0 +1,78 @@
/// <summary>
///
/// </summary>
public class TagContent
{
//[ID],[TagID],[Value],[OperationTime]
/// <summary>
///
/// </summary>
/// <param name="id"></param>
/// <param name="opName"></param>
/// <param name="tagID"></param>
/// <param name="tagValue"></param>
/// <param name="operationTime"></param>
/// <param name="directData"></param>
public TagContent(string id, string opName, string tagID, string tagValue, long operationTime, string directData)
{
ID = id;
OpName = opName;
TagID = tagID;
TagValue = tagValue;
OperationTime = operationTime;
DirectData = directData;
}
/// <summary>
///
/// </summary>
public string ID
{
get;
set;
}
/// <summary>
///
/// </summary>
public string OpName
{
get;
set;
}
/// <summary>
///
/// </summary>
public string TagID
{
get;
set;
}
/// <summary>
///
/// </summary>
public string TagValue
{
get;
set;
}
/// <summary>
///
/// </summary>
public long OperationTime
{
get;
set;
}
/// <summary>
///
/// </summary>
public string DirectData
{
get;
set;
}
}

View File

@@ -0,0 +1,88 @@
/// <summary>
/// TagID绑定的处理
/// </summary>
public class TagTriggerHandler
{
/// <summary>
/// 执行类型
/// </summary>
public string HandlerType
{
get;
set;
} = "";
/// <summary>
/// TagID
/// </summary>
public string TagID
{
get;
set;
} = "";
/// <summary>
/// TagValue
/// </summary>
public string TagValue
{
get;
set;
} = "";
/// <summary>
/// 处理代码
/// </summary>
public string HandlerCode
{
get;
set;
} = "";
/// <summary>
/// 处理值
/// </summary>
public string HandlerValue
{
get;
set;
} = "";
/// <summary>
/// 关节运动类型
/// </summary>
public string JointType
{
get;
set;
} = "";
/// <summary>
/// 轴
/// </summary>
public string Axis
{
get;
set;
} = "";
/// <summary>
/// 轴运动方向
/// </summary>
public int Flip
{
get;
set;
} = 1;
/// <summary>
/// 值位置初始值
/// </summary>
public double Value
{
get;
set;
} = 0;
/// <summary>
/// 轴比率
/// </summary>
public double ValueFactor
{
get;
set;
} = 1;
}

View File

@@ -0,0 +1,27 @@
/// <summary>
/// 2020.10.17 ,llx , 工艺类型驱动代码
/// 2021.02.23 ,llx , 工艺类型驱动代码,修改
/// </summary>
public enum Type_Craft
{
/// <summary>
/// 非仿真操作
/// </summary>
UnSim = 1,
/// <summary>
/// 通用机器人操作
/// </summary>
Robot_Currency = 2,
/// <summary>
/// 设备操作
/// </summary>
Device = 3,
/// <summary>
/// 线性流操作
/// </summary>
LinearFlow = 4,
/// <summary>
/// 外部的设备实际位置时刻数据
/// </summary>
Device_Import = 5
}

View File

@@ -0,0 +1,24 @@
/// <summary>
/// 2021.6.18
/// 2021.11.17.LLX
/// </summary>
public class Type_Device
{
/// <summary>
/// Connect
/// </summary>
public const string Connect = "Connect";
/// <summary>
/// Signal
/// </summary>
public const string Signal = "Signal";
/// <summary>
/// ConnectRobot
/// </summary>
public const string ConnectRobot = "ConnectRobot";
/// <summary>
/// SignalRobot
/// </summary>
public const string SignalRobot = "SignalRobot";
}

View File

@@ -0,0 +1,32 @@
/// <summary>
/// 设备信号仿真树
/// 2021.6.21
/// </summary>
public class Type_DeviceSignalSimTree
{
/// <summary>
///
/// </summary>
public const string Plant = "Plant";
/// <summary>
///
/// </summary>
public const string Zone = "Zone";
/// <summary>
///
/// </summary>
public const string Line = "Line";
/// <summary>
///
/// </summary>
public const string Station = "Station";
/// <summary>
///
/// </summary>
public const string Group = "Group";
/// <summary>
///
/// </summary>
public const string Signal = "Signal";
}

View File

@@ -0,0 +1,24 @@
/// <summary>
/// 生成信号的类型
/// 2021.9.11
/// </summary>
public enum Type_GenerateSignal
{
/// <summary>
/// 虚拟调试
/// 2021.9.11
/// </summary>
VirtualDebug = 1,
/// <summary>
/// 数字孪生
/// 2021.9.11
/// </summary>
DigitalTwin = 2,
/// <summary>
/// 仅回写信号
/// 2021.10.7
/// </summary>
OnlyWrite = 3
}

View File

@@ -0,0 +1,19 @@
/// <summary>
/// 系统权限
/// 2022.01.19.LLX
/// </summary>
public enum Type_Jurisdiction
{
/// <summary>
/// 未知用户
/// </summary>
Unknown = 0,
/// <summary>
/// 管理员
/// </summary>
Administrator = 1,
/// <summary>
/// 用户
/// </summary>
User = 2
}

View File

@@ -0,0 +1,24 @@
/// <summary>
/// 操作的指令
/// 2021.11.16.LLX
/// </summary>
public enum OperationCmd
{
/// <summary>
/// 1.
/// </summarInserty>
Insert = 1,
/// <summary>
/// 2.Update
/// </summary>
Update = 2,
/// <summary>
/// 3.Delete
/// </summary>
Delete = 3,
/// <summary>
/// 4.Select
/// </summary>
Select = 4
}

View File

@@ -0,0 +1,32 @@
/// <summary>
/// 操作树
/// 2021.6.21
/// </summary>
public class Type_OperationTree
{
/// <summary>
///
/// </summary>
public const string Plant = "Plant";
/// <summary>
///
/// </summary>
public const string Zone = "Zone";
/// <summary>
///
/// </summary>
public const string Line = "Line";
/// <summary>
///
/// </summary>
public const string Station = "Station";
/// <summary>
///
/// </summary>
public const string Group = "Group";
/// <summary>
///
/// </summary>
public const string Craft = "Craft";
}

View File

@@ -0,0 +1,43 @@
/// <summary>
///
/// </summary>
public enum Type_Signal_Raw
{
/// <summary>
///
/// </summary>
INT16 = 2,
/// <summary>
///
/// </summary>
INT32 = 3,
/// <summary>
///
/// </summary>
FLOAT = 4,
/// <summary>
///
/// </summary>
UINT64 = 7,
/// <summary>
///
/// </summary>
STRING = 8,
/// <summary>
///
/// </summary>
BOOL = 11,
/// <summary>
///
/// </summary>
BYTE = 17,
/// <summary>
///
/// </summary>
UINT16 = 18,
/// <summary>
///
/// </summary>
DOUBLE = 19
}

View File

@@ -0,0 +1,33 @@
/// <summary>
/// 2020.9.23 ,llx , TagIdHandlerO
/// 2021.2.23 ,llx , TagIdHandlerO,修改
/// 2021.10.11.2350.LLX
/// </summary>
public class Type_TagIDHandler
{
/// <summary>
/// 1
/// </summary>
public const string Visible = "visible";
/// <summary>
/// 2
/// </summary>
public const string Rotation = "rotation";
/// <summary>
/// 3
/// </summary>
public const string Craft = "craft";
/// <summary>
/// 4
/// </summary>
public const string TargetLocation = "targetlocation";
/// <summary>
/// 5
/// </summary>
public const string Attach = "attach";
/// <summary>
/// 6
/// </summary>
public const string Warning = "warning";
}

View File

@@ -0,0 +1,16 @@
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
public struct UseTriggerPlayParameter
{
public string ActCode { get; set; }
public int MaxRunFrame { get; set; }
public List<OperationResultActPlay<String, String, Int32, Int32, Int32, DataTable, String>> List_CraftAlign { get; set; }
public List<ActPlayModelVisibleAndRotation> List_CraftAlign_ModelVisibleAndRotation { get; set; }
}