List item and sort list

Buongiorno, ho realizzato una maglia di punti da proiettare sul fondale marino per la realizzazione di pali in calcestruzzo. Ho collegato i punti e prolungato la linea oltre il fondale per ottenere un ancoraggio. A questo punto dovrei creare delle liste in base alla lunghezza dei pali e uniformare con un step da 1 metro; per esempio 5.00, 6.00, 7.00, 8.00 ecc.
come posso procedere? (10.6 KB)
saluti e grazie
Hello, I made a mesh of points to be projected on the seabed for the construction of concrete poles. I connected the points and extended the line beyond the bottom to get an anchor. At this point I should create lists based on the length of the poles and make them uniform with a 1 meter step; for example 5.00, 6.00, 7.00, 8.00 etc.
how can i proceed?
greetings and thanks

Can’t view your definition, I think you missed an internalised mesh:

ti invio il file della mesh da interiorizzare (540.5 KB)
Penso di aver inserito la mesh. Scusa ma sono le prime volte che utilizzo Grasshopper

Do you understand that only 85 out of 300 points are projected onto the mesh?

P.S. (543.5 KB)

Non è un problema. Devo ruotarlo per trovare la posizione corretta.
Non capisco perchè visualizzo gli elementi in Rhino solo se tocco le icone dei componenti Grasshopper devo attivare qualcosa?

Translation from Italian:

It’s not a problem. I have to rotate it to find the correct position.
I don’t understand why I only see items in Rhino if I touch the Grasshopper component icons do I have to activate something?

Sorry, I left the green icon selected in the Canvas Toolbar (“Only draw preview geometry for selected objects”). Click the red icon next to it and that problem will go away.

Here is a dressed up version of the same model. I deferred creation of the circles (now cylinders) until I needed them, using only points in your first group. (557.1 KB)

The radius of the cylinders (concrete poles) is extreme compared to their lengths?

non ho capito bene la domanda… comunque hai fatto un lavoro fantastico. Io ho appena iniziato con Grasshopper e tante cose non capisco e non so se ti posso chiedere altro. comuque le lunghezze dei pali riguardano tutti forse bisogna inserire ancora. Il pannello Lengths e bloccato come lo posso sbloccare e inserire altri dati?

Google Translation from Italian: (please do this yourself?)

I didn’t quite understand the question… however you did a fantastic job. I have just started with Grasshopper and I don’t understand many things and I don’t know if I can ask you more. however the lengths of the poles concern everyone, perhaps we still need to insert. The Lengths panel is locked how can i unlock it and enter other data?

The “pole” lengths are derived from the projected points and rounded up to the next integer value, you don’t want to modify those manually.

The yellow group (below) sorts the results by pole length, including the colors. There is also a ‘total length’ text panel added to show the sum of all the poles. Why is the pole radius so large compared to pole length? (563.5 KB)

Perhaps what you want is the green group in this version, RoundTo fraction, which is now set to 0.25 units (1/4 of a meter)? Instead of only six different lengths, now there are 15 different lengths. (565.4 KB)

Rounding to 0.5 meters (units) results in eight different lengths at this rotation angle.

Molto bene! Ho studiato attentamente lo schema e stiamo arrivando a un risultato per noi incredibile.
Se posso chiedo ancora alcune cose:

  • ho sistemato la quota di sommità dei pali così compaiono tutti;
  • ho capito a cosa serve ma non capisco come funziona il gruppo dei componenti “CREATE SET”
    e “MEMBER SET”
  • ho mantenuto fissa la quota di sommità dei pali e la lunghezza arrotondata verso il basso.
  • utilizzando Tekla avrei la necessità di poter suddividere con un filtro i 10 gruppi creati in base alla lunghezza e creare out put per Tekla (563.0 KB)
    e grazie ancora!

Prego. Si prega di pubblicare in inglese?

Google translation:

Very well! I have studied the scheme carefully and we are arriving at an incredible result for us.
If I may ask a few more things:

  • I fixed the height of the top of the poles so they all appear;
  • I understand what it is for but I don’t understand how the “CREATE SET” component group works
    and “MEMBER SET”
  • I kept the height of the top of the poles fixed and the length rounded downwards.
  • using Tekla I would need to be able to subdivide the 10 groups created based on length with a filter and create outputs for Tekla

Create Set and Member Index are well documented on the forum.

I will not install Tekla:


As to “subdivide the 10 groups created based on length”, they are already organized by length as branches before connecting to ColorB. The MIndex ‘I’ (Index) output is very useful for that.


Perhaps what you are asking for is a list of point numbers for each length? That is exactly what MIndex ‘I’ (Index) is providing, before the set of lengths is sorted. The orange group below reorganizes those branches to match the sorted lengths. (562.6 KB)

now I study this hypothesis well. thank you so much

Hello, this is the final version I have arrived at. I wanted an opinion on any improvements or simplifications. (588.9 KB)


No, this is not optimal at all. Drawing lines to measure their lengths is not necessary. The yellow and orange groups in my last post already had a list of lengths and corresponding grid indexes. The list of quantities is the length of each branch in the orange group.

You could have used Explode Tree, though that usually isn’t advised or necessary because it’s not parametric. Your solution using List Item and Branch is not parametric either. Both will fail if the number of branches changes. You don’t understand Grasshopper data trees.

By the way, avoid passing data through text panels.

Sad to see what has happened to a beautiful model I don’t know what you need for your Trimble components so won’t try again. Good luck.

Please consider the blue group (‘Summary Data’) added at the bottom of my previous model. All the information was already available. (554.9 KB)

You can get a more abbreviated format by editing the Expression component to remove the words “Length:”, “Count:” and "Points:, leaving just this: “{0}|{1}|{2}”.