[successivo] [precedente] [inizio] [fine] [indice generale]
Esistono due diverse maniere per raggruppare più oggetti in Pic:
raggruppamento a graffe (brace grouping);
blocco composto (block composite).
Il metodo più semplice per raggruppare un insieme di oggetti è mediante una coppia di parentesi graffe ({ e }). All'uscita dal raggruppamento la posizione corrente e la direzione corrente vengono reimpostate ai loro valori precedenti all'ingresso nel raggruppamento.
Un blocco composto è un oggetto creato da una successione di comandi racchiusa fra parentesi quadre ([ e ]). Il blocco composto è analogo per molti aspetti a un singolo oggetto chiuso, avente la forma e le dimensioni del riquadro circoscritto. Ad esempio, il frammento di codice del listato 13.1 corrisponde alla figura 13.2 (la quale mostra il blocco senza e con punti di giunzione.). L'etichetta A corrisponde alla posizione del blocco.
|
|
Per riferirsi a uno dei punti di giunzione del blocco composto, è possibile usare, ad esempio, la descrizione A .s. Ai fini della loro menzione, i blocchi composti sono delle classi. Si può utilizzare la descrizione last [] .s equivalentemente, ovunque sia necessaria l'indicazione di una posizione. Tale costrutto è molto importante al fine di assemblare diagrammi estesi e complessi.
I blocchi composti forniscono anche un meccanismo per il campo di azione delle variabili, analogamente a un ambiente Troff (v. sezione 23). Gli assegnamenti di variabile effettuati all'interno di un blocco vengono annullati all'uscita. Per accedere a un valore interno a un blocco, si deve scrivere il nome del blocco, seguito da un punto, seguito dall'etichetta desiderata. Ad esempio, si potrebbe far riferimento al centro del riquadro nel blocco composto, di cui a listato 13.1 e figura 13.2, mediante last [] .Didascalia oppure A.Didascalia.
Questo tipo di riferimento a un'etichetta può essere utilizzato esattamente come una qualsiasi posizione. Ad esempio, aggiungendo "Ciao!" at A.Didascalia al listato 13.1 si ottiene la figura 13.3.
|
È altresì possibile utilizzare le etichette interne sia a destra che a sinistra del modificatore with. Ciò significa che l'esempio di cui a listato 13.1 e figura 13.2 si potrebbe posizionare relativamente alla posizione del riquadro delle didascalia mediante un comando contentente with A.Didascalia at.
Si osservi che larghezza e altezza dei blocchi composti devono sempre essere considerate positive (figura 13.4).
|
I blocchi composti si possono annidare; ciò significa che si possono utilizzare i punti di giunzione dei blocchi per costruire complesse strutture gerarchiche, dall'interno all'esterno. Si osservi che last e gli altri meccanismi di denominazione sequenziale non scendono ai livelli più interni, sicché nel listato 13.5 la freccia di cui alla riga 7 partirà dall'oggetto P e non dall'oggetto Q.
|
DWB Pic prevedeva che ci si potesse riferire ai livelli interni sino al massimo di un livello; GNU Gpic ha eliminato tale restrizione.
Informatica per sopravvivere 2006.01.30 --- Copyright © 2004-2006 Massimo Piai -- <pxam67 (ad) virgilio·it>
Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome gruppi_di_oggetti.html