Skip to content

Allow overwriting intermediate results in _check

Jonathan Külz requested to merge fix/intermediate_result_partial_override into main

Previously, the behavior of the GoalByGoalFilter was:

  • Either re-use existing results
  • Assume none of the results computed by this filter are given

This is wrong -- for example, an IK filter followed by an IK filter that checks for collisions resulted in the unavoidable "OverwritesIntermediateResult" exception: While the first one provides ik_results, it does not provide collision free checks. The second one tried to overwrite ik results and when it found some, it tried to overwrite the old ones that did not perform collision checks at all.

This MR allows overwriting previous results. While this can be runtime inefficient (and is therefore logged), I think it's unavoidable, as it would be too cumbersome to check for any possible combination of given/provided intermediate results.

Merge request reports