Giochino per scriptomani

< Bar-Rhino - Saletta-Script > :slight_smile:

Ciao a tutti.

Mi sto divertendo (da un po’ di tempo) a imbastire uno script.
L’idea e’ quella di salvare semplici oggetti Rhino su file di testo
e poi poter ricosttuire gli oggetti leggendo il file.

Volendo potrebbe servire per internalizzare (alla Grasshopper) degli oggetti
direttamente negli script …

Ad esempio, questo:

bn17.3dm (67,6 KB)

Genera un file cosi’:

std.7z (8,1 KB)

( compattato solo affinche’ il nostro dio Discourse lo carichi )

Se qualche scriptomane fosse interessato a giocarci, faccia un fischio e io posto lo script …

Se no, come non detto :slight_smile:

E ancora Buon Natale !!!

Così per dire Emì… se fossero viti si potrebbero in qualche modo editare su un foglio excel?

… Di Excel capisco proprio poco …
So che puo’ ricalcolare usando valori di altre celle … per i numeri
Non so cosa puo’ fare con i testi …

Comunque, come idea di base, lo script serve a rilevare semplici oggetti e poi a ri-disegnarli.
Partiamo sempre da semplici coordinate (piu’ pesi e nodi Nurbs)

Se hai PARECCHIA pazienza, puoi anche scriverti il testo a mano, ma per cose oltre linee e cerchi … la vedo lunga … anche se il formato e’ pensato per essere utilizzabile a mano ( … e … a occhio :wink: )

Dipende da come rappresenti la vite.
Se il gambo e’ simbolicamente disegnato con dei cilindri … direi che con un po’ di logica (automatica) si potrebbe fare.
La logica (da Excel, da Python o da quello che vuoi) serve per costruire il testo, oppure per modiifcarlo se partiamo da un oggetto rilevato e lo vogliamo allungare/accorciare.
( Dipende anche da dov’e’ e come e’ orientata la vite. Se e’ nell’origine, allineata ad un asse … e’ piu’ comodo :wink: )

Se invece disegni la filettatura in modo realistico ( a me ne arrivano parecchie … ), per ora lo script non ce la fa.
Certo mi piacerebbe aggiungere operazioni, tipo comandi Rhino o metodi RhinoScript, per costruire gli oggetti partendo da punti, curve ecc. come facciamo quando usiamo Rhino a mano … ma siamo nel futuro … :smile:

Beh … quasi. :wink:
Cioe’ … ho fatto una prova con una vite ultrasemplice e risulta che …

  1. Prima ho taroccato il file a mano
  2. Dopo basta cambiare un valore all’inizio del file per avere lunghezze diverse

Per cui possiamo anche automatizzare il disegno di viti corte o lunghe, ma prima bisogna editare il file con un text editor.
( E soprattutto capire dove andare a fare le modifiche … :wink: )

Qui c’e’ il test:

gm-vite15.3dm (149,6 KB)

vite15.7z (2,2 KB)

vite30.7z (2,2 KB)

Certo sarebbe una bella cosa trovare il modo di parametrizzare in automatico il file di istruzioni …

Le idee brillanti sono ben accette ! :slight_smile: :slight_smile: :slight_smile:

Ciao !

Per le viti, riscoprire l’acqua calda non ha senso, c’è la libreria boltgen che disegna viti e bulloni con passi diversi, forma della testa e impronta cacciavite corretti.
Però per fare altre geometrie potrebbe essere interessante smanetarci un po.
Ma si possono registrare le coordinate di un oggetto (x, y, z e rotazioni relative ad ogni asse?)

Scusa, di quali rotazioni stiamo parlando ?

Intendevo il valore di rotazione di ogni asse e la posizione dell’oggetto

Perdonami, ma non afferro … voglio dire le rotazioni.

Lo script, dati degli oggetti, genera un file (tipo esportazione) con un formato … tutto suo :wink:
E puo’, in seguito, rileggendo il file, (ri)costruire gli oggetti originali.
In pratica e’ una specie di formato di interscambio MOLTO terra terra, e che ovviamente funziona (diciamo cosi’ …) solo su Rhino.
Ha il vantaggio (in certe circostanze particolari) che possiamo inserire direttamente il testo nello script, anziche’ dover usare un file esterno, come per i veri formati tipo 3dm, Iges, Step, ect …
In effetti e’ nato per questo scopo … anche se per ora non lo ho ancora utilizzato … ? ! ? ! ? ! …:smile:
E’ anche utilizzabile abbastanza agevolemnte ‘a mano’, per oggetti MOLTO semplici.
… Prova a scrivere a mano l’Iges, anche solo per un punto … :smile:

Che poi non e’ vero.
Con i formati di testo puoi sempre usare un file temporaneo per importare del testo contenuto nello script …