``

前頁 次頁

BASIC`入門`

    グラフィックスの基本

    ◇ 座標系の設定
      set window文を用いて座標系を設定する。
       書式
       SET WINDOW  left , right , bottom , top
                         left   左端x座標
                         right  右端x座標
                         bottom 下端y座標
                         top    上端y座標
    例
         SET WINDOW -4,4,0,8
       x座標の範囲を-4〜4，y座標の範囲を0〜8に設定する。
    <Note>
      図形を正しく描きたいときには，
           right−left ＝top−bottom
    となるように範囲を定める。

    ◇ 座標軸を描く。
      座標軸を描く必要があるときには，組込みの絵定義axesを利用する。
      また，座標軸のかわりに格子を描きたいときには，組込みの絵定義gridを利用する。
      書式
          DRAW axes
          DRAW grid
      目盛りの間隔を1以外の値にしたいときは，次の形を用いる。

`DRAW axes(`x`,`y`)`

`DRAW grid(`x`,`y`)`

``x`,`y `は数値式。`

    ◇ 曲線を描く。
      曲線を描く命令は PLOT LINES 。

    曲線を描く原理
      XYプロッタという装置がある。
      曲線はペンによって描かれる。
      ペンは紙の上を移動する。そのとき，ペンが紙に接していると線が描かれる。
      ペンが上がった状態（紙から離れた状態）でペンを移動しても何も描かれない。
      ペンのことを描点といい，
      ペンが紙に接していることを描点がオン，
          紙から離れていることを描点がオフであるという。

     書式と意味
      PLOT LINES: x,y     点(x,y)に描点を移動し，
                          描点をオフにする。
      PLOT LINES: x,y;    点(x,y)に描点を移動し，
                          描点をオンにする。
      PLOT LINES          描点をオフにする。
      なお，プログラムの実行開始直後の描点の状態は必ずオフである。

    ◇　例
    （１）関数のグラフを描く.

    10 DEF f(x)=x^3+2*x+1
    20 SET WINDOW -5,5,-5,5
    30 DRAW grid
    40 FOR x=-5 TO 5 STEP 0.01
    50     PLOT LINES: x,f(x);
    60 NEXT x
    70 END

    （２）複数の曲線を描く。
    10  SET WINDOW -5,5,-5,5
    20  FOR x=-5 TO 5 STEP 0.01
    30     PLOT LINES: x,sin(x);
    40  NEXT x
    50  PLOT LINES
    60  FOR x=-5 TO 5 STEP 0.01
    70      PLOT LINES: x,cos(x);
    80  NEXT x
    90  END

    ◇ ２つの曲線がつながってしまわないために,50行の PLOT LINES を書く。

    （３）媒介変数表示

    10 option angle degrees
    20 SET WINDOW -4,4,-4,4
    30 DRAW axes
    40 FOR t=0 TO 360
    50     PLOT LINES: 3*cos(t),2*sin(t);
    60 NEXT t
    70 END

    （４）極座標
    10 SET WINDOW -2,2,-2,2
    20 DRAW axes
    30 FOR t=0 TO 2*pi STEP pi/180
    40     LET r=1+cos(t)
    50     PLOT LINES: r*cos(t),r*sin(t);
    60 NEXT t
    70 END

    ◇  直交座標を極座標に変換するには,次のようにする。
        LET r=SQR(x^2+y^2)
        LET t=ANGLE(x,y)