home *** CD-ROM | disk | FTP | other *** search
/ RUN Flagazine: Run 14 / unpacked-run14.zip / ATTRAC.BAS < prev    next >
BASIC Source File  |  1995-01-01  |  966b  |  34 lines

  1. REM DE VREEMDE ATTRACTOREN VAN LORENTZ (C) RUN FLAGAZINE
  2. SCREEN 12: PI = 4 * ATN(1): WINDOW (-50, 0)-(50, 50): RANDOMIZE TIMER
  3. a = 10: b = 2.27: C = 28: d = .002: x = -25.5: y = -15.5: z = 7: vl = 1
  4. CS = COS(K * PI / 5): SS = SIN(K * PI / 5): kl = 14
  5. Begin:
  6. IF vl = 0 THEN z = 15: GOSUB Nieuw
  7. FOR M = 1 TO 25000
  8.    vl = 0: U = x:
  9.    V = x * CS - y * SS
  10.    W = x * SS + y * CS
  11.    PSET (V + W, z), kl
  12.    X1 = x + d * a * (y - x)
  13.    Y1 = y + d * (x * (C - z) - y)
  14.    Z1 = z + d * (x * y - b * z)
  15.    X2 = X1 + d * a * (Y1 - X1)
  16.    Y2 = Y1 + d * (X1 * (C - Z1) - Y1)
  17.    Z2 = Z1 + d * (X1 * Y1 - b * Z1)
  18.    x = (x + X2) / 2
  19.    y = (y + Y2) / 2
  20.    z = (z + Z2) / 2
  21. NEXT M
  22. GOTO Begin
  23. Nieuw:
  24. LOCATE 3, 1
  25. PRINT "[Enter] volgende attractor"
  26. WHILE INKEY$ <> CHR$(13): WEND
  27. a = RND * 20 + 4: b = RND * 3.4: kl = 10 + INT(RND * 5)
  28. x = RND * 25: y = RND * 15
  29. CLS
  30. PRINT "Random aantrekkers"
  31. PRINT "a="; a; "b="; b; "x="; x; "y="; y; "z="; z
  32. RETURN
  33.  
  34.