feat: separate rolling horizons from stop boundaries

This commit is contained in:
梁薄云
2026-08-05 17:13:09 +08:00
parent e56220fc29
commit 21b20d09d4
9 changed files with 246 additions and 96 deletions
@@ -106,6 +106,17 @@ internal static class FoundationChecks
VerifyLateralWeights(configuration.Lateral.Weights);
VerifyLongitudinalWeights(configuration.Longitudinal.Weights);
EmPlannerConfiguration insufficientPreview = EmPlannerConfiguration.CreateDefault();
insufficientPreview.Scheduling.DistanceHorizonMeters = 0.01d;
EmPlanningRequestValidationResult insufficientPreviewValidation = EmPlanningRequestValidator.Validate(
CreateValidRequest(insufficientPreview));
AssertStatus(EmPlanningStatus.InvalidInput, insufficientPreviewValidation, "insufficient stopping preview");
EMPlannerVerificationHost.Verification.True(
insufficientPreviewValidation.FailureReason.Contains("DistanceHorizonMeters") &&
insufficientPreviewValidation.FailureReason.Contains("required") &&
insufficientPreviewValidation.FailureReason.Contains("configured"),
"insufficient stopping preview describes configured and required distance");
EmPlanningRequest valid = CreateValidRequest(configuration);
AssertStatus(EmPlanningStatus.InvalidInput, EmPlanningRequestValidator.Validate(
CreateRequest(null!, valid.Map, valid.Vehicle, valid.VehicleState, configuration, 0, EmMotionModel.NonholonomicForwardReverse)), "null reference path");