home *** CD-ROM | disk | FTP | other *** search
/ Boston 2 / boston-2.iso / DOS / PROGRAM / BASIC / SPIRO / EPICYCS.BAS < prev    next >
BASIC Source File  |  1993-12-01  |  754b  |  27 lines

  1. 100 KEY OFF
  2. 110 WD=639: HT=349
  3. 120 X0=WD/2: Y0=HT/2
  4. 130 PI=3.1415926#
  5. 160 SCREEN 2,1: WIDTH 80: CLS
  6. 165 PRINT "Draw an epicycloid"
  7. 170 INPUT "Ratio of fixed to rolling circle ( 0 = quit )"; R
  8. 180 IF R = 0 THEN END
  9. 190 PRINT "Enter the pen position w.r.t. a circle of radius 1."
  10. 200 PRINT "<1 is inside, =1 is on circle, >1 is outside"
  11. 210 INPUT "Pen position (<=0 to quit)";H
  12. 220 IF H<=0 THEN END
  13. 230 A=.5*R*HT/(R+H+1)
  14. 240 B=A/R
  15. 250 H=H*B
  16. 280 SCREEN 9,1: CLS
  17. 290 LINE(X0,0)-(X0,HT),2
  18. 300 LINE(0,Y0)-(WD,Y0),2
  19. 310 CIRCLE(X0,Y0),A,3
  20. 320 CIRCLE(X0+A+B,Y0),B,3
  21. 350 ANG=0
  22. 360 ANG=ANG+2*PI/600
  23. 370 X=X0+(A+B)*COS(ANG)-H*COS(ANG*(A+B)/B)
  24. 380 Y=Y0-(A+B)*SIN(ANG)+H*SIN(ANG*(A+B)/B)
  25. 390 PSET (X,Y),1
  26. 420 IF INKEY$<>"" THEN 160 ELSE 360
  27.