-- A T T E N Z I O N E --
Il tutorial qui di seguito riportato è stato scritto parecchi anni fa e si riferisce alla versione 3 di rhino.
Con la versione 4 alcuni comandi, come ad esempio il sezione multipla, sono stati migliorati permettendo di sezionare anche entità bidimensionali e facendo venire meno alcuni passaggi descritti in questo tutorial.
Recentemente mi sono trovato a rispiegare la modellazione di un terreno mediante l'ausilio di rhino "liscio".

A questo link potete scaricare la registrazione:
Rhino_ModellazioneTerreno2010.avi (Tasto destro e salva collegamento con nome)
Il codec per visualizzare il filmato è il TechSmith ed è sconsigliato l'utilizzo di VLC Player perchè tale software tenta interpretare il filmato per fatti suoi fregandosene del codec con risultati pessimi.

Tenete conto che il tutto è stato registrato a volo senza pensare che sarebbe stato pubblicato come tutorial e quindi perdonate qualità del linguaggio e tentennamenti :)

Tenete anche presente che questo metodo di modellazione non è nè l'unico nè il migliore.
Nelle pagine di questo thread il discorso si è evoluto e sono state presentate altre soluzioni.
Inoltre se doveste avere bisogno di un terreno sotto forma di mesh e non di NURBS allora una delle soluzioni più veloci è l'utilizzo del plugin gratuito Point Set Reconstruction

------------------------------------

Spesso mi sono trovato a combattere con vari software cercando di generare un terreno “decente” partendo dalle curve di livello.
I risultati ottenuti sono sempre stati abbastanza schifosi e non mi hanno mai soddisfatto.

In questo periodo ho iniziato a studiarmi approfonditamente Rhino e mi si è presentato nuovamente l’obbligo della modellazione di un terreno.

Qui di seguito troverete illustrati i vari passaggi che mi hanno portato alla generazione del terreno ed alcune considerazioni sui comandi e le procedure adottate.

NB
Quando troverete, nel testo e nelle descrizioni, dei riferimenti alle immagini dovrete guardare sempre la figura sovrastante il testo che state leggendo.


Tut curv liv001
Prima di tutto ho preparato le curve di livello. Ho ritagliato in un rettangolo il pezzo di terreno che mi interessava, gli ho assegnato la loro quota e ho lasciato tutte le curve “aperte”.

Tut curv liv002
Il rettangolo di ritaglio l’ho posizionato su di un layer a parte chiamato “scarti e linee di costruzione” che utilizzerò come una sorta di cestino dove buttare tutte quelle linee che forse non servono o forse serviranno in futuro.

Tut curv liv003
Ho creato un layer chiamato “sezioni di bordo” dove voglio disegnarvi i bordi che seguono, in pianta, il rettangolo di ritaglio e, in alzato, le curve di livello.
Però per fare questo devo prima stabilire a che quota devono trovarsi i punti d’angolo.
Nella figura sovrastante si nota come il punto (inserito con il comando Point ) sia posizionato a metà delle due quote.

Tut curv liv004
Una volta stabiliti i punti si può procedere al disegno dei profili di bordo mediante il comando InterpCrv
Questo comando vi  permette di disegnare delle curve morbide passanti per i punti che inserite.
Lascio a voi la scelta dei parametri da utilizzare con questo comando.
Io solitamente utilizzo Degree=3 Knot=SqrtChord

Tut curv liv005
Siccome preferisco che le curve terminino con delle tangenti orizzontali mi costruisco, sugli spigoli, delle linee di costruzione orizzontali e inizio e termino le mie InterpCrv  sui punti finali.
Ovviamente creo le InterpCrv  con attivati gli osnap END e POINT

Tut curv liv006
Ecco il risultato finale dopo aver tagliato le InterpCrv  sugli spigoli tramite il comando Trim
NB
Le linee di costruzione sugli spigoli non le ho cancellate ma le ho spostate sul famoso layer “scarti e linee di costruzione”


Tut curv liv007
Terminata questa fase possiamo entrare in quella successiva ma, prima di iniziare, bisogna che ci creiamo dei nuovi layer dove andremo ad inserire le varie entità che produrremo.

Tut curv liv008
I layer da creare sono: "X Piani di Sezione", "X Punti", "X Sezioni", "Y Piani di Sezione", "Y Punti", "Y Sezioni".
Inserendo la X e la Y iniziale potremo avere i nostri layer in ordine alfabetico per una più veloce individuazione.
Rendiamo corrente il layer “X Piani di Sezione” (per renderlo corrente bisogna clickare con il mouse a sx del nome)
Attiviamo il Project negli osnap e disegniamo una linea sulla base lunga del rettangolo.
Con il comando Divide, dividiamo in segmenti la linea appena creata.
Nel mio caso l’ho divisa in 25 parti; più numerose saranno le parti più dettagliato sarà il modello del terreno.
Disegniamo una linea partendo dal primo punto interno al segmento (non bisogna considerare i punti alle estremità) e, con il comando ExtrudeCrv,  estrudiamo la linea.
Con il comando Copy (o con il comando Array) ci creiamo delle copie del piano appena creato e le posizioniamo ognuna su di un punto del segmento.

Tut curv liv009
Selezioniamo il segmento e i suoi punti e spostiamoli nel layer “scarti e linee di costruzione”
Rendiamo attivo il layer “X Punti”
Controlliamo che le curve di livello siano tutte unite e non ci siano “parti spezzate” (nel caso ci fossero curve divise provvedere alla loro unione con il comando Join)
Selezioniamo i piani e le curve di livello (dalla vista Top la selezione è sicuramente più facile) e digitiamo il comando Intersect (vedremo comparire tanti bei puntini che indicano l’intersezione tra le curve di livello e i piani)
Selezioniamo di nuovo i piani e le due curve di bordo del lato lungo e richiamiamoci il comando Intersect
(bisogna eseguirlo due volte perché se selezioniamo i piani, le curve di livello e le due curve di bordo, il comando intersect creerà dei punti anche nelle intersezioni tra curve di livello e curve di bordo)
Spegniamo tutti i layer tranne quello attivo in maniera tale da avere su schermo soltanto i punti creati.

Tut curv liv010
Cancellate tutte le entità che non sono punti (linee e segmentini creati dal comando Intersect)
Selezioniamo tutti i punti e chiamiamoci il comando PointCloud
I punti verranno trasformati in una “nuvola”
Accendiamo e rendiamo attivo il layer “X Sezioni”
Selezioniamo la nuvola di punti precedentemente creata e scriviamo il comando PointCloudSection.
Togliamo la spunta a “Create smooth curves”
Mettiamo la spunta a “Create polylines”
Scegliamo “Create open curves”
Inseriamo dei valori di tolleranza molto bassi e diamo l’ok
Adesso Rhino ci chiederà di inserire due punti che gli indicheranno il piano di sezione.
Se avete già utilizzato il comando Section sarà facile per voi sezionare la nuvola e creare delle sezioni.
Verranno create delle polylinee spigolose che uniscono i vari punti.
NB
Le sezioni devono avere la direzione dei piani utilizzati per la creazione della nuvola dei punti


Tut curv liv011
Alla fine del procedimento vi ritroverete con delle polylinee spigolose.
Creiamo un nuovo layer chiamato: “X Sezioni Morbide”
Rendiamolo attivo.
Digitiamo il comando CurveThroughPolyline
Selezioniamo le curve create precedentemente e giochiamo coi parametri per vedere la migliore soluzione
NB
Affinché la curva ammorbidita passi per i punti di sezione bisogna scegliere come CurveType=Interpolation
Personalmente utilizzo Degree=3 Knot=SqrtChord
Le curve create in questa maniera non termineranno con delle tangenti orizzontali; per farle terminare con tangenti orizzontali bisogna duplicare e spostare verso l’esterno l’ultima riga di punti prima di trasformarli in nuvola e tagliare le linee dopo la loro generazione e il loro “ammorbidimento”.


Tut curv liv012
Adesso non rimane che eseguire la stessa operazione nell’altra direzione
Però questa volta i piani creati li intersecheremo oltre che con le curve di livello e le curve di bordo del lato corto anche con le sezioni precedentemente create.
NB
Bisogna utilizzare il comando Intersect 3 volte
1) selezionando i piani e le curve di livello
2) selezionando i piani e le curve di bordo
3) selezionando i piani e le sezioni morbide precedentemente create

Tut curv liv013
Volendo si potrebbero cancellare le sezioni presenti sul layer “X sezioni morbide” e “X sezioni” e generarne altre mediante l’intersezione dei piani con le curve di livello e le “Y sezioni”

Immagine inserita
Si può procedere con PointCloud e PointCloudSection ma questa volta bisogna fare attenzione perché ci sono dei punti molto vicini e il PointCloudSection, se settato con valori di tolleranza errati, potrebbe creare sezioni incasinate.
Se non volete scemunirvi con i parametri vi consiglio di creare tutte le sezioni, cancellare quelle incasinate e ripassarle a mano con il comando Pollyline.
Una volta che avrete ripassato tutte le curve e le avrete "ammorbidite" con il comando precedentemente descritto potrete lasciare accesi i layer:
“Sezioni di bordo” “X Sezioni Morbide” “Y Sezioni Morbide”

Tut curv liv015
Non rimane che crearsi un nuovo layer chiamato ad es. “Terreno”, renderlo attivo, selezionare tutte le curve e, mediante il comando NetworkSrf, generare la superficie finale.
Certe volte, durante il procedimento, si possono creare delle linee sovrapposte che non piacciono al comando NetworkSrf; se il comando fallisce molto probabilmente è proprio a causa di queste linee.

Qui trovate il file di riferimento:
http://www.treddi.co...livello_010.zip

NB
Questo procedimento contiene molte azioni automatiche che possono generare casini.
Sta a voi controllare la generazione delle linee e dei punti man mano che andate avanti e correggere manualmente eventuali strafalcioni grafici creati in automatico.
Questo metodo crea una superficie che assomiglia al terreno ma non è l’esatta rappresentazione.
Una volta che avrete preso mano con questa tecnica potrete anche intensificare il numero di piani nelle zone dove credete che ci sia bisogno di più dettaglio.


PS
Siccome questo metodo è ancora sperimentale e non è precisissimo gradirei ricevere impressioni, suggerimenti, correzioni e cazziatoni sia in questo thread che a philixspam@gmail.com

---
Questo articolo è stato importato automaticamente dal forum il 31/lug/2014
Per vedere il post originale e/o i commenti sul forum prima di quella data clicca qui