Grasshopper

algorithmic modeling for Rhino

Dear All

I try to create a DTM (digital terrain model) based on level curves (the curve that have height information, I'm not sure about the English term). I've already checked various plug-in also for rhino like terrain, terrain in 3DS max etc, but I the result isn't enough for precision request mine, and I've also try with patch surface directly on the level curves.. terrible!!!
I have found an Italian video tutorial (you can download at the following page http://www.treddi.com/forum/topic/4543-modellare-un-terreno-con-rhino/ ) basically the main steps are the following:

1) create multiple section of the level curves in U direction (using contour command)
2) create poly line trough these points
3) create multiple section of the previous poly line in V direction
4) create poly line trough the last points
5) create network surface.

I'm trying with GH because I've an huge area (around 350x500 m) and a large number of level curves, at the end I've a crazy number of poly "self made draw". I'm newbie of GH (just few months), but I've done the step n. 1, the my problem is that the result points are unorganized (or not organized like I want ;-)) and GH cannot correctly do all the line.
Enclosed you will find the 3dm and ghx file, any suggestion?
I hope I made myself clear!

Best
Andrea

In Italiano
Ciao Ragazzi vi riassumo in italiano il mio problema scritto veramente male e di fretta in inglese.
Devo costruirmi il modello digitale di un area collinare di dimensioni circa 350x500 m, con una discreta precisione (necessità di controllare sterri e riporti a seguito di una edificazione). Ho provato varie soluzioni e plug-in tipo terrain o altro, ma i risultati sono scarsi per il mio livello di definizione e aumentando i parametri il computer (non proprio da buttar via) si impalla.
Il grande philix su treddi ha postato questo tutorial che sembra fare al caso mio (http://www.treddi.com/forum/topic/4543-modellare-un-terreno-con-rhino/) il problema è che, dato l'area e il numero di curve di livello, alla fine potrei passarci una settimana e perderci la vista per disegnare a mano tutte le polilinee, vi riassumo in breve i passaggi di philix:
1) creo delle sezioni a passo costante delle curve di livello in una direzione U
2) mi faccio delle polilinee semplicemente unendo i punti appena trovati (continuando riga per riga)
3) creo delle sezioni a passo costante in direzione V delle polilinee appena disegnate in direzione U
4) punti come al punto 2
5) network surface

Ho provato con GH (sono un neofita) e sono riuscito a fare il punto 1 del tutorial (beh non è molto difficile) ora il problema è che se chiedo a GH di provare a disegnare polilinee, di qualsiasi grado, mi restituisce un errore, poichè i punti non sono "organizzati" (o meglio non come vorrei io hihihihi), e pertanto non mi disegna nessuna polilinea. Le ho provate tutte, cercare di riunire le liste, provare a ordinarle, ma niente proprio non riesco, vi prego aiutatemi.

Vi posto sia il modello 3dm che il ghx.

Grazie
Andrea

Views: 4341

Replies to This Discussion

Hi Andrea

 

Enclosed you will find the 3dm and ghx file, any suggestion?

No files attached.

 

There was recent thread about 2D sorting that could easily be applied to this problem.

http://www.grasshopper3d.com/forum/topics/sort-mesh?commentId=29852...

Thanks a lot for your reply..

Unfortunately  I've some problem to upload the file, I'll try again. In the meanwhile I look for the suggested thread.

 

Best

Andrea

Method in the attached file.

find closest pts to the XY plane

then sort based on X and Y coordinates

create one big polyline that zigzags along

Cull the longest sections of polyline (thus grouping those pts with the same X)

Join Curves and get Control Pots for InterpCrv Component

Loft.

Attachments:

Tanks a lot Danny, I'm starting to study your definition, I keep you update on next steps.

Tanks again

Dear Danny

From a quickly watch over of your definition "sounds strange" (for my skills) to create only one poly trough all points due the large number of point that I will have. Switch on the interpolated curve (befor the loft), I've found a little bug (always for my skills) there is strange curve that link "opposite points". At the end, by my point of view, the optimized workflow is to have the points row by row (I don't know if the bounding box could be used to solve my request) just to have an additional control. Just to control the final result I've checked the result with the loft (your solution) and the network surface (created using 2 time the definition first on level curve, second on the first poly).

 

Let me know wath do you think.

Andrea

Attachments:

It's not a bug. Its the way that I've grouped the pts with the same x coordinates together.

create one big polyline that zigzags along

Cull the longest sections of polyline (thus grouping those pts with the same X)

Just ignore the polyline at that part of the definition and keep going until the join.

Hi Andrea:  unfortunately this ghx is not compatible with the latest versions of grasshopper.  do you have an updated version of the dtw.ghx?

Al

File worked at my end, GH v0.8.0007, although it did create a funny glitch I lost the ability to use the delete key and ctrl X etc Shutdown Rhino and restarted worked fine.

Worked in the 32 bit version of rhino v5 not in the 64 for some reason.  of course the red control point box still happens. 

 

dtm 2d sorting operates as advertised.

thanks

 

Hi Danny:  Suppose I wanted to produce plane surfaces at the level of each of the terrain lines.  I've been pondering it.  A surface parallel to the base rectangle and split at each terrain line?

If you are able to close the terrain lines, possibly with some extra lines on the boundary, then you could use the planarSrf component to create those srfs at each level.

But otherwise, yes, if you created a bounding box for each terrain line you would get a flat box that you could split with each curve. The tricky bit is which trimmed srfs do you discard.

RSS

About

Translate

Search

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service