Allow overwriting intermediate results in _check
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.