Dynamo
Primer for v2.0
Italiano
Italiano
  • Informazioni
  • Introduzione
    • Che cos'è Dynamo e come funziona?
    • Guida introduttiva, comunità e piattaforma di Dynamo
  • Installazione per Dynamo
  • Interfaccia utente
    • Area di lavoro
    • Libreria
  • Nodi e fili
  • Nodi e concetti essenziali
    • Indice dei nodi
    • Geometria per la progettazione computazionale
      • Panoramica sulla geometria
      • Vettore, piano e sistema di coordinate
      • Punti
      • Curve
      • Superfici
      • Solidi
      • Mesh
    • Elementi di base dei programmi
      • Dati
      • Matematica
      • Logica
      • Stringhe
      • Colore
    • Progettazione con elenchi
      • Che cos'è un elenco?
      • Utilizzo di elenchi
      • Elenchi di elenchi
      • Elenchi n-dimensionali
    • Dizionari in Dynamo
      • Che cos'è un dizionario?
      • Nodi Dictionary
      • Dizionari nei blocchi di codice
      • Casi di utilizzo di Revit
  • Pacchetti e nodi personalizzati
    • Nodi personalizzati
      • Introduzione ai nodi personalizzati
      • Creazione di un nodo personalizzato
      • Pubblicazione nella libreria
    • Pacchetti
      • Introduzione ai pacchetti
      • Case study di un pacchetto - Mesh Toolkit
      • Sviluppo di un pacchetto
      • Pubblicazione di un pacchetto
      • Importazione zero-touch
  • Dynamo per Revit
    • Correlazione con Revit
    • Selezione
    • Modifica
    • Creazione
    • Personalizzazione
    • Documentazione
  • Dynamo for Civil 3D
    • Connessione a Civil 3D
    • Per iniziare
    • Libreria di nodi
    • Esempi di workflow
      • Strade
        • Posizionamento di lampioni
      • Gestione catastale
        • Posizionamento dei servizi
      • Impianti di pubblica utilità
        • Ridenominazione di strutture
      • Ferrovia
        • Sagoma dello spazio libero
      • Rilievi
        • Gestione di gruppi di punti
    • Argomenti avanzati
      • Unione di oggetti
      • Python e Civil 3D
    • Dynamo Player
    • Pacchetti utili
    • Risorse
  • Dynamo in Forma Beta
    • Impostazione di Dynamo Player in Forma
    • Aggiunta e condivisione di grafici in Dynamo Player
    • Esecuzione di grafici in Dynamo Player
    • Differenze tra Dynamo compute service e Desktop Dynamo
  • Codifica in Dynamo
    • Blocchi di codice e DesignScript
      • Cos'è un blocco di codice?
      • Sintassi di DesignScript
      • Sintassi abbreviata
      • Funzioni
    • Geometria con DesignScript
      • Nozioni di base della geometria DesignScript
      • Primitive geometriche
      • Matematica vettoriale
      • Curve: punti interpolati e di controllo
      • Traslazione, rotazione e altre trasformazioni
      • Superfici: punti interpolati e di controllo, loft, rivoluzione
      • Parametrizzazione geometrica
      • Intersezione e taglio
      • Operazioni booleane geometriche
      • Generatori di punti di Python
    • Python
      • Nodi Python
      • Python e Revit
      • Impostazione del modello di Python personalizzato
    • Modifiche al linguaggio
  • Procedure ottimali
    • Strategie sui grafici
    • Strategie di scripting
    • Riferimento per lo scripting
    • Gestione del programma
    • Utilizzo efficiente di set di dati di grandi dimensioni in Dynamo
  • Esempi di workflow
    • Introduzione ai workflow
      • Vaso parametrico
      • Punti attrattore
    • Indice concettuale
  • Guida introduttiva per sviluppatori
    • Compilazione di Dynamo dalla sorgente
      • Compilazione di DynamoRevit dalla sorgente
      • Gestione e aggiornamento delle dipendenze in Dynamo
    • Sviluppo per Dynamo
      • Per iniziare
      • Case study zero-touch - Nodo griglia
      • Esecuzione di script Python in nodi zero-touch (C#)
      • Ulteriori informazioni sul concetto di zero-touch
      • Personalizzazione avanzata dei nodi di Dynamo
      • Utilizzo di tipi COM (interoperabilità) nei pacchetti di Dynamo
      • Case study NodeModel - Interfaccia utente personalizzata
      • Aggiornamento di pacchetti e librerie di Dynamo per Dynamo 2.x
      • Aggiornamento di pacchetti e librerie di Dynamo per Dynamo 3.x
      • Estensioni
      • Definizione dell'organizzazione di pacchetti personalizzati (Dynamo 2.0 e versioni successive)
      • Interfaccia della riga di comando di Dynamo
      • Integrazione per Dynamo
      • Sviluppo per Dynamo for Revit
      • Pubblicazione di un pacchetto
      • Creazione di un pacchetto da Visual Studio
      • Estensioni come pacchetti
    • Richieste pull
    • Aspettative di test
    • Esempi
  • Appendice
    • Domande frequenti
    • Programmazione visiva e Dynamo
    • Risorse
    • Note di rilascio
    • Pacchetti utili
    • File di esempio
    • Mappa di integrazione host
    • Download del file PDF
    • Tasti di scelta rapida di Dynamo
Powered by GitBook
On this page
  • Che cos'è un dizionario?
  • Che cos'è un elenco?
  • Perché questo aspetto è stato cambiato e perché dovrebbe essere importante?
  • Quali sono i cambiamenti?
  • Perché dovrebbe essere importante? Per cosa si utilizzerebbero questi elementi?
Edit on GitHub
Export as PDF
  1. Nodi e concetti essenziali
  2. Dizionari in Dynamo

Che cos'è un dizionario?

PreviousDizionari in DynamoNextNodi Dictionary

Last updated 1 month ago

Dynamo 2.0 introduce il concetto di separazione del tipo di dati del dizionario dal tipo di dati dell'elenco. Questa modifica può portare a modifiche significative al modo in cui si creano e si utilizzano i dati nei workflow. Prima della versione 2.0, i dizionari e gli elenchi venivano combinati come tipo di dati. In breve, gli elenchi erano in realtà dizionari con chiavi di numeri interi.

Che cos'è un dizionario?

Un dizionario è un tipo di dati composto da una raccolta di coppie chiave-valore, in cui ogni chiave è univoca in ogni raccolta. Un dizionario non ha un ordine e in pratica è possibile cercare elementi mediante una chiave anziché un valore di indice, come in un elenco. In Dynamo 2.0, le chiavi possono essere solo stringhe.

Che cos'è un elenco?

Un elenco è un tipo di dati composto da una raccolta di valori ordinati. In Dynamo, gli elenchi utilizzano numeri interi come valori di indice.

Perché questo aspetto è stato cambiato e perché dovrebbe essere importante?

La separazione dei dizionari dagli elenchi introduce i dizionari come cittadino di prima classe che è possibile utilizzare per memorizzare e cercare i valori in modo semplice e rapido, senza dover ricordare un valore di indice o mantenere una struttura di elenchi rigorosa durante tutto il workflow. Durante i test degli utenti, è stata riscontrata una riduzione significativa della dimensione del grafico quando sono stati utilizzati dizionari anziché diversi nodi GetItemAtIndex.

Quali sono i cambiamenti?

  • Sono state apportate modifiche alla sintassi che consentono di modificare la modalità di inizializzazione e utilizzo dei dizionari e degli elenchi nei blocchi di codice.

    • I dizionari utilizzano la seguente sintassi: {key:value}.

    • Gli elenchi utilizzano la seguente sintassi: [value,value,value].

  • Nella libreria sono stati introdotti nuovi nodi per aiutare a creare, modificare o sottoporre a query i dizionari.

  • Gli elenchi creati nei blocchi di codice v1.x verranno migrati automaticamente al caricamento dello script nella nuova sintassi dell'elenco che utilizza parentesi quadre [ ] anziché parentesi graffe { } \.



Perché dovrebbe essere importante? Per cosa si utilizzerebbero questi elementi?

Nel settore scientifico dei computer, i dizionari, come gli elenchi, sono raccolte di oggetti. Sebbene gli elenchi siano in un ordine specifico, i dizionari sono raccolte non ordinate. Non si basano su numeri sequenziali (indici), ma utilizzano chiavi.

Nella seguente immagine viene illustrato un caso di utilizzo potenziale di un dizionario. Spesso i dizionari vengono utilizzati per correlare due dati che potrebbero non avere una correlazione diretta. In questo caso, si sta collegando la versione spagnola di una parola alla versione inglese per una successiva ricerca.

  1. Creare un dizionario per correlare i due dati.

  2. Ottenere il valore con la chiave specificata.