Hello there !
I have solid rectangles trapped inside other solid rectangles, is there a way to avoid that ?
Ouhhhhh, I’ll try, thanks
@inno It kinda works but it seems that component A is just doing the same thing as component B but with more time.
Which one is better if I am just simulating flat surfaces ?
not really able to give you a good answer based on pixels
generally speaking (as far as my understanding goes) the curve collider will detect and calculate collision, so if curve A touches curve B, they won’t cross through each other, but will keep touching /overlapping each other
Solid Point Collide, on the other side, will force some points to stay on the inside or on the outside of a given mesh: it won’t calculate the intersection, it will just force them in or push them out
I have no idea how your script is organized ![]()
you keep on posting pictures, which is like asking what is wrong with the smell of your stew by pshowing a video of it boiling ![]()
I see something that could be weird but could also be fine in the type of wires connected to the Solid Point Collide, but it’s just a wild guess:
Points input is getting a data tree, meaning a collection of Lists, each of wich carries one or more items
while
Solid input is getting a single List of items: the wire is thick, so there are 2+ items in there
I don’t know how your data is organized, but given the situation and assuming that Kangaroo component handles data tree the classic way, my best guess is a data tree issue
having in Points the tree:
{0}: P1, P2, P3, P4, P5, …
{1}: P1, P2, P3, P4, P5, …
{2}: P1, P2, P3, P4, P5, …
and in Solid the List:
S1, S2, S3
would mean that, for each branch {0}, {1}, {2}:
P1 can’t stay inside S1
P2, can’t stay inside S2
P3, can’t stay inside S3
P4, can’t stay inside S3
P5, can’t stay inside S3
…
Pn, can’t stay inside S3 (S3 which is the last item in List: Solids)
Do we still think it’s a data tree issue ? I’ll give it a try. The problem is still happening.
I have tried many different combination but nothing really gives me a guaranty that no shapes will be included into another shape.
Here’s the simplified version of the script.
Test solid inside another solid problem.gh (17.8 KB)
Solid inside another solid problem.3dm (86.0 KB)
So nobody knows how to double check if a solid is inside another solid ?
During or right after a simulation
Still happens, I am surprised that the original author didn’t include a condition to verify that state.
Will there be another update soon ?
I added an OnPlane goal and moved the curves inside the perimeter with random points.
Test solid inside another solid problem mrtn.gh (26.2 KB)
And here’s another topic which might be helpful:
Here’s another example from my collection. Unfortunately I lost track from which original post it is.
rectangles_collision.gh (24.5 KB)
Would you be able to share a file which is closer to your real application than the one with just 22 squares?
It’s alright man, thanks for helping, this is beyond our current understanding of the plugin I suppose.
Is the plugin author around here often ?
That would be @DanielPiker
I haven’t read the entire thread, but if Kangaroo is not a requirement, I would try one of the plug-ins with nesting/packing capabilities:
@Petras_Vestartas’ OpenNest and I believe @laurent_delrieu’s Nautilius plug-in can handle such problems to a degree. There might be others too.












