39 lines
1.7 KiB
C#
39 lines
1.7 KiB
C#
namespace MultiWheelC.TrajectoryPlanning.EMPlanner;
|
|
|
|
/// <summary>
|
|
/// 发布前轨迹几何、运动学和终端误差的验收容差配置;默认值由 <see cref="EmPlannerConfiguration.CreateDefault"/> 提供。
|
|
/// </summary>
|
|
public sealed class ValidationConfiguration
|
|
{
|
|
/// <summary>
|
|
/// 几何位置、弧长和采样比较使用的空间容差;单位 m,默认值 1e-8,必须为正有限值。
|
|
/// </summary>
|
|
public double SpatialToleranceMeters { get; set; }
|
|
/// <summary>
|
|
/// 速度、加速度和曲率等无量纲相对比较的容差;无量纲,默认值 1e-5,必须为正有限值。
|
|
/// </summary>
|
|
public double KinematicTolerance { get; set; }
|
|
/// <summary>
|
|
/// 精确终止模式下终端位置允许的误差;单位 m,默认值 0,必须为非负有限值。
|
|
/// </summary>
|
|
public double TerminalPositionToleranceMeters { get; set; }
|
|
/// <summary>
|
|
/// 精确终止模式下终端航向允许的误差;单位 rad,默认值 0,必须为 [0, π] 内的有限值。
|
|
/// </summary>
|
|
public double TerminalYawToleranceRadians { get; set; }
|
|
|
|
/// <summary>
|
|
/// 复制当前校验配置;输入为当前四个容差,输出为无共享可变状态的标量快照,不对数值作校验且不产生失败状态。
|
|
/// </summary>
|
|
internal ValidationConfiguration Copy()
|
|
{
|
|
return new ValidationConfiguration
|
|
{
|
|
SpatialToleranceMeters = SpatialToleranceMeters,
|
|
KinematicTolerance = KinematicTolerance,
|
|
TerminalPositionToleranceMeters = TerminalPositionToleranceMeters,
|
|
TerminalYawToleranceRadians = TerminalYawToleranceRadians,
|
|
};
|
|
}
|
|
}
|