载入中...
搜索中...
未找到
CrowdStep.cpp
浏览该文件的文档.
10 Diagnostic::error(DiagnosticCode::InvalidArgument, "Crowd dt must be finite and non-negative", "dt"));
12 if (dt == 0.f || impl_->xs.empty()) return Result<StepReport>::success(report, Status::success(StatusCode::NoOp));
21 if (d.radii[i] > 0.f) travelScale = travelScale > 0.f ? std::min(travelScale, d.radii[i]) : d.radii[i];
24 if (travelScale > 0.f && maxSpeed > 0.f) maxStep = std::min(maxStep, 0.5 * double(travelScale) / double(maxSpeed));
30 DiagnosticCode::PreconditionViolation, "Crowd step exceeds 1024 substeps; reduce dt or speed", "dt"));
#define EV_PROFILE_MODULE(module, name)
Profile the enclosing scope, tagged with a module for grouping.
Definition Profile.h:140
static Diagnostic error(DiagnosticCode code, std::string message, std::string path={}, DiagnosticDetails details={}, std::string source={})
Construct an error diagnostic with the standard error severity.
Definition Diagnostic.h:125
static Result failure(Status status)
Construct a failed result from a structured status.
Definition Result.h:175
static Status success(StatusCode code=StatusCode::Ok)
Construct a successful status with an explicit non-error outcome.
Definition Status.h:81
void step(float dt)
Compatibility-only stepping facade; delegates to advance and throws on rejected input....
Definition CrowdStep.cpp:78
Result< StepReport > advance(float dt)
Advance using bounded simultaneous integration and contact projection.
Definition CrowdStep.cpp:6
Definition Crowd.cpp:14
@ InvalidArgument
@ PreconditionViolation
@ NoOp
@ Applied
Owning observations of one completed advance; simulation-thread only.
Definition Crowd.h:38
int avoidanceTruncations
Agent/substep queries exceeding the configured neighbor limit.
Definition Crowd.h:40
std::int64_t avoidanceChecks
Candidate-neighbor predictions across all substeps.
Definition Crowd.h:39