Files
wg_cpso/CaeKnowledge/Data/ProcessingJob.cs

55 lines
1.4 KiB
C#
Raw Normal View History

2026-03-25 18:20:24 +08:00
using CaeMesh;
// ReSharper disable SuggestVarOrType_BuiltInTypes
// ReSharper disable ConvertToAutoProperty
namespace CaeKnowledge.Data
{
public class ProcessingJob
{
private readonly ToolPosition _toolPosition;
private readonly FeNode _feNode;
// 要继承的计算步
public string StepName { get; }
public string NewStepName { get; set; }
// 刀位点位置坐标
public double X => _toolPosition.X;
public double Y => _toolPosition.Y;
public double Z => _toolPosition.Z;
// 切削力
public double Fx => _toolPosition.MaxFx;
public double Fy => _toolPosition.MaxFy;
public double Fz => _toolPosition.MaxFz;
// 最接近的节点
public FeNode Node => _feNode;
public FeFace[] Faces { get; }
// 刀位点到网格最近节点的距离
public double MinimumDistance { get; } = 0;
public ProcessingJob(string stepName, ToolPosition tp, FeNode node, FeFace[] faces)
{
_toolPosition = tp;
_feNode = node;
StepName = stepName;
double x1 = _toolPosition.X;
double y1 = _toolPosition.Y;
double z1 = _toolPosition.Z;
double x2 = node.X;
double y2 = node.Y;
double z2 = node.Z;
Faces = faces;
MinimumDistance = MeshTools.Distance(x1, y1, z1, x2, y2, z2);
}
}
}