Algoritmi che funzionano nei vari esempi, ma non da me!

ah ecco, non so se il risultato finale è quello che vuoi ottenere, ma il problema in questo caso è che il numero di “centri esagoni” non matchava il numero di “curve che poi dispatchi” → devi applicare il cull pattern anche alla lista di crv, prima di fare il dispatch

1 Mi Piace

@alex.coppola7 @leopoldomonzani vorrei arrivare a questo tipo di risultato, guardate il suo primo video nel link https://www.behance.net/gallery/136748983/Waffle-Warp
*ho guardato tutti i suoi progetti su Behance, per me è un mago :rofl:

@alex.coppola7 ho provato l’algoritmo su un’altra superficie, apparentemente meno complessa.
Riscontro nella parte finale , quando da brep trasformo in mesh sia “mesh brep e anche simple mesh” danno delle mesh non valide. infatti non riesco a visualizzarle con il custom preview. dove sta il problema ora?

@alex.coppola7 mi potresti spiegare la logica che ci sta dietro alla parte dopo il surface split, non ho capito la parte del Cull index come si arrivi al fatto di mettere il reverse per poter vedere la srf tagliata e il panel su 0 per poi collegarlo al cull index…
ti ho evidenziato la zona in viola.

con la tua definizione ci sta un ultimo problema, quello di chiuedere le zone interne, ma con il patch non funziona, alternative?

file
Squish_Esagoni su SRF.gh (2,1 MB)
trovi lo stesso algoritmo diviso in 3 parti
il primo in alto con il problema della mesh finale e il tuo l’ultimo in basso con il problema dell patch e la zona viola che non ho capito a come si arrivi a tale soluzione…

ho visto il tutorial su grasshopper in italiano che mi hai linkato, grazie è stato molto utile.

1 Mi Piace

C’è un valore nullo che va eliminato, ovviamente togliendo l’oggetto dalla lista o modificando la definizione.

Per le mesh non valide si può aggiungere un Rebuild Mesh

1 Mi Piace

Ciao, ok vediamo se riesco:

  1. lì io risolverei a monte, non so bene perchè usi ruled srf, ma utilizzerei loft così →

e non dovresti più avere problemi di mesh invalide

  1. sulla logica del cull è semplice: il sort riordina la lista di srf/crv/ecc in base ad un valore key (k), in questo caso l’area → quindi, per eliminare la srf con l’area più grande, faccio un reverse list per “cullare” il primo elemento (0) → in output faccio di nuovo il reverse list per riportare la lista come ordinata in input (se serve poi per fare altre operazioni, ecc)
    In teoria, invece del pannello con 0 e fare i reverse, avrei potuto usare un list lenght -1 per ottenere l’indice dell’ultimo elemento.

  2. qui devo fare una premessa: forse ti ho sviato perchè volevo solo farti vedere che puoi applicare un pattern direttamente sulla srf in 3d, ma non so se la logica che usi poi sia la più adatta in questo caso (è probabile che ci saranno altri problemi). Ciò detto, in questi casi mi vengono due opzioni molto semplici da attuare:

ovviamente il punto o il piano li puoi muovere dello stesso valore che usi per il movimento ed appiattirli
Squish_Esagoni su SRF_ALEX.gh (2,1 MB)

2 Mi Piace

Quello è un tutorial del nostro @giuseppe che è applicabile in tantissimi altri casi.
A livello texture dai un’occhiata alla quello che fanno Traverso e Tedeschi. E c’è anche Cademy che sforna bei pattern

3 Mi Piace

@alex.coppola7 Dopo aver seguito il tutorial linkato Flash Workshop Rhino 6 - Grasshopper (Italiano) - YouTube mi sono fatto la mia versione personale della definizione con qualche aggiunta per avere un maggiore variabilità di ozpioni. (è stato molto d’aiuto per aumentare le skills in GH).
Sono rimasto bloccato nella parte finale perchè non conosco un metodo su gh che mi permette di selezionare delle facce specifiche di una mesh per impostare un Crease prima di attivare la suddivisione catmull-clank, in modo da avere delle zone specifiche rigide mentre altre zone della mesh nella suddivione si smootano.

come vedi con il comando “Label face” riesco a vedere i numeri corrispondenti alle facce, quindi la mia intenzione era di selezionare quelle facce è attivare in qualche modo il crease…(stessa cosa era quella di utilizzare un crease nelle facce proiettate nel piano, in modo che anche quella zona non era influenzata dalla suddivisione Catmull-clank).

la zona interessata è il gruppo viola
file:
croce pattern_panelingtools.gh (76,1 KB)

@leopoldomonzani @alex.coppola7 grazie per tutte le dritte siete veramente d’aiuto.

Guarda senza aprire Rhino per ora, mi viene in mente che se applichi il catmull-clark alle facce non unite (con 0 in smooth naked edge) e poi le rejoini dovrebbe andare (in teoria i vertici dovrebbero sovrapporsi e unirsi anche successivamente)
Tipo tutte le facce superiori sono unite ma non joinate con quelle laterali, che sono tutte unite, ma non joinate con tutte le facce di sotto. Insomma, dove vuoi il crease ti serve un naked edge XD non so se è chiaro.

Comunque non c’è solo il catmull-clark nel pannello suddivisioni, prova qualche altro, magari c’è quello che ti serve.

*il fatto dei vertici che con la suddivisione non si uniscono tra di loro nelle (parti interne) è perchè ho utilizzato la scala non uniforme per fare la base proiettata più grande, per creare uno sformo (come vedi da video), quindi è voluto che si stacchino ma quello che vorrei fare è isolare le facce nominate come 24, 30, 39 e 32.
si ho provato a cercare tra le altre suddivisioni ma niente, neanche impostando lo smooth naked edges su 0 o su 2.

Per le mesh c’è anche questo componente Peacock che mi sembra molto utile.
img2

@leopoldomonzani grande sono riuscito a selezionare le facce specifiche, ora manca sapere come attivare il crease nei bordi di quelle facce :rofl:

Per la selezione automatica.

Intedi così?

si esatto! come ci sei riuscito…io ho trovato una soluzione ma ci ho combattuto un pò e comunque ho un problema nell’ angolo che non è liscio (segnato in rosso nell’ immagine).
croce pattern_panelingtools.gh (80,6 KB)

ah si però le zone interne, bordi, devono essere sempre rigide e staccati come qui. (hanno uno sformo)

Portare le 4 facce in verticale ed eliminarle.
Invece di 1,5 metti scala a 1.
Poi è semplice, vedi immagine.

1 Mi Piace

Contento sia stato utile!

1 Mi Piace

Ciao ho un problema su come alternare un pattern a base triangolare.
Come vedete il pattern si applica,

ma io voglio riempire anche gli spazi vuoti, come su questa foto

Soluzioni o alternative, perchè in verità è rendere il pattern meno deformabile possibile sulla superficie.

Paneling tools_morph3D.gh (3,1 MB)
srf tacco.3dm (1,1 MB)

ho fatto una prova veloce, ma mancano alcuni pezzi (attrattori ecc):
con paneling tool farei così:

e viene così

non ho usato la tua geometria, ma in pratica verrebbe identica (invece di usare il morph di paneling tool useresti quello nativo di GH) → devi aggiungere la parte di modifica della griglia in base all’attrattore

Paneling tools_morph3D_Alex.gh (3,1 MB)

1 Mi Piace

Per ridurre la deformazione proverei con Rebuild Surface.

2 Mi Piace