Questa sezione contiene semplici workflow per iniziare ad utilizzare Dynamo.
suggested exercise
La creazione di un vaso parametrico è un ottimo modo per iniziare a imparare a utilizzare Dynamo.
Questo workflow illustra come:
Utilizzare i dispositivi di scorrimento numerici per controllare le variabili nel progetto.
Creare e modificare elementi geometrici mediante nodi.
Visualizzare i risultati di progettazione in tempo reale.
Prima di passare a Dynamo, procedere progettando concettualmente un vaso.
Si supponga di voler progettare un vaso di argilla che tenga conto delle pratiche di produzione utilizzate dai ceramisti. I ceramisti normalmente utilizzano un tornio per fabbricare vasi cilindrici. Quindi, applicando pressione su varie altezze del vaso, possono modificare la forma del vaso e creare progetti diversi.
Verrà utilizzata una metodologia simile per definire il nostro vaso. Si creeranno 4 cerchi ad altezze e raggi diversi e quindi si creerà una superficie mediante il loft di questi cerchi.
Scaricare il file di esempio facendo clic sul collegamento seguente.
Un elenco completo di file di esempio è disponibile nell'Appendice.
Sono necessari i nodi che rappresenteranno la sequenza di azioni che verranno eseguite da Dynamo. Poiché si sta cercando di creare un cerchio, iniziare individuando un nodo che rispetti questo requisito. Utilizzare il campo di ricerca o sfogliare la Libreria per trovare il nodo Circle.ByCenterPointRadius e aggiungerlo all'area di lavoro.
Cercare circle.
Selezionare ByCenterPointRadius.
Il nodo verrà visualizzato nell'area di lavoro.
Si esaminerà più da vicino questo nodo. Sul lato sinistro sono presenti gli input del nodo (centerPoint e radius) e sul lato destro è presente l'output del nodo (Circle). Notare che gli output hanno una linea celeste. Ciò significa che l'input ha un valore di default. Per ottenere ulteriori informazioni sull'input, posizionare il cursore sul relativo nome. L'input radius richiede un doppio input e ha un valore di default di 1.
Lasciare il valore di default di centerPoint ma aggiungere un Number Slider per controllare il raggio. Come è stato fatto con il nodo Circle.ByCenterPointRadius, utilizzare la libreria per cercare Number Slider e aggiungerlo al grafico.
Questo nodo è un po' diverso dal nodo precedente poiché contiene un dispositivo di scorrimento. È possibile utilizzare l'interfaccia per modificare il valore di output del dispositivo di scorrimento.
Il dispositivo di scorrimento può essere configurato utilizzando il pulsante a discesa a sinistra del nodo. Limitare il dispositivo di scorrimento ad un valore massimo di 15.
Posizionarlo a sinistra del nodo Circle.ByCenterPointRadius e collegare entrambi i nodi selezionando l'output Number Slider e collegandolo all'input radius.
Cambiare anche il nome Number Slider in Top Radius facendo doppio clic sul nome del nodo.
Continuare ad aggiungere alcuni nodi e collegamenti alla logica per definire il nostro vaso.
Copiare questi nodi 4 volte in modo che i cerchi definiscano la nostra superficie, quindi modificare i nomi di Number Slider come mostrato qui sotto.
I cerchi vengono creati da un punto centrale e da un raggio.
Un parametro chiave del nostro vaso risulta mancante, ossia la sua altezza. Per controllare l'altezza del vaso, creare un altro dispositivo di scorrimento numerico. È inoltre possibile aggiungere un nodo Code Block. I Code Block possono essere utili come aggiunta di frammenti di codice personalizzati al nostro workflow. Si utilizzerà il Code Block per moltiplicare il dispositivo di scorrimento dell'altezza in base a fattori diversi, in modo da poter posizionare i nostri cerchi lungo l'altezza del vaso.
Quindi, utilizzare un nodo Geometry.Translate per posizionare i cerchi all'altezza desiderata. Poiché si desidera distribuire i cerchi nel vaso, utilizzare i Code Block per moltiplicare il parametro dell'altezza in base ad un fattore.
2. I cerchi vengono traslati (spostati) da una variabile nell'asse Z.
Per creare una superficie utilizzando il nodo Surface.ByLoft, si devono combinare in un elenco tutti i cerchi traslati. Utilizzare List.Create per combinare tutti i nostri cerchi in un unico elenco, quindi infine eseguire l'output di questo elenco nel nodo Surface.ByLoft per visualizzare i risultati.
Disattivare anche l'anteprima in altri nodi per visualizzare solo Surface.ByLoft.
3. Una superficie viene creata tramite il loft dei cerchi traslati.
Il nostro workflow è pronto. Ora è possibile utilizzare i Number Slider definiti nello script per creare diversi progetti di vasi.
I punti attrattore sono ideali per sperimentare modelli geometrici. Possono essere utilizzati per creare modifiche graduali agli oggetti in base alla loro distanza.
Questo workflow illustra come:
Creare, gestire e modificare elenchi.
Spostare punti nell'anteprima 3D utilizzando la manipolazione diretta.
Modificare la modalità di esecuzione.
In questo esercizio si desidera creare un cerchio (obiettivo) in cui l'input del raggio è definito dalla distanza rispetto ad un punto vicino (relazione).
Un punto che definisce una relazione basata sulla distanza viene comunemente chiamato "attrattore". Qui la distanza dal punto attrattore verrà utilizzata per specificare la dimensione del cerchio.
Scaricare il file di esempio facendo clic sul collegamento seguente.
Un elenco completo di file di esempio è disponibile nell'Appendice.
Ora che sono stati definiti gli obiettivi e le relazioni, è possibile iniziare a creare il grafico. Sono necessari i nodi che rappresenteranno la sequenza di azioni che verranno eseguite da Dynamo. Iniziare aggiungendo i seguenti nodi: Number, Number Slider, Point.ByCoordinates, Geometry.DistanceTo, Circle.ByCenterPointRadius.
Input > Basic > Number
Input > Basic > Number Slider
Geometry > Points > Point > By Coordinates(x,y,z)
Geometry > Modifiers > Geometry > DistanceTo
Geometry > Curves > Circle > ByCenterPointRadius
Ora che sono presenti alcuni nodi, è necessario collegare le porte dei nodi con dei fili. Questi collegamenti definiranno il flusso di dati.
Da Number a Point.ByCoordinates
Da Number Sliders a Point.ByCoordinates
Da Point.ByCoordinates (2) a DistanceTo
Da Point.ByCoordinates eDistanceTo a Circle.ByCenterPointRadius
Una volta definito il flusso del programma, è sufficiente comunicare a Dynamo di eseguirlo. Una volta eseguito il programma (automaticamente o quando si fa clic su Esegui in modalità Manuale), i dati passeranno attraverso i fili e i risultati dovrebbero essere visualizzati nell'anteprima 3D.
(Fare clic su Esegui): se la barra di esecuzione è in modalità Manuale, è necessario fare clic su Esegui per eseguire il grafico.
Anteprima del nodo: se si posiziona il cursore del mouse sopra la casella nell'angolo inferiore destro di un nodo, verrà visualizzata una finestra popup dei risultati.
Anteprima 3D: se uno dei nodi crea la geometria, verrà visualizzata nell'anteprima 3D.
Indica la geometria di output sul nodo della creazione.
Se il programma funziona, nell'anteprima 3D dovrebbe essere visualizzato un cerchio che passa attraverso il punto attrattore. Questa operazione è ottima, ma potrebbe essere utile aggiungere ulteriori dettagli o più controlli. Regolare l'input sul nodo circolare in modo da poter calibrare l'influenza sul raggio. Aggiungere un altro Number Slider all'area di lavoro, quindi fare doppio clic su un punto vuoto dell'area di lavoro per aggiungere un nodo Code Block. Modificare il campo in Code Block specificando X/Y
.
Code Block
Da DistanceTo e Number Slider a Code Block
Da Code Block a Circle.ByCenterPointRadius
Iniziare in modo semplice e aumentare la complessità rappresentano un modo efficace per sviluppare il programma in modo incrementale. Quando funziona per un cerchio, applicare la potenza del programma a più cerchi. Invece di un punto centrale, se si utilizza una griglia di punti e si adatta la modifica nella struttura dei dati risultante, ora il programma creerà molti cerchi, ciascuno con un valore di raggio univoco definito dalla distanza calibrata dal punto attrattore.
Aggiungere un nodo Number Sequence e sostituire gli input di Point.ByCoordinates. Fare clic con il pulsante destro del mouse su Point.ByCoordinates e selezionare Collegamento > Globale.
Aggiungere un nodo List.Flatten dopo Point.ByCoordinates. Per ridurre completamente di livelli un elenco, lasciare l'input
amt
sull'impostazione di default-1
.L'anteprima 3D verrà aggiornata con una griglia di cerchi.
A volte la manipolazione numerica non è l'approccio giusto. Ora è possibile spingere e trascinare manualmente la geometria del punto durante la navigazione nell'anteprima sfondo 3D. Si possono anche controllare altre geometrie costruite da un punto. Ad esempio, anche Sphere.ByCenterPointRadius è in grado di eseguire la manipolazione diretta. È possibile controllare la posizione di un punto da una serie di valori X, Y e Z con Point.ByCoordinates. Con l'approccio della manipolazione diretta, tuttavia, è possibile aggiornare i valori dei dispositivi di scorrimento spostando manualmente il punto nella modalità di navigazione nell'anteprima 3D. Ciò offre un approccio più intuitivo per controllare una serie di valori discreti che identificano la posizione di un punto.
Per utilizzare la manipolazione diretta, selezionare il pannello del punto da spostare; verranno visualizzate delle frecce sopra il punto selezionato.
Passare alla modalità di navigazione nell'anteprima 3D.
Posizionare il cursore del mouse sul punto per visualizzare gli assi X, Y e Z.
Fare clic e trascinare la freccia colorata per spostare l'asse corrispondente; i valori di Number Slider verranno aggiornati in tempo reale con il punto spostato manualmente.
Notare che prima della manipolazione diretta solo un dispositivo di scorrimento era collegato al componente Point.ByCoordinates. Quando si sposta manualmente il punto nella direzione X, Dynamo genererà automaticamente un nuovo Number Slider per l'input X.