Closed KatieWoe closed 3 years ago
I've looked this over again, and I'm not sure what the preferred behavior should be. @arouinfar thoughts?
@KatieWoe thank you for documenting these cases. Changing things about the system when a ball is off-screen is definitely an edge case, which is why things can be a bit odd. It's important to test these situations, but I don't think we necessarily want to design a bunch of special cases to handle them all.
If all balls are in the play area, changes to any of the following will override the state that is recalled by the blue reset button.
The sim behaves differently if any ball is off-screen when one of the above properties is edited. In this situation, the blue reset button is a means to return the balls to the play area rather than restore a specific state. For continuity, it's important that things like the number of balls, elasticity, and the state of the constant size checkbox aren't changed by pressing the blue reset button. The trade-off is that you end up with a partially-restored state where position/velocity/mass are reverted if they were changed after a ball is off-screen.
@jonathanolson we don't need to make any changes here, so closing.
Test device Dell Operating System Win 10 Browser Chrome Problem description For https://github.com/phetsims/QA/issues/615. Similar to https://github.com/phetsims/collision-lab/issues/199, but some things seem a bit different, especially now that some behaviors such as changing aspects bouncing balls back into the play area have changed in https://github.com/phetsims/collision-lab/issues/206. When a ball is outside the play area due to the reflecting border being gone, changes in state are not meant to be saved so that when you press the blue reset scene button you are returned to a point with all the available balls. However, some things change back to the state being restored to, and some do not and instead keep changes that weren't saved to state. Changes that remain even after resetting scene:
Changes that do not remain:
Visuals
Troubleshooting information: