Files
FlyShotHost/src/Flyshot.Core.Planning/Sampling/J519SendSample.cs

43 lines
1.5 KiB
C#

namespace Flyshot.Core.Planning.Sampling;
/// <summary>
/// 表示 J519 伺服链路在某一个物理发送周期上的轨迹采样结果。
/// </summary>
/// <param name="sampleIndex">从 0 开始的发送周期序号。</param>
/// <param name="sendTime">J519 物理发送时间,单位为秒。</param>
/// <param name="trajectoryTime">映射回规划轨迹的采样时间,单位为秒。</param>
/// <param name="speedRatio">生成该采样点时使用的速度倍率。</param>
/// <param name="jointsDegrees">J519 下发使用的角度制关节目标。</param>
public sealed class J519SendSample(
long sampleIndex,
double sendTime,
double trajectoryTime,
double speedRatio,
IReadOnlyList<double> jointsDegrees)
{
/// <summary>
/// 获取从 0 开始的发送周期序号。
/// </summary>
public long SampleIndex { get; } = sampleIndex;
/// <summary>
/// 获取 J519 物理发送时间,单位为秒。
/// </summary>
public double SendTime { get; } = sendTime;
/// <summary>
/// 获取映射回规划轨迹的采样时间,单位为秒。
/// </summary>
public double TrajectoryTime { get; } = trajectoryTime;
/// <summary>
/// 获取生成该采样点时使用的速度倍率。
/// </summary>
public double SpeedRatio { get; } = speedRatio;
/// <summary>
/// 获取 J519 下发使用的角度制关节目标。
/// </summary>
public IReadOnlyList<double> JointsDegrees { get; } = jointsDegrees.ToArray();
}