home *** CD-ROM | disk | FTP | other *** search
/ Programming Languages Suite / ProgLangD.iso / Fortran.51 / DISK6 / FIGURE.FO$ / FIGURE.bin
Text File  |  1990-09-28  |  2KB  |  83 lines

  1. CC  FIGURE.FOR - Illustrates graphics drawing functions including:
  2. CC               arc      ineto     pie         setpixel
  3. CC               ellipse moveto    rectangle
  4.  
  5.       INCLUDE  'FGRAPH.FI'
  6.       INCLUDE  'FGRAPH.FD'
  7.  
  8.       INTEGER*2        status, x, y
  9.       INTEGER*4        ncolor
  10.       RECORD /xycoord/ xy
  11.  
  12. C
  13. C     Find graphics mode.
  14. C
  15.       IF ( setvideomode( $MAXRESMODE ) .EQ. 0 )
  16.      +     STOP 'Error:  cannot set graphics mode'
  17.  
  18.       WRITE (*,*) ' Press ENTER to continue'
  19. C
  20. C     Draw pixels.
  21. C
  22.       ncolor = 2
  23.       status  = setcolor( ncolor )
  24.       x      = 10
  25.       DO y = 50, 89, 3
  26.          status = setpixel( x, y )
  27.          x     = x + 2
  28.       END DO
  29.       READ (*,*) ! Wait for ENTER to be pressed
  30. C
  31. C     Draw lines.
  32. C
  33.       ncolor = ncolor + 1
  34.       status  = setcolor( ncolor )
  35.       x      = 60
  36.       DO y = 50, 89, 3
  37.          CALL moveto( x, y, xy )
  38.          status = lineto( x + 20, y )
  39.       END DO
  40.       READ (*,*) ! Wait for ENTER to be pressed
  41. C
  42. C     Draw rectangles.
  43. C
  44.       ncolor = ncolor + 1
  45.       status  = setcolor( ncolor )
  46.       x      = 110
  47.       y      = 70
  48.       status  = rectangle( $GBORDER,       x - 20, y - 20, x, y )
  49.       status  = rectangle( $GFILLINTERIOR, x + 20, y + 20, x, y )
  50.       READ (*,*) ! Wait for ENTER to be pressed
  51. C
  52. C     Draw ellipses.
  53. C
  54.       ncolor = ncolor + 1
  55.       status  = setcolor( ncolor )
  56.       x      = 160
  57.       status  = ellipse( $GBORDER,       x - 20, y - 20, x, y )
  58.       status  = ellipse( $GFILLINTERIOR, x + 20, y + 20, x, y )
  59.       READ (*,*) ! Wait for ENTER to be pressed
  60. C
  61. C     Draw arcs.
  62. C
  63.       ncolor = ncolor + 1
  64.       status  = setcolor( ncolor )
  65.       x      = 210
  66.       status  = arc( x - 20, y - 20, x, y, x, y - 10, x - 10, y )
  67.       status  = arc( x + 20, y + 20, x, y, x + 10, y + 20, x + 20,
  68.      +              y + 10 )
  69.       READ (*,*) ! Wait for ENTER to be pressed
  70. C
  71. C     Draw pies.
  72. C
  73.       ncolor = ncolor + 1
  74.       status  = setcolor( ncolor )
  75.       x      = 260
  76.       status  = pie( $GBORDER,   x - 20, y - 20, x, y, x,
  77.      +              y - 10, x - 10, y)
  78.       status  = pie( $GFILLINTERIOR, x + 20, y + 20, x, y, x + 10,
  79.      +              y + 20, x + 20, y + 10 )
  80.       READ (*,*) ! Wait for ENTER to be pressed
  81.       status = setvideomode( $DEFAULTMODE )
  82.       END
  83.