I would like to re-phrase and narrow a question about physics animation while modelling. This question below was aksed, and it's similar to the question I am asking.
Statement of Problem
A user needs to arrange 3d models, that represent real world objects. It is important that the 3D models not collide/intersect so that the virtual arrangement can be re-produced in reality. There are other physics assisted methods which could be applied other than just collisions, but for this example collisions only are concerned.
Use a real-time, low fidelity editing session to allow interactive placement of the 3D models, and then, as a final step, perform a high fidelity, non interactive simulation. This works fine.
Specific Problem The physics animation has a specified time limit/frame count. I would like at the END of the animation, to re-set the timeline to 0, but refresh the frame 0 to keep the positions of the end frame to create an effectively indefinite editing session until the user "commits" their arrangement and the positions can be kept.
Specific Requirements 1. I feel like this could be handled with a "handler" and most likely it's just careful management of blender data that will prevent crashes. 2. It is fine if there is lag at the end of each cycle, even up to 1 or 2 seconds is tolerable. 3. A typical simulation might have 28 objects of a few thousand verts/triangles each. A good test sample would be 20 or 30 subdivided icospheres or suzannes with a total triangle count of 50,000 to 100,000 triangles for the scene.
I will post some sample scripts in the comments.
This is an area of research/design application that many would find useful. I'm willing to financially support it (is that allowed on Stack Exchange?).
$200 bounty on providing a nicely created code repository on github "indefinite_physics", a test scene with 30 objects, and a simple how to test.
An additional $200 bounty if you document it, create several code examples, create some preferences/settings to help make it easy to control