[successivo] [precedente] [inizio] [fine] [indice generale]


Sezione 11.   Nomi

La maniera più naturale per indicare le posizioni in Pic è in relativamente agli oggetti. Per far ciò è necessario poter assegnare dei nomi agli oggetti stessi. Il linguaggio Pic prevede numerose possibilità in tal senso, mutuate in modo naturale della lingua inglese.

11.1   Nominare gli oggetti per ordine di tracciamento

Il modo più semplice (e in genere il più utile) per nominare un oggetto è tramite la clausola last. È necessario che essa sia seguita dall'indicazione del tipo di oggetto: box, circle, ellipse, line, arrow, spline, "" oppure [] (l'ultimo tipo si riferisce a un blocco composto, di cui si discuterà nella sezione 13.2). Pertanto, ad esempio, la clausola last circle nel listato 10.5 si riferisce all'ultimo cerchio tracciato.

Generalizzando, si può dire che gli oggetti di un dato tipo sono implicitamente numerati a partire da 1. Ci si può riferire per esempio alla terza ellisse nella figura corrente tramite 3rd ellipse, oppure al primo riquadro tramite 1st box, o ancora alla quinta stringa di testo (la quale non sia attributo di un altro oggetto, naturalmente) tramite 5th "".

Inoltre gli oggetti sono numerati alla rovescia, per ciascun tipo, a partire dall'ultimo. Si può quindi utilizzare 2nd last box per indicare il penultimo riquadro, oppure 3rd last ellipse per la terz'ultima ellisse.

Ove sia prevista la notazione seguente:

nth

si può usare anche la seguente:

`espressione'th

ove espressione abbia valore numerico (intero).(1) Per un esempio, si consideri il listato 11.1.

Listato 11.1.

...
for i = 1 to 4 do {
   line from upper left of `i'th box to lower right of `i+1'th box
}
...

11.2   Nominare gli oggetti mediante etichette

Si possono menzionare gli oggetti anche tramite delle etichette. Un'etichetta è una parola (che inizi con una lettera maiuscola) seguita dai due punti (:); viene dichiarata semplicemente posizionandola immediatamente prima del comando di tracciamento dell'oggetto. Ad esempio, il codice del listato 11.2 dichiara le etichette A e B per il primo e il secondo oggetto, rispettivamente; la figura 11.3 presenta il risultato.

Listato 11.2.

      1 .PS
      2 A: box "primo" "oggetto"
      3 move;
      4 B: ellipse "secondo" "oggetto"
      5 move;
      6 arrow right at right of A;
      7 .PE

Figura 11.3. Esempio di utilizzo delle etichette.

Esempio di utilizzo delle etichette

L'istruzione at nella riga 6 utilizza l'etichetta A (il comportamento di at verrà spiegato nella sezione 12). In seguito (sezione 13.2) si evidenzierà quanto le etichette si rivelino particolarmente utili nel caso degli oggetti composti.

Le etichette non sono costanti, bensì variabili.(2) Con del codice come A: A + (1,0); si ottiene l'effetto di riassegnare all'etichetta A un valore che designa una nuova posizione che si trova un pollice a destra della vecchia (v. anche sezione 12).


Informatica per sopravvivere 2006.01.30 --- Copyright © 2004-2006 Massimo Piai -- <pxam67 (ad) virgilio·it>


1) 'th è un singolo elemento sintattico: non ci deve essere uno spazio fra ' e th.

2) Si può considerare l'elemento sintattico : come una spece di operatore di assegnamento.


Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome nomi.html

[successivo] [precedente] [inizio] [fine] [indice generale]

Valid ISO-HTML!

CSS validator!