Simboli
La libreria Simboli: le undici librerie di sistema e I miei simboli, la ricerca e i filtri della galleria, l'ispettore con i suoi ingressi vivi e i suoi morsetti, l'editor Nuovo simbolo utente e ogni natura di zona attiva, Importa simbolo…, Esporta pacchetto, Duplica, Copia l'istruzione per la chat, e dove si usa un simbolo.
Simboli è la quarta categoria sotto la radice Risorse: il disegno che un componente Simbolo di dashboard disegna e anima. Il pannello è intitolato « Simboli », con la riga « Librerie pensate per dashboard moderne, banchi di prova, prodotti connessi, schemi normalizzati, sistemi industriali e impianti. Ogni simbolo di sistema è ispezionabile e può essere duplicato in I miei simboli. » e la pillola di conteggio. Leggere e ispezionare richiedono Visualizzare Logic; creare, importare, duplicare, modificare ed eliminare richiedono Configurare Logic. Il formato di file con cui un simbolo viaggia è descritto in Simboli SVG portabili.
Le librerie
| Libreria | Che cosa contiene | Norma | Simboli |
|---|---|---|---|
| Process | Disegni a strati di apparecchiature di processo, per dashboard di supervisione e schemi di processo | 86 | |
| ISA / P&ID | Disegni schematici di processo, tubazioni, valvole e strumentazione | ANSI/ISA-5.1 / ISO 10628 | 99 |
| Manufacturing & Material Flow | Apparecchiature di fabbricazione discreta, assemblaggio, lotto, confezionamento, controllo e intralogistica | 48 | |
| Lab & Test Bench | Simboli di laboratorio, acquisizione dati, metrologia, attrezzaggio del provino, camera climatica e controllo qualità | 35 | |
| Prototyping Electronics | Controllori, schede di sviluppo, connettori, moduli sensore, attuatori, alimentazione e radio | 35 | |
| IoT Field Sensors | Simboli di ambiente, condizione, posizione, misura, gateway radio e controllo in periferia | 36 | |
| Smart Home & Building | Illuminazione, comfort, controllo accessi, sicurezza, elettrodomestici, acqua e dispositivi di comando interoperabili | Matter / BACnet / notazione corrente della domotica di edificio | 39 |
| IT, Network & Datacenter | Calcolo, armadi, archiviazione, reti, sicurezza, piattaforme cloud, alimentazione e raffreddamento dei locali | Notazione corrente delle infrastrutture informatiche / SNMP / Redfish | 35 |
| Electrical & Energy | Schemi unifilari, distribuzione, conversione, misura e rinnovabili, con stati di contatto ricavati dalla geometria | IEC 60617 / IEEE 315 | 39 |
| Energy, Microgrid & e-Mobility | Generazione distribuita, conversione, accumulo, misura, protezione, microreti e ricarica di veicoli elettrici | Notazione da dashboard orientata a IEC / IEEE / OCPP | 40 |
| Facilities & Utilities | Climatizzazione, acqua e acque reflue, sistemi di sicurezza, servizi di stabilimento e infrastruttura di comando | 38 | |
| I miei simboli | I simboli che componi, importi o duplichi | I tuoi |
Le librerie di sistema sono disegni originali Ganter Lab, compilati nel prodotto e in sola lettura: un aggiornamento le sostituisce senza toccare i dati della tua stazione. Ogni definizione porta un riferimento stabile system:<key>, la sua libreria e la sua categoria, una descrizione, etichette di ricerca, la norma che le si applica e i metadati di origine e di licenza.
La galleria
Sopra le schede: Cerca (testo segnaposto « Nome, categoria o parola chiave »; la ricerca confronta il nome, la descrizione, la categoria, la norma e le etichette del simbolo, senza distinguere maiuscole e minuscole; la libreria si sceglie con il suo filtro), Libreria (« Tutte le librerie (530) » oppure una libreria con il suo conteggio; sceglierne una azzera la categoria e mostra la descrizione della libreria sotto i filtri), Categoria (« Tutte le categorie » oppure una categoria della libreria scelta), Origine e Per pagina. Una scheda mostra la libreria, un'anteprima nelle proporzioni naturali del disegno, il nome, la categoria, l'origine (Sistema o Miei) e una riga di capacità: « Statico », « 1 ingresso » o « N ingressi », seguite da « · N morsetti » quando il simbolo dichiara morsetti di collegamento. Un risultato vuoto dice « Nessun simbolo corrisponde a questi filtri. » con Azzera filtri. Quando i tuoi simboli non si sono potuti leggere, una nota dice « I miei simboli non è disponibile in questo momento. Sono elencate solo le librerie di sistema. » invece di far passare il pacchetto di sistema per l'intero catalogo.
L'ispettore
Selezionare una scheda apre l'ispettore accanto alla galleria:
- Il nome e un contrassegno: Sistema · sola lettura, Il mio simbolo, oppure Bozza non salvata mentre l'editor è aperto.
- La libreria, la categoria e la norma; la descrizione.
- Ingombro (la dimensione consigliata sulla dashboard, in celle, larghezza × altezza) e Adattamento (Contieni, Estendi, Estendi in X o Estendi in Y).
- « N ingressi · N morsetti di collegamento », oppure « solo visivo » quando non ci sono morsetti.
- Provenienza del disegno, una sezione espandibile con l'origine e, per un simbolo di sistema, la licenza.
- Le azioni: Esporta pacchetto per ogni ruolo; per un simbolo di sistema Duplica in I miei simboli, per i tuoi Modifica ed Elimina (solo per i ruoli che configurano).
- La scena di anteprima: il disegno depurato, reso dallo stesso runtime di una dashboard, con una maniglia disegnata all'ancoraggio di ogni morsetto. Un disegno che non si può rendere lascia la scena vuota con « Anteprima non disponibile » e il motivo. Quando il depuratore ha dovuto correggere il markup, una sezione espandibile « L'anteprima usa SVG depurato » elenca le correzioni (al massimo otto, poi « Altre N correzioni non sono mostrate. »).
- Ingressi: « Le costanti temporanee riguardano solo questa anteprima. » e Azzera gli ingressi. Una sezione per ogni zona attiva dichiarata, con il suo nome, l'effetto che comanda, una frase che descrive la corrispondenza, l'intervallo di ingresso e l'elemento di destinazione (
#id), e un comando per provarla: un numero (con un cursore quando l'intervallo di ingresso è finito), un interruttore Attivo/Inattivo, una casella di testo, oppure un selettore di colore con una casella del valore di colore. « Questo simbolo non dichiara ingressi dinamici. » quando non ce ne sono; una dichiarazione non valida mostra il suo errore invece di un comando. Le costanti che imposti qui non vengono mai salvate e non arrivano mai a una dashboard.
Gli effetti e il modo in cui l'ispettore li descrive:
| Natura (etichetta dell'editor) | Effetto | Comando | Descrizione |
|---|---|---|---|
| Rotate | Rotazione | Numero | Ruota da <uscita min>° a <uscita max>° |
| Opacity | Opacità | Numero | Cambia l'opacità da <uscita min> a <uscita max> |
| Fill | Stato del riempimento | Interruttore | Commuta il riempimento dal colore inattivo al colore attivo; una sorgente numerica commuta a metà dell'intervallo di ingresso |
| Visible | Visibilità | Interruttore | Nasconde l'elemento quando è inattivo e lo mostra quando è attivo |
| Text | Testo mostrato | Testo | Sostituisce il testo mostrato dentro l'elemento |
| Translate | Posizione | Numero | Sposta da (x, y) a (x, y) unità SVG |
| Scale | Scala | Numero | Scala da (x, y) a (x, y) |
| Stroke | Stato del contorno | Interruttore | Commuta il contorno tra il colore inattivo e quello attivo; una sorgente numerica commuta a metà |
| Rotazione continua (°/s) | Velocità di rotazione | Numero | Ruota di continuo da <min>°/s a <max>°/s; zero mette in pausa e un valore negativo inverte il senso |
| Rotazione continua attiva | Stato della rotazione | Interruttore, attivo all'inizio | Mette in pausa o riprende la rotazione senza nascondere l'elemento né azzerarne l'angolo |
| FillColor | Colore di riempimento | Colore | Imposta il riempimento direttamente da una risorsa Colore, da una variabile Colore o da un colore letterale |
| StrokeColor | Colore del contorno | Colore | Imposta il contorno direttamente da una risorsa Color, da una variabile Color o da un colore letterale |
| Spessore del contorno | Larghezza del contorno | Numero | Imposta direttamente la larghezza del contorno, da 0.5 a 32 unità SVG |
Nuovo simbolo utente
Il verbo sopra la riga Simboli apre l'editor nella colonna della galleria (« Nuovo simbolo utente »: « Comporre SVG inerte e le sue zone attive nominate per la dashboard. »); l'ispettore segue la bozza non salvata mentre scrivi, così provi il simbolo prima di crearlo.
| Campo | Che cos'è | Valori e valore predefinito | Effetto |
|---|---|---|---|
| Nome | Il nome visualizzato. | Obbligatorio; « Serve un nome. » finché è vuoto. | A differenza di un'icona o di un colore, il nome di un simbolo può cambiare in seguito: le dashboard lo referenziano per id. |
| Markup SVG | Il disegno, incollato come testo. | Obbligatorio. | Depurato mentre scrivi; un errore di disegno (« Il markup SVG deve avere una radice <svg>. », « Il markup SVG supera il limite di 512 KB. », un id duplicato…) blocca la creazione e ogni zona attiva. |
| Adattamento | Come il disegno riempie la cella della dashboard. | Contieni (predefinito), Estendi in entrambi i sensi, Estendi in X, Estendi in Y. | Letto dall'editor delle dashboard quando il simbolo viene posato. |
| Larghezza iniziale, Altezza iniziale | L'ingombro di partenza di una nuova istanza su una dashboard. | Da 1 a 24 celle, da 1 a 12 celle; 4 × 4 all'inizio. | Idem. |
| Morsetti di collegamento | Una nota in sola lettura. | « Questo disegno è solo visivo. I morsetti tipizzati possono arrivare da un pacchetto Ganter Symbol v2. » oppure « N morsetti definiti dal pacchetto sono conservati. La geometria dei morsetti è deliberatamente in sola lettura in Ganter Lab. » | I morsetti non si disegnano né si modificano qui: vengono da un pacchetto importato o da un simbolo di sistema duplicato, e la modifica li lascia come sono. |
| Zone attive | Gli ingressi che il simbolo espone (« Ogni zona attiva punta a un id di elemento SVG ed espone una primitiva di esecuzione sicura. »). | Aggiungi zona attiva aggiunge una riga sotto un nome generato (param, poi numerato). |
Ogni riga: un nome, un id di elemento (un elenco a discesa degli id trovati nel markup, oppure un id qualsiasi che digiti), Rimuovi, la natura, Minimo e massimo in ingresso, Minimo e massimo in uscita (l'asse X per Translate e Scale), una coppia facoltativa di Y minimo e Y massimo, e a seconda della natura: per lo spessore del contorno la nota « Il valore della dashboard è una larghezza SVG diretta, da 0.5 a 32. »; per FillColor e StrokeColor un Colore di anteprima; per ogni altra natura un Colore attivo e un Colore inattivo. |
Le regole delle zone attive, ciascuna segnalata sotto i campi con la riga in errore incorniciata: il nome deve essere un identificatore (una lettera o _ per primo, poi lettere, cifre, _, ., : o -) ed essere univoco; l'id dell'elemento deve esistere nel markup; Text punta solo a text e tspan; Fill e FillColor puntano alle forme riempibili, ai gruppi, a use e al testo; le altre nature puntano ai gruppi, a use, alle forme e al testo; Rotate, Rotazione continua e Scale richiedono che l'elemento porti data-ganter-pivot="x y"; ogni valore di intervallo deve essere finito; la coppia Y c'è per intero o non c'è, e solo per Translate e Scale; i colori attivo e inattivo devono essere un esadecimale, un token di tema come var(--color-success) o un nome di colore CSS; un elemento prende al massimo una zona attiva per canale (riempimento, contorno, spessore del contorno, oppure una per ogni altra natura); una zona attiva Rotazione continua attiva richiede una zona attiva Rotazione continua sullo stesso elemento.
Crea simbolo resta grigio finché resta un errore; Annulla o Indietro esce senza creare nulla. Al buon esito il registro delle azioni dice « Simbolo creato. » e la nuova scheda viene selezionata.
Modifica, Duplica, Elimina
Modifica (solo per i tuoi simboli) apre lo stesso editor con « Le modifiche valide di nome, SVG e zone attive si salvano da sole. »: una modifica valida viene salvata mezzo secondo dopo l'ultima battuta (« Simbolo salvato. »), e una bozza non valida non viene salvata e annulla il salvataggio in attesa, così il simbolo memorizzato non diverge mai da quello che l'ispettore mostra. Duplica in I miei simboli (simboli di sistema) copia il disegno, il riquadro di visualizzazione, l'adattamento, l'ingombro, le configurazioni di tipo, i morsetti e i suggerimenti in un simbolo indipendente chiamato « copia di <Name> » (« copia 2 di <Name> »… quando il nome è preso) e lo apre per la modifica (« Simbolo di sistema copiato in I miei simboli. »); la definizione di sistema non viene mai cambiata. Elimina chiede « Eliminare 'X'? Le dashboard che lo usano mostreranno un segnaposto. L'operazione non è reversibile. » (« Simbolo eliminato. »).
Importa simbolo…
Il secondo verbo sopra la riga è un selettore di file che accetta file .svg e .ganter-symbol.json di al massimo 1 MB (« Il file del simbolo supera il limite di 1 MB. »). Il contenuto decide la strada:
- SVG grezzo (il contenuto comincia con
<) viene importato come disegno solo visivo: nessuna zona attiva e nessun morsetto. Il depuratore lo corregge e il registro delle azioni conta le correzioni (« Simbolo importato come nuova risorsa; sono stati rimossi 3 elementi SVG non sicuri. »). Il nome è quello del file senza estensione. - Un pacchetto Ganter symbol v2 (il contenuto comincia con
{) viene importato per intero: nome, SVG, riquadro di visualizzazione, adattamento, ingombro, zone attive, configurazioni di tipo, morsetti e suggerimenti. Un pacchetto è severo: formato, versione e schema devono corrispondere, l'SVG deve essere già depurato (un pacchetto che avrebbe bisogno di correzioni viene rifiutato, non corretto), il riquadro di visualizzazione deve corrispondere alla radice SVG, e ogni morsetto, configurazione e suggerimento deve essere valido (il contratto). Il registro delle azioni nomina il primo problema (« Importazione del simbolo non riuscita: … »).
Un nome già usato da un tuo simbolo riceve un suffisso (« 2 », « 3 »…). Ogni importazione crea un nuovo simbolo e non ne sovrascrive mai uno.
Esporta pacchetto
Esporta pacchetto nell'ispettore scarica il simbolo selezionato, di sistema o tuo, come <name>.ganter-symbol.json: lo stesso pacchetto v2 che l'importazione legge, senza alcuna identità di stazione, così viaggia tra le stazioni (« Esportato <file>. »). Un simbolo il cui disegno non ha un riquadro di visualizzazione alla radice, o una delle cui zone attive porta un indirizzo di stazione, viene rifiutato (« Esportazione del simbolo non riuscita: … »).
Copia l'istruzione per la chat
Copia l'istruzione per la chat copia negli appunti un'istruzione autosufficiente per una chat IA esterna che non ha accesso alla stazione. Comincia con « Create a Ganter Lab symbol for me. Return ONLY the file content, either raw SVG or a single .ganter-symbol.json v2 package, with no commentary, so I can save it as a file and import it unchanged. », prosegue con il contratto v2 completo (i due ingressi accettati, l'involucro del pacchetto, i sedici ancoraggi globali, gli otto tipi di tratto, le nature di zona attiva e le loro regole, i token di tema, le regole di geometria dei morsetti, i limiti del depuratore e un pacchetto minimo valido) e finisce con come riportare indietro la risposta: salvare la risposta come file .svg o .ganter-symbol.json e importarlo qui. Lo stesso contratto è quello che leggono gli strumenti symbol_validate e symbol_import dell'agente, così una chat e un agente producono lo stesso file. Il registro delle azioni dice « Istruzione per la chat copiata. Incollarla in una chat IA e importare l'SVG che restituisce. » (oppure « Gli appunti hanno rifiutato la copia. »). Il verbo è disegnato per ogni ruolo, perché legge soltanto.
Dove si usa un simbolo
Il componente di dashboard Simbolo referenzia un simbolo come system:<key> o user:<id>, associa ogni zona attiva a un indirizzo di Logic, sceglie il tipo di tratto di ogni morsetto configurabile e unisce i morsetti con tratti disegnati nell'editor delle dashboard tramite i tipi di tratto. Un simbolo non ha un indirizzo di Logic proprio.
Che cosa non fa la libreria
Non disegna né sposta morsetti e percorsi interni, non modifica sul posto il disegno di sistema, non importa un pacchetto che avrebbe bisogno di correzioni, non tiene una cronologia delle versioni e non condivide da sola i tuoi simboli tra stazioni: esporta e importa il pacchetto.