How to create this kind of network?

I am looking for a way or a definition to create this kind of linestructure, can anyone point me in the right direction or does someone have a script that does something similar?

Any help would be greatly appreciated2Capture

This is achievable with Proximity3D. The trick is to generate the proper layout of 3D points. Have you tried anything like this?

Hi thanks for your reply. No I havent tried using that. Do you have an example of how it could be utilized?

This kind of stuff is addressed (typically) via some sort of Particle System and some rules (and obviously parallel computing). A classic rather very simple intro to PS (Note: results are not similar with your goal(s) mind - meaning that various mods are required) :

So … if you are in the code bandwagon try to write some code and post it here if issues occur. If not … try to find some plug-in that supposedly does “similar” things (fast).

BTW:If you are an artist of some sort:


thanks for your reply Peter. I looked further into your suggestion and i am still learning

BTW: That said there’s other ways as well to cut (kinda) that type of mustard. See this (over simplified ~1000 times for clarity) that has nothing to do with particles (and/or prox rules):

And for one curve for even more clarity:

1 Like

Actually i found this video Quelea: Introduction Tutorial - Simple Particle Scene - YouTube
around 13:20 something similar is achieved in a much smaller scale
Will test out and update here

Is this a Sage Jensen? If so, I believe he works with openFrameworks.
Anyway this is most certainly done with OpenGL shaders and a similar effect will be very hard, if not impossible to get in Grasshopper.

I am also unsure if this is achievable in Grasshopper. I think I figured that out. I will try my luck with Houdini, as it might be better suited for this kind of work.

If it was done by a program it must be done in Grasshopper. Grasshopper allows you to use Python c# … so there are quite no limitations. The challenge here is to copy the logic and made an algorithm. The software used Houdini c4d Grasshopper is the least problem.

I’m not convinced, but I’d like to see you try. :wink:

I think the biggest challenge would be to mimic the visuals of the piece, second only being the possibly millions of Breitenberg vehicle-like agents you’d need to simulate this.
If it was done by Sage Jensen there is a great probability that it has something to do with a slime mould (physarum) simulation or something akin to that.

You say that but in my experience at least, Rhino is neither very good at animating stuff (at least without Bongo), nor optimized for FX-like visuals, but it’s also not geared towards that having a huge accurately measured scene and all.

@askealbertus You should really credit the artist, if you post a reference of their work!

Well … you can always fake things (everything is fake these days [including “Art”]). If we skip displacement rendering and the likes this may (?) be a good fake result. So given a few random paths (Curves) in a hugely over simplified case :

Add 1000 main (twisted) Curves, increase the divisions by 100 … do this and that (i.e. a thread safe // thingy) … and be a happy bunny in a couple of milliseconds using some I9K or Ryzen9000 (who’s gonna notice that there’s no particles involved?).

Any chance you could share that ? :grin:

The whole thingy is rather internal (using various Methods that … blah, blah).

But hope dies last: Given any Curve List (paths), the resolution - num of divisions (N), the Enumerable indices collection (0 to N) - for the divPts/Curve params, the “split” in random size chunks - with various ways, some robust // approach etc etc … get the attached as a hint/entry level start on that fake effect matter (plus the poor relative C# for the variable size “dotPts”). (125.4 KB)

For the var size (min-max) chunks of indices > then divPts/Params > then Curve pieces trimmed at min/max Index > etc etc … I would recommend something like this (non :sequential values):

Or (sequential values):

Thank you so much Peter Fotiadis. I will test and try your script out. Very very much appreciated!

If one were to use a point cloud for the links, how you I do so ìn one of the inputs?

What means links? You mean the “chunk” division pts (per Curve in your List) as outlined above? (the pList in the hint C# above). Anyway your pic rather points somehow to Crv div Pts (the one or the other way). That said the indices in chunks may vary vastly (thus the results) according the way that you sample them.


That said the N (resolution) may vary in the very same way that the poor relative C# does business (the “dotPts” number is proportional to Curves Lengths acc the 2 ways defined by the mode option).

But if you have a zillion Curves … who cares? who’s gonna notice that?

Note: is a good challenge for you that one (mid C# level required). If on the other hand you want the Split Indices C# (that’s not classified) drop a word.

Thanks and seriously this gh file is cracking me up. Thanks a million

This is the prelude (of the prelude (of the prelude))) but no pain no gain.

Get the Rnd Split C# and post here your 1st take on that Curve chaos matter.

Given some valid Curve List and the result of the above (i.e. the Indices Tree), do the required Trees (Splitted Curve pieces, related div Points and div Params) for the 2nd part. The 3rd is the one that does the freak show. (11.0 KB)

BTW: with a little tweak here and there … the result could fake a Particle solution. For instance this is an entry level very simple PS (with attractor(s)) … that could look “like” (kinda, but anyway) the images above . But since we are talking aesthetics here … well … you’ll need an interactive (on the fly) approach to manage attractors (that pull/push Particles emitting from the Crv div pts) PLUS some history tracking policy for the results in order to pick “the best”. That’s more or less easy … but impossible to do without code.

Note: of course a PS solution could be waaaaay faster than the fake thingy as briefly outlined above. Say 20M+ Particles in 20-50 milliseconds (or so) using some proper I9K + a thread safe // thingy + Karma + Vodka.

1 Like