Come tagliare bene una mesh

Ciao a tutti,

Non riesco a capire ancora il metodo corretto di tagliare una mesh.

A volte viene bene se faccio la boleana con una poli
A volte viene meglio se faccio bolean split con una sup aperta

A volte, si “attacca” tutto, qualsiasi cosa io faccio.

Perché? Dove sbaglio?

Si crea questo bordo che è il pezzo della superficie con cui ho tagliato che mi manda al manicomio.

Ora vi faccio vedere il procedimento per intero

Questa è la superficie di partenza

Questa è la superficie che creo: in questo caso è tutto d’un pezzo ma poi sotto è aperta

Ora devo tagliarla

Metodo 1:

Bolean Split

Metodo 2: differenza boleana

Metodo 3: bolean split con solito

Risultato

Metodo 4: differenza boleana con solido

Metodo 5: split normale con risultato eccellente

Ma Nel controllo prestampa, viene poi fuori questo:

Ciao Giovanni,

ti riporto la mia esperienza, riguarda lo split di mesh con Grasshopper, ma immagino che dato che gli algoritmi usati sono gli stessi di Rhino anche i problemi siano simili.

Purtroppo le booleane con le mesh non sono molto affidabili. Tra la varie operazioni (unione , intersezione ecc.) lo split è comunque quella più affidabile (secondo la mia esperienza).

Prima di tutto ti consiglierei di convertire la geometria con cui devi splittare la mesh in un’altra mesh. Tanto questa conversione la farebbe comunque Rhino, ma almeno puoi controllare (ed eventualmente modificare) la geometria usata per lo split variando le impostazioni della conversione.

Poi, nel dover splittare una mesh con una mesh che definisce un contorno rettangolare (simile alla tua situazione) ho visto che se si usa una mesh semplice, con soli 4 bordi lunghi, spesso si hanno problemi, mentre se si suddividono questi lati in più segmenti l’operazione è più affidabile: si tratta di trovare un compromesso tra densità della mesh e affidabilità dello split. Puoi cambiare la “densità” ad esempio variando il parametro Maximum Edge Length.

Se non dovesse funzionare, puoi provare altre due cose:

1 - In Rhino 7 l’algoritmo che fa lo split delle mesh è stato aggiornato completamente, magari nel tuo caso potrebbe fare la differenza (io ancora non l’ho testato sui miei file)

2 - Esiste un plug-in per Rhino e Grasshopper che si chiama Carverino (Carverino | Food4Rhino)
che esegue operazioni booleane su mesh utilizzando un algoritmo specifico (Carve). In certi casi effettvamente funziona meglio dei comandi standard di Rhino 6.

3 - In generale, come per le booleane/intersezioni NURBS, anche con le mesh i problemi possono derivare dalla sovrapposizione di bordi o facce, quindi valgono gli stessi accorgimenti che si usano per le NURBS (ad esempio estendere alcune linee/superfici per avere un’intersezione “pulita” )

Spero che qualche indicazione possa essere utile nel tuo caso :slight_smile:

1 Mi Piace

Fantastiche informazioni Marco,
Grazie ci provo subito!

Il codice per splittare mesh-mesh è stato riscritto per Rhino 7 mentre quello di split mesh with curves sarà rifatto (non in tempo per uscita V7). Se volete chiedo e vi aggiorno.

1 Mi Piace

Ciao Giuseppe, grazie per la disponibilità.

Personalmente mi interessa anche se non è una priorità al momento. In linea di massima è sempre utile sapere quando vengono cambiati degli algoritmi, a me questa notizia era sfuggita, non so se era stata inserita nelle liste delle novità della V7.

Me ne sono accorto per caso, perché una definizione che avevo appena consegnato ha smesso di funzionare, perché nel componente Mesh Split della V6 le parti venivano raggruppate in modo diverso (usando le normali). Ho chiesto nel Forum inglese e Giulio mi ha spiegato tutto.

Effettivamente sapendo che un algoritmo viene cambiato, si ha la possibilità sia di verificare in modo mirato che le vecchie definizioni continuino a funzionare, sia magari di provare alcune cose a cui si era rinunciato, quindi in generale trovo sia utile avere queste informazioni.

Ciao Marco!
Faccio confusione fra le comunicazioni interne e quello che viene annunciato… avrei giurato che fosse stato comunicato a suo tempo ma facilmente sbaglio.

Come sempre, vi devo ringraziare 100000000 volte!

Perfetta

Se faccio Split di una mesh con una superficie non viene bene

Se faccio split tra mesh mesh e superficie superficie viene tutto eccellente.

Mi sono accorto anche di un errore che avevo commesso all’inizio: avere la texture come superficie ma usavo il comando split mesh ecco perché mi dava anche gli altri errori.

Bene, l’importante è aver trovato la soluzione! :slight_smile:

In realtà può darsi benissimo che sia stato scritto/detto ma che me lo sia perso…

Edit: proprio adesso, cercando una lista completa, ho trovato questo link:

https://docs.mcneel.com/rhino/7/help/it-it/index.htm#commandlist/newinrhino7.htm

dove in effetti la prima novità in elenco è il nuovo algoritmo di intersezione delle mesh :grimacing:.

Tra l’altro immagino che questo algoritmo venga usato anche per tutte booleane, giusto? Voglio riprovare alcuni vecchi file dove le cose non funzionavano bene, magari adesso la situazione è cambiata.

2 Mi Piace

Premetto di non lavorare con le mesh. Ciò premesso, come fa rhino a fare errori con le mesh??? Il livello di complessità del calcolo dell’intersezione tra nurbs è ben più complesso rispetto all’intersezione tra mesh.
Mha …

Sì, esatto, è scritto ma ci stiamo anche ancora lavorando sopra.

Per il momento no, l’implementazione in Rhino 7 è spiegata qui:

Se riesci a farlo, e mi dai qualche dritta dei problemi che rimangono (rimangono sempre dei problemi) mi farai piacere. In ogni caso, spero che potremo mettere presto online alcune migliorie abbastanza rivoluzionarie per l’algoritmo delle divisioni delle mesh.

Mi permetto di far notare che non premette bene, questa osservazione :slight_smile:

In tono un po’ più serio, una brep/polisuperficie di solito è costituita da una dozzina di pezzi, o magari qualche centinaio. Una maglia/mesh è costituita facilmente da milioni di facce. Quando usi un oggetto da qualche centinaia di migliaia di pezzi per dividerne uno con qualche altro centinaia di migliaia, ci sono davvero tantissime combinazioni possibili, molte ma molte di più di quando ne usi uno con 100 con un altro da 100. Un singolo errore spesso basta a mandare tutta l’opera in rovina. Per questo, le divisioni di mesh sono difficili. Ma ci sono molti miglioramenti in arrivo.

2 Mi Piace

Ciao Giù !!!
Grazie per questa precisazione. Chi meglio di te :wink:
Un abbraccio!

Grazie per le informazioni aggiuntive.

Sicuramente, appena ci metto mano ti invierò qualche informazione, sia dei miglioramenti riscontrati, sia di eventuali problemi rimasti.

Sono curioso :slight_smile:

Lavorando spesso con mesh abbastanza corpose (fino a diversi milioni di vertici/facce) tutti i miglioramenti nella gestione delle intersezioni e delle booleane sono molto ben accetti!

1 Mi Piace

Grande Giulio

mi hai perdonato il successivo complesso - complessità … :crazy_face:
… vedi che cavolate si scrivono tramite smartphone.
Non volevo sminuire il lavoro sulle mesh, pensavo che il codice di base fosse il medesimo.

Buon lavoro

Sergio

1 Mi Piace