So here is the scenario: I have a bunch of meshes and then I rotate one of them, and after rotating I check for intersections between the rotated mesh (new position) and the other ones.
But even if the intersection detection returns the result that there is none, that doesn’t necessarily mean that there won’t be intersections “on the way of rotating” the mesh if you really wanted to do it in the physical world. It might be that in order to get to the new position, the rotated mesh needs to go through / collides with other meshes although the final destination is intersection-free. I hope you get what I mean.
So my question is: Is there a way to detect this? I thought of calculating the volume that the mesh “leaves behind” while rotating and then checking for intersection between this bigger mesh/brep/volume. Can I do this with RhinoCommon-methods?
I wonder if Kangaroo could be used to do collision detection for this kind of scenarios…
Is Kangaroo a library? I don’t know it, can you provide a link? I am new to this field ^^
Kangaroo is a physics engine available with integration into Grasshopper. Maybe @DanielPiker can tell more about the possibilities wrt your problem.
I don’t think Kangaroo would be of any help here, since it would essentially be doing the same thing as David’s option 2 above - rotating in small increments and checking for intersections, but with a lot more overhead to set up.
Alternatively, since it sounds like the check is between a static and a moving mesh, your idea of sweeping out the path of the rotating one could work. I guess you’d have to extract the mesh edges, then for each of them create a revolve surface around the rotation axis, then check all these surfaces for intersection with your static mesh.