Microforature

Buongiorno a tutti mi trovo spesso a progettare oggetti di questo tipo in cui poi devo fare delle microforature di diametri variabili da 0.5 a 0.8mm ecc… di diametro, i microfori possono essere 100 200 ecc; il problema non è farli ma il tempo che impiega il software a realizzarli sia che siano superfici che mesh (tendenzialmente uso le mesh che creano meno problemi ).
Come risolvere il problema per velocizzare il tutto; pensavo di fare questo ultimo passaggio in Blender o software similari è la stada giusta?
Aspetto suggerimenti.
P.S. Essendo realizzati con tecnologie particolari non CNC li devo realizzare per forza


Grazie

Ciao Antonio,
domanda banale… lanci la differenza booleana selezionando tutti gli elementi in un colpo solo o fai a step selezionando ad aree?

ciao Antonio,
hai provato a fare le booleane utilizzando le estrusioni leggere ?

ciao, Andrea

1 Mi Piace

Ciao Antonio, parliamo di quanto tempo?
Hai provato a lavorare in vista wireframe?
Io di solito lavoro in vista ombreggiata ma, quando faccio le booleane per forare i pavé di gioielleria, passo alla vista wireframe con un risparmio di tempo considerevole.

1 Mi Piace

La mia idea è quella di disegnare una singola cellula e riprodurla con un array.
L’ho realizzata con Grasshopper perché mi viene più facile.
Per un array 15 x 15 il tempo di elaborazione del programma è meno di 10 secondi.
Per la trasformazione in mesh ho utilizzato ShrinkWrap (5 sec.)(Rhino 8)
fori b.gh (67,7 KB)
fori.3dm (16,6 MB)
fori1.3dm (11,0 MB)

2 Mi Piace

Ciao Antonio !

Non saprei con le mesh …
Ma per le superfici, il tempo elevato potrebbe dipender dalla complessita’ del solido di partenza.
Bisognerebbe conoscere la strategia di modellazione.
Forse cambiando qualcosa si trova il modo di lavorare su solidi piu’ semplici.
Al limite anche utilizzando delle superfici.

Personalmente ricordo una elevata sensibilita’ di Rhino 6 al numero di superfici da unire in caso di Join, almeno sul PC che usavo …
Diciamo che unire in una sola operazione 10000 superfici poteva essere molto lungo …
Mentre fare 5 o 6 operazioni su gruppi con meno superfici era quasi immediato.

Ciao ragazzi e grazie per le risposte
Lucio lo faccio a step
Andrea cosa intendi per estrusioni leggere?
Gambler parliamo di mezzora 15 min facendole a step, uso pure io wireframe cosi non ricalcola le mesh per vista Shaded
Leopoldo purtroppo sono oggetti diversi per cui non posso fare array e dove in “teoria” potrei è un casino riuscire a suddividere le “singole cellule” perchè spesso sono forme amorfe.
Emilio purtroppo i solidi di partenza sono complessi ed è impossibile sempificarli, con le superfici ho provato ma è un bagno di sangue :rofl:.
Basterebbe avere un modellatore che sfrutta tutti i processori non uno solo ne conoscete qualcuno?
Grazie ancora

2 Mi Piace

Altra domanda banale: file di esempio per fare una prova?
Ho cercato di creare una situazione da 100 fori ma non noto tempi così lunghi… probabilmente le tue superfici sono molto più complesse.

1 Mi Piace

Ciao Lucio purtroppo per riservatezza non posso postare nulla :wink:, appena riesco vedrò di modellarne uno con caratteristiche simili.
Il mio Pc
AMD Ryzen 9 3950X 16-Core Processor
NVIDIA GeForce RTX 2060 SUPER
RAM 64GB
Grazie

In effetti, vista anche la macchina, i tempi sono decisamente lunghi.
Mi capita regolarmente di fare operazioni simili, con qualche centinaia di fori e su superfici piuttosto complesse, ma parliamo di un paio di minuti al massimo.

ciao Antonio,

dalla guida di Rhino 6

Estrudere curve e superfici

Le estrusioni usano una curva o una superficie di base per creare una forma aperta o chiusa. Le estrusioni possono essere delle polisuperfici oppure degli oggetti “estrusione leggera”.


Polisuperfici (rosso); oggetti estrusione (blu).

Oggetti “estrusione leggera”

Gli oggetti “estrusione leggera” usano solo una curva di profilo ed una lunghezza come input, anziché la rete di isocurve normalmente necessaria per gli oggetti NURBS. I comandi Parallelepipedo, Cilindro, Tubo, EstrudiCrv ed EstrudiSrf creano degli oggetti estrusione. Gli oggetti estrusione possono essere chiusi con una chiusura piana oppure aperti. Se necessario, questi oggetti si possono trasformare in polisuperfici per aggiungere ulteriori informazioni per l’editing.

Gli oggetti “estrusione leggera” usano meno memoria, vengono convertiti in mesh più velocemente ed occupano meno spazio rispetto alle polisuperfici tradizionali.

Nei modelli contenenti un gran numero di estrusioni rappresentate da polisuperfici tradizionali, le prestazioni possono risultare lente a causa di una richiesta di risorse relativamente alta. Se gli stessi oggetti vengono generati all’interno di Rhino come oggetti “estrusione leggera”, tali modelli presenteranno una maggiore velocità di risposta e sarà disponibile una maggior quantità di memoria.

Il comando UsaEstrusioni controlla l’uso degli oggetti “estrusione leggera”. Per far sì che i comandi che normalmente creano delle estrusioni creino delle polisuperfici tradizionali, selezionare l’opzione Polisuperficie.

Comandi interessati

(missing or bad snippet)

Il comando UsaEstrusioni controlla l’uso degli oggetti estrusione.

  • Quando UsaEstrusioni risulta attivato, i comandi di Rhino che creano solidi e superfici semplici useranno gli oggetti estrusione quando possibile.
  • Quando UsaEstrusioni è disattivato, Rhino userà gli oggetti superficie e polisuperficie.
  • La disattivazione di UsaEstrusioni non modifica gli oggetti estrusione esistenti.

ciao Andrea

1 Mi Piace

@Andrea grazie per la spiegazione sono tutte considerazioni importanti da tener conto quando si lavora :+1:

una domanda forse OT rivolta a tutti: un oggetto avendo la stessa forma ma realizzato in modi diversi come spiegato, quindi Polisuperfici o Estrusione convertendoli poi in Mesh possono avere risultati diversi?

Ciao Andrea adesso ho capito usando da 15 anni Rhinoceros in inglese mi sfugguno i comandi in italiano, la risposta è si ma i tempi sono biblici.
Grazie

Se un modello viene realizzato in modi diversi (comandi diversi) il risultato è diverso sia nelle superfici e di conseguenza nelle mesh, vedi allegato.
forum1.3dm (3,4 MB)

Sì certo, ma credo che Salvio non si riferisse a geometrie realizzate con differenti comandi, quanto piuttosto al confronto “diretto” tra estrusioni e superfici. :wink:
La risposta mi pare sia sempre affermativa.
Nel caso delle estrusioni si ottengono mesh con meno vertici e facce.
Sarebbe interessante capire il perché di questo comportamento. :thinking:

… attendiamo.


L’idea, mi sa, è quella di buttare su qualche script che poi lavori multithreaded.
Il mesh collider di Rhino 7 è sicuramente single-thread (appena provato).
Hai provato con Rhino 8/WIP ? Hanno rifatto il collider da zero, mi pareva di capire…

dalla foto direi proprio di si, e questo credo che sia uno di quei casi dove si può osservare la differenza tra un utilizzatore di Rhino ed un professionista, dove quest’ultimo già prima di mettere mano al CAD sapendo quale deve essere il risultato finale, già sa come iniziare un lavoro e quali strumenti/strategie adoperare.

ps una cosa non comprendo, come mai dove ho messo le sottolineture in rosso non ci sono i vertici?
essendo che alla riga sopra e sotto invece i vertici ci sono in tutte le intersezioni delle mesh, mentre poi dove si tracciano gli esagoni in quei punti i vertici sono presenti anche sulla linea centrale. . .

Ciao, argomento che capita a fagiolo. Mi sono trovato in una sitazione simile → aggiungere 1935 sferette ad una suola. Nel mio caso si trattatava di tante mesh da unire ad una, ma il ragionamento mi sembra simile.
Purtroppo non ti so fornire una soluzione completa perchè per varie ragioni a me non ha funzionato ed ho dovuto ovviare raggruppado (grazie santo GH) a 20 a 20 tutte le sfere e boolenanizzare gruppo dopo gruppo (mezza giornata). Tutto insieme non ne voleva proprio sapere.

Però… mi sono imbattuto in queste due discussioni sul forum eng:

c’è uno script c# che non ho provato ad utilizzare perchè non ci capisco niente (mentre python ho iniziato a studiarlo e qualcosa potevo farci), ma magari a te basta usarlo.

Da queste ho ricavato/un pò messo le mani su questi script GHpython:


Multi_Diff_MESH.gh (15,4 KB)


Multi_Diff_NURBS.gh (14,3 KB)

inutile dire che ho avuto qualche problema a convertire da boolendiff a boleanunion e dato che il tempo stringeva ho preferito proseguire alla vecchia maniera. Quindi gli script sono rimasti ai tentativi fatti.

Detto questo, nel tuo caso c’è una piccola differenza e potrebbe esserci una soluzione che puoi provare: dato che i fori sembrano essere distribuiti 1 x ogni incavo, forse risulta meno pesante se fai l’operazione con la polisuperficie esplosa.
E quindi trimmando tubo con srf incavata e srf con tubo.
Oppure razionalizzando modulramente la polisuperficie in tanti solidi accostati, a cui sottrare i fori, e poi riunire con una booleana alla fine.

Grazie mille Alex per la risposta, proverò le due definizioni ma ho dei dubbi che i tempi si accorcino, sulla superficie esplosa ho già fatto delle prove ma è una grossa rottura di scatole e alla fine non sò quanto risparmierei,

Alla fine penso che la soluzione sia trovare un software che utilizzi tutti i processori; se qualcuno sà darmi qualche dritta su software che utilizzano mesh e multiprocessore gli sarei grato.
Grazie mille a tutti quanti

ciao
Spesso per questo tipo di operazioni uso zbrush

http://docs.pixologic.com/user-guide/3d-modeling/modeling-basics/creating-meshes/live-boolean/