外部絵定義

 外部絵定義(EXTERNAL PICTURE〜END PICTURE構文)は,外部手続きの一つで,機能的には外部副プログラムとほとんど同じものである。
外部絵定義を利用するプログラム単位には,その絵名を指定するDECLARE EXTERAL PICTURE文を書く。
外部絵定義は,EXTERNAL PICTURE行で始まり,END PICTURE行で終わる。

例1 n角形を描く絵定義の例

10 DECLARE EXTERNAL PICTURE polygon
20 OPTION ANGLE DEGREES
30 SET WINDOW -4,4,-4,4
40 DRAW polygon(6)
50 DRAW polygon(7) WITH ROTATE(-90/7)*SCALE(1.5)*SHIFT(2,2) 
60 END
100 EXTERNAL PICTURE polygon(n)
110 OPTION ANGLE DEGREES
120 FOR i=0 TO n
130    PLOT LINES:COS(i*360/n),SIN(i*360/n);
140 NEXT i
150 END PICTURE

解説
10行から60行までは主プログラム。
100行から150行までが外部絵定義。
外部絵定義は主プログラムよりも後,つまりEND行以降に書く。
外部絵定義はプログラム単位なので,OPTION ANGLE文は主プログラムと外部絵定義の双方に必要になる。

外部絵定義の特徴
外部絵定義の内部で利用する変数は他のプログラム単位に書かれた同名の変数と独立している。たとえば,次のプログラムで主プログラムの変数iと外部絵定義polygonでのiとは別の変数。
例2

10 DECLARE EXTERNAL PICTURE polygon
20 OPTION ANGLE DEGREES
30 SET WINDOW -4,4,-4,4
40 FOR i=-4 to 4
50    DRAW polygon(7) WITH SHIFT(i,i)
60 NEXT i 
70 END
100 EXTERNAL PICTURE polygon(n)
110 OPTION ANGLE DEGREES
120 FOR i=0 TO n
130    PLOT LINES:COS(i*360/n),SIN(i*360/n);
140 NEXT i
150 END PICTURE