Volume ingombro solido che si muove

Buongiorno

ho un vecchio e irrisolto problema che si ripresenta di tanto in tanto.

devo trovare il volume di ingombro di un solido che si muove ( traslazione , rotazione ecc ) nello spazio.

il tutto mi serve per trovare l’ingombro occupato dal solido in movimento ed evitare interferenze con oggetto circostanti.

il fatto è che non so se e come sia possibile generare questo solido di ingombro in quanto ho sempre e solo creato solidi traslando superfici ma mai solidi.

Grazie x eventuali consigli :wink:

Ciao, io proverei a fare una definizione con Kangaroo su Grasshopper.
Sotto un link ad un video che era stato postato tempo addietro da Luca Filippone (in altra discussione dove il Giuspa spiegava come fare una animazione).

Credo che, durante il movimento, si possa fare una verifica di intersezione tra due gruppi di oggetti (purtroppo non sono molto ferrato su GH e non ho mai utilizzato Kangaroo).

Ti allego anche il link alla discussione dove trovi un esempio di animazione (che potrebbe tornarti utilie).

Allego anche un file con un esempio di costruzione del volume di rotazione fatto in maniera più empirica…
Prova_Volume_Rotazione.3dm (757,6 KB)

Uno spunto con Grasshopper.
meccanica.gh (19,1 KB)

1 Mi Piace

Grazie per gli utili spunti Lucio

Kangaroo effettivamente non lo uso in maniera operativa nemmeno io però appena riesco c provo.
quello che interessa a me è proprio trovare il solido di involuzione per poi scaricare le parti accoppiate tramite differenza booleana ed evitare quindi interferenze in fase di rotazione , siamo quindi oltre la verifica ma già nella modellazione.

l’Obbiettivo verrebbe raggiunto nell’esempio 2 da te allegato " prova volume rotazione " ma il fatto è che ad esempio nel caso del tasto le superfici hanno un andamento abbastanza complesso rispetto all’esempio , sia come forma ( curva ) che come asse o piano di riferimento per il calcolo di quella che sarebbe la crv silhouette da usare poi x ricavare le crv al punto 3 tuo esempio

mi è quindi chiaro il workflow ma ho difficoltà a riprodurlo nei casi con forme più complesse

Se vuoi inviarmi, anche in privato, un esempio del pezzo da “volumizzare” con gli assi di rotazione/spostamento, magari riesco a trovare un metodo più efficiente (giusto per capire la complessità dei movimenti).

1 Mi Piace

ti ho inviato il tutto in privato , grazie mille :wink:

Con kangaroo puoi tracciare le traiettorie dei corpi rigidi, tracciando pollinee che puoi utilizzare per gli ingombri.

2020-11-19_09-47-14

Senza scomodare kangaroo… molto più snello se non devi occuparti di cinematica diretta, ma ti bastano posizioni e ingombri.

1 Mi Piace

Per forme semplici, ma va perfezionato.
img5
ingombri1.gh (21,3 KB)
Aggiornato.
ingombri2.gh (15,3 KB)

1 Mi Piace

con qualasisi forma funziona. Traccia anche il percorso dei vertici (o eventuali altri punti) per uno studio cinematico vettoriale.

L’asse di rotazione è esterno alla forma.
Va bene anche con il punto di rotazione interno alla forma?

Non dovrebbe cambiare nulla.

Così tanto per complicare un po’ le cose.
Una forma così?
img6

1 Mi Piace

lungo un qualsiasi percorso.

1 Mi Piace

Buonasera ragazzi e grazie mille per le risposte , che dire , tanta roba !!!
@ Luca Filippone : potresti condividere la definizione o mettere uno screenshoot della definizione senza fancy icon ?
io appartengo alla scuola delle icone con scritta.

Grazie ,buona serata

Percorso circolare:

Percorso non circolare,

Il traiettoria da seguire è circolare?

grazie x l’immagine appena inviata Luca ,

molto interessante il data rec component , non l’avevo mai usato.
Dando un’occhiata alla tua definizione vedo che tu fai un deconstruct della brep rappresentante il body da muovere e poi ne estrudi gli edge e vertex.
A mio avviso , correggimi se sbaglio, questo non garantisce la creazione del solido di massimo ingombro in quanto non è detto che gli edges giacciano su quella che per certi versi e con riferimento alla tangente della traiettoria percorsa può essere vista come da crv di disione stampo.

è pur vero che però l’immagine sembra dimostare il contrario…non so s c sia altro, devo studiarci sopra

Grazie

assolutamente no, non lo garantisce (con la prima definizione). La maniera più corretta è mettere ogni gruppo di brep nel posso opportuno e fare una unione booleana, cercando di dividere la curva in molti punti (seconda e piu semplice definizione). Possono servire anche 10 minuti per un buon risultato, ma fatto il bake hai ciò che ti serve.

Luca ,
i dati noti per me sono l’asse di rotazione ( o la crv che descrive la traiettoria del solido) , il solido da spostare ( ruotare , traslare ecc ); noto questo devo ricavare il solido di sottrazione.

Mi sembra che c sia quindi un primo approccio più semplice basato sul estrudere degli edge e dei vertex ( che però non garantisce la creazione del massimo ingombro ) e un secondo approccio più preciso basato sul creare n copie del solido da muovere e poi sommarle in maniera booleana fino a creare un solido unico di rotazione giusto ?

ovviamente maggiore il numero di copie ( nel senso di più fitto ) e maggiore la smoothness del solido finale ,che comunque sarà sempre a gradini , per quanto piccoli.

ho capito bene ? se si non capisco il perchè dei 10 minuti nel secondo approccio?

se invece non ho capito nulla potresti postare la definizione così da provare a farla girare e capire la logica ? Grazie