Adattare solidi a una superficie

Ciao a tutti!
Vorrei sapere se fosse possibile adattare dei solidi a una superfice?
La situazione è questa… Ho diversi edifici che devo adattare al suolo, ma non si trovano sulla stessa quota, rendendo impossibile usare il comando “Adatta lungo superficie”.
Grazie mille! Spero possiate aiutarmi!!

Ciao Giulia,
prova ccon una definizione GH.


2 Mi Piace

Ciao Leopoldo,
Grazie mille per la risposta, ma purtroppo non so usare GH…
Ti viene in mente qualcosa di più semplice? Allego il file se può essere utile.
Base_Siracusa.zip (9,7 MB)

Mi sembra che tutti gli edifici siano allineati sulla stessa quota, in ogni caso si può risolvere il problema facilmente usando il comando _Align.
Quindi “Allinea lungo la superficie” potrebbe andar bene.
Il problema è che la superficie di base non è una superficie ma una polisuperficie.
In questo caso anche la definizione GH, così come è, non aiuta.
Segnalo che qualche edificio rimane esterno alla superficie di base.
img1

Potresti anche ottenere una superficie unica usando il comando _Contour e _Loft.
Prima di eseguire Loft fare un Rebuild delle curve ottenute con Contour.

Risultato ottenuto con la definizione GH.
Ovviamente gli edifici esterni alla superficie di base non sono stati considerati.
siracusa.3dm (18,3 MB)

Ciao
ti allego uno script. Ti avviso che l’elaboazione richiede molto tempo.
Da tools (strumenti?)
Rhinoscript
Load (carica?)
Seleziona il file .rvb allegato.
Il file viene aggiunto nella lista.
Esegui doppio click sul file e lo script si avvia.
Ti chiede di selezionare il terreno (pick) e di seguito
di selezionare gli edifici (con finestra ecc. - non selezionare il terreno).

Ti consiglio di provare selezionando pochi edifici così avrai un’idea.
Gli edifici completamente esterni al terreno in proiezione verticale
non verranno processati.

Sergio

appoggiaEdifici.rvb (1,4 KB)

2 Mi Piace

Ciao Sergio
Seguivo per curiosità, vorrei osservare che per ragioni ovvie gli edifici dovranno avere sempre una verticalità rispetto al piano x, quindi si “immergeranno” nel terreno in cado non sia piano in quel punto, mentre nelle realtà verrebbe “ospitato” con uno scasso nel terreno

Ovvio, vedi immagine 2/8.

Volevo appunto sottolineare che è un’immagine falsata

Perchè falsata?
I casi sono 3.
O inclini l’edificio seguendo il piano o fai lo scasso dietro o le “palafitte” davanti.

Certo che si deve fare lo scasso cosa che nell’immagine non esiste perché sono semplicemente immersi

Ecco gli scassi.

1 Mi Piace

Leo non ci capiamo, come scasso non si può intendere una semplice differenza boleana ma una elaborazione del lotto su cui insiste l’immobile che non necessariamente è uno scasso pari al volume “immerso”, di solito ci sono aree dedicate a parcheggi, giardini (nel migliore dei casi ) altro…

Ma dai, non è il progetto di una lottizzazione.
É solo un disegno dimostrativo.

Ciao Max

il mio script (di poche righe) semplicemente adagia i solidi “edifici”
sul “terreno” garantendo la “minima penetrazione”. Per fare un lavoro più
certosino servono molti più dati. Tieni conto che lo scopo di questi elaborati
è quello di dare un’idea di massima il tutto riprodotto in un formato carta A0 / A1.

Sergio

Ciao Giulia

Nel caso servisse un calcolo piu’ veloce per qualche motivo,
allego uno script Python.

Si puo’ utilizzare tramite in comando _EditPythonScript

E’ piu’ veloce perche’ e’ specifico per questa polisuperficie di base,
la quale deve essere costituita da una matrice di 64 X 64 superfici rettangolari con le stesse dimensioni in pianta su X e Y orientate parallelamente agli assi.

Utilizza questa proprieta’ per proiettare direttamente ogni punto sulla superficie rettangolare sottostante.

( Qui su Rhino 6 sembra che funzioni, ma … )
Purtroppo nessuna garanzia riguardo al risultato, assicurati di avere una copia del file originale e verifica che il risultato ottenuto sia corretto :slight_smile:

appoggia_edifici.py (2,5 KB)

4 Mi Piace

Ottimo e, soprattutto, veloce.

Ciao Emilio

è strano che la procedura migliori in modo così rilevante.
Me lo sarei aspettato se si utilizzava il metodo Pull ma non
con Project.

Sergio

Ciao Leopoldo. Grazie ! :slight_smile:

Ciao Sergio

Ci speravo.
Avevo visto in passato che in casi del genere (come usare la superficie giusta in una polysurf) i metodi RhinoCommon non sembrano gia’ ottimizzati. Suppongo sia previsto di usare RTree quando serve.

Scusa, perche’ Pull e non Project ? :confused: :slight_smile: