Rigid curve collisions

Kangaroo 2.5 includes a rewritten rigid curve collision engine for better handling of complex curves, including sharp points and multiple points of contact, using the NURBS objects directly, without having to discretize or break into convex parts.

CurveCollide_Example1.gh (7.4 KB)
(This also shows the new ‘grab’ component - which no longer requires any keyboard press - simply click and drag Kangaroo points in the Rhino viewport)

26 Likes

Back in Kangaroo1 there was a separate ‘gear’ component, but then it only allowed strictly one-way dependency. Now it is possible for objects to dynamically switch between driver and driven.
The curve collider also now includes an input for ‘passive’ curves, which are not themselves affected by the collisions.
CurveCollide_Example2.gh (27.3 KB)

20 Likes

One more little play with this - some hinged dissection:
dissection
hinged_dissection_example.gh (21.1 KB)

23 Likes

Wowo,this is superb…
Where can we try this K2.5?

:heart_eyes: :heart_eyes:

Hi Daniel, thank you for sharing this. i have a difficulty of simulating these rigid curves falling to a receive geometry as the later part of your video showing. would you like to share the later part of script with load force? i don’t know how to anchor the receive geometry if it is not a polygon. TIA

similar to the post above, I thought this script would just make the triangles fall and stack
right now the rigid collision isn’t working

stack.gh (8.0 KB)

Hi @Will_Wang

It looks like curve collision is only working in the XY plane - I’ll log a bug.
In the meantime though you can change the input plane (and use a passive curve collider for the floor)
stack.gh (16.0 KB)
tristack

4 Likes

perfect
i can always re-orient these shapes

It seems this bug is still a bug.