Files
ParkingRobot/ClumsyPilot/ParkrobTrajplanner/EMPlanner/Configuration/LongitudinalConfiguration.cs
T

33 lines
1.7 KiB
C#

namespace MultiWheelC.TrajectoryPlanning.EMPlanner;
public sealed class LongitudinalConfiguration
{
public double MaximumForwardSpeedMetersPerSecond { get; set; }
public double MaximumReverseSpeedMetersPerSecond { get; set; }
public double MaximumAccelerationMetersPerSecondSquared { get; set; }
public double MaximumDecelerationMetersPerSecondSquared { get; set; }
public double MaximumJerkMetersPerSecondCubed { get; set; }
public double MaximumLateralAccelerationMetersPerSecondSquared { get; set; }
public double MaximumCurvatureRatePerMeterPerSecond { get; set; }
public double StopSpeedToleranceMetersPerSecond { get; set; }
public double ZeroSpeedHoldSeconds { get; set; }
public LongitudinalWeights Weights { get; set; }
internal LongitudinalConfiguration Copy()
{
return new LongitudinalConfiguration
{
MaximumForwardSpeedMetersPerSecond = MaximumForwardSpeedMetersPerSecond,
MaximumReverseSpeedMetersPerSecond = MaximumReverseSpeedMetersPerSecond,
MaximumAccelerationMetersPerSecondSquared = MaximumAccelerationMetersPerSecondSquared,
MaximumDecelerationMetersPerSecondSquared = MaximumDecelerationMetersPerSecondSquared,
MaximumJerkMetersPerSecondCubed = MaximumJerkMetersPerSecondCubed,
MaximumLateralAccelerationMetersPerSecondSquared = MaximumLateralAccelerationMetersPerSecondSquared,
MaximumCurvatureRatePerMeterPerSecond = MaximumCurvatureRatePerMeterPerSecond,
StopSpeedToleranceMetersPerSecond = StopSpeedToleranceMetersPerSecond,
ZeroSpeedHoldSeconds = ZeroSpeedHoldSeconds,
Weights = Weights == null ? null : Weights.Copy(),
};
}
}