增加车队布局与刚体速度分配基础

This commit is contained in:
2026-08-20 17:43:02 +08:00
parent 0d5539e595
commit fea2265e2d
30 changed files with 404 additions and 121 deletions
+7 -21
View File
@@ -2,23 +2,17 @@ using System;
namespace MyParking.Shared
{
/// <summary>
/// 统一检查跨层数值和二维位姿是否由满足基本范围要求的有限值组成。
/// </summary>
// 统一拒绝跨层数据中的NaN、无穷大和不符合正负范围的数值。
public static class NumericGuard
{
/// <summary>
/// 判断指定浮点数是否既不是NaN也不是无穷大。
/// </summary>
// 判断浮点数是否为有限值。
public static bool IsFinite(double value)
{
return !double.IsNaN(value) &&
!double.IsInfinity(value);
}
/// <summary>
/// 确保指定浮点数不是NaN或无穷大。
/// </summary>
// 拒绝NaN和无穷大。
public static void EnsureFinite(
double value,
string parameterName)
@@ -31,9 +25,7 @@ namespace MyParking.Shared
}
}
/// <summary>
/// 确保指定浮点数是非负有限值。
/// </summary>
// 拒绝负数、NaN和无穷大。
public static void EnsureFiniteNonNegative(
double value,
string parameterName)
@@ -48,9 +40,7 @@ namespace MyParking.Shared
}
}
/// <summary>
/// 确保指定浮点数是正有限值。
/// </summary>
// 拒绝零、负数、NaN和无穷大。
public static void EnsureFinitePositive(
double value,
string parameterName)
@@ -65,9 +55,7 @@ namespace MyParking.Shared
}
}
/// <summary>
/// 确保二维位姿的位置和航向均为有限值。
/// </summary>
// 同时检查二维位姿的位置和航向。
public static void EnsureFinite(
Pose2D pose,
string parameterName)
@@ -82,9 +70,7 @@ namespace MyParking.Shared
}
}
/// <summary>
/// 确保二维刚体速度的两个线速度分量和角速度均为有限值。
/// </summary>
// 同时检查二维刚体速度的两个线速度分量和角速度。
public static void EnsureFinite(
Twist2D twist,
string parameterName)