Making wires bounce off solids

I have a set up where I am dropping a wire that is anchored at its ends onto a solid (in this case a cone). I’ve discretised the wire and am using the resulting nodes in a SolidPointCollide goal, in order to keep the nodes outside the solid.

I want and expected the wire to bounce off the solid/slide down the surface of the solid, however it just passes straight through the solid as shown in the following animation. What am I doing wrong?

animation

curve-solid-interaction.gh (65.2 KB)

If you want all the points to collide with all the solids, you need to Graft the list of solids instead of Flatten:
curve-solid-interaction.gh (59.1 KB)

I see. The input description for SolidPointCollide does say “a closed brep” so I should have read it more carefully. Thank you!

1 Like

I’m really sorry for the follow-up question, but is there a way to specify a radius for each node so that they are at least x distance away from the solid?

I’ve tried supplementing the SolidPointCollide goal with a ClampLength goal with the LowerLimit input set to my desired radius, and the input lines are lines joining each node in the wire to each node in a mesh of the solid obstacle, but the solution became very expensive because of all the additional lines and it is also not very robust.

I’ve also tried swapping over to the Collider goal, with the line segments in my wire set to the desired radius, together with the edges from a mesh of the solid obstacle set to a radius of zero. This was also quite expensive and the collision did not work in many cases.