home *** CD-ROM | disk | FTP | other *** search
/ Programmer 7500 / MAX_PROGRAMMERS.iso / PASCAL / CNC11TP.ZIP / DEMOELIP.PAS < prev    next >
Encoding:
Pascal/Delphi Source File  |  1989-01-19  |  1.7 KB  |  63 lines

  1. { Copyright (C) 1989 Adam Fritz, 133 Main St., Afton, N.Y. 13730 }
  2.  
  3. program StrokeEllipseDemo ;
  4.  
  5.      {    DemoElip - draw ellipse with given radii and     }
  6.      {               and specified rotation angle          }
  7.  
  8. uses GRAPH ;
  9.  
  10. {~~~~~~~~~~~~~~~~~~~~ ellipse routines ~~~~~~~~~~~~~~~~~~~~}
  11.  
  12. {$I conic.pas }
  13.  
  14. {-$I elipda2.pas }
  15. {-$I elipdaf.pas }
  16. {-$I elipdai.pas }
  17. {-$I elipdam.pas }
  18. {-$I elipmb.pas }
  19. {-$I elipmbr.pas }
  20. {-$I elipra.pas }
  21. {$I elipra2.pas }
  22. {-$I elipraf.pas }
  23. {-$I elipraf2.pas }
  24. {-$I eliprai2.pas }
  25. {-$I elipram.pas }
  26.  
  27. {~~~~~~~~~~~~~~~~~~~~~ main program ~~~~~~~~~~~~~~~~~~~~~~~}
  28.  
  29. var
  30.    grDriver, grMode : integer ; { graph control parameters }
  31.    a, b           : word ;    { ellipse radii }
  32.    xc, yc           : integer ; { ellipse center }
  33.    ta, tad          : single ;  { rotation angle }
  34.  
  35. begin
  36.                                 { prompt for radius }
  37.    repeat
  38.       write ('Radii: ') ;
  39.       readln (a,b)
  40.    until (a > 0) and (b > 0) ;
  41.                                 { prompt for rotation angle }
  42.    repeat
  43.       write ('Rotation angle (deg): ') ;
  44.       readln (tad)
  45.    until (tad >= 0.0) and (tad < 360.0) ;
  46.    ta := tad / 180.0 * Pi ;
  47.                                 { initiate graphics }
  48.    grDriver := Detect ;
  49.    InitGraph(grDriver,grMode,'') ;
  50.                                 { center of display }
  51.    xc := (GetMaxX + 1) div 2 ;
  52.    yc := (GetMaxY + 1) div 2 ;
  53.                                 { draw ellipse }
  54.    StrokeEllipse(xc,yc,a,b,ta) ;
  55.                                 { leak test }
  56.    FloodFill(xc,yc,GetMaxColor) ;
  57.                                 { pause }
  58.    readln ;
  59.    CloseGraph
  60. end.
  61.  
  62. { Copyright (C) 1989 Adam Fritz, 133 Main St., Afton, N.Y. 13730 }
  63.