feat: add local G2 smoothing contracts
This commit is contained in:
@@ -17,6 +17,36 @@ public sealed class SmoothedPathPoint
|
||||
double bodyClearanceMeters,
|
||||
bool isGearSwitchPoint,
|
||||
SmoothedPathPointSource source)
|
||||
: this(
|
||||
xMeters,
|
||||
yMeters,
|
||||
headingRadians,
|
||||
unwrappedHeadingRadians,
|
||||
arcLengthMeters,
|
||||
direction,
|
||||
geometricCurvaturePerMeter,
|
||||
vehicleCurvaturePerMeter,
|
||||
0d,
|
||||
bodyClearanceMeters,
|
||||
isGearSwitchPoint,
|
||||
source)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>创建带有车辆曲率对弧长导数的不可变采样点。</summary>
|
||||
public SmoothedPathPoint(
|
||||
double xMeters,
|
||||
double yMeters,
|
||||
double headingRadians,
|
||||
double unwrappedHeadingRadians,
|
||||
double arcLengthMeters,
|
||||
TravelDirection direction,
|
||||
double geometricCurvaturePerMeter,
|
||||
double vehicleCurvaturePerMeter,
|
||||
double vehicleCurvatureDerivativePerSquareMeter,
|
||||
double bodyClearanceMeters,
|
||||
bool isGearSwitchPoint,
|
||||
SmoothedPathPointSource source)
|
||||
{
|
||||
X = xMeters;
|
||||
Y = yMeters;
|
||||
@@ -26,6 +56,7 @@ public sealed class SmoothedPathPoint
|
||||
Direction = direction;
|
||||
GeometricCurvature = geometricCurvaturePerMeter;
|
||||
VehicleCurvature = vehicleCurvaturePerMeter;
|
||||
VehicleCurvatureDerivative = vehicleCurvatureDerivativePerSquareMeter;
|
||||
BodyClearance = bodyClearanceMeters;
|
||||
IsGearSwitchPoint = isGearSwitchPoint;
|
||||
Source = source;
|
||||
@@ -55,6 +86,9 @@ public sealed class SmoothedPathPoint
|
||||
/// <summary>车辆模型使用的有符号曲率,单位 1/m。</summary>
|
||||
public double VehicleCurvature { get; }
|
||||
|
||||
/// <summary>车辆曲率对弧长的导数 dκ/ds,单位 1/m²。</summary>
|
||||
public double VehicleCurvatureDerivative { get; }
|
||||
|
||||
/// <summary>扩大车体后的保守净空下界,单位 m。</summary>
|
||||
public double BodyClearance { get; }
|
||||
|
||||
|
||||
Reference in New Issue
Block a user