''' Number subcircles : 3, else adapt data DEFDBL A-Z k = 3 DIM r(k), alf(k), thet(k) FOR m = 1 TO k: READ r(m): NEXT m FOR m = 1 TO k: READ alf(m): NEXT m FOR m = 1 TO k: READ thet(m): NEXT m pi = ATN(1) * 4 x0 = 320: y0 = 240 SCREEN 12 LOCATE 3, 1: COLOR 11 PRINT " PlanetFill: Path of a satellite of a planet of a star" LOCATE 7, 1: COLOR 7 PRINT " Actually, MetaPath of a description point on that path" PRINT PRINT " Attractor-like path-fill depending on" PRINT " angular increment of that description point" PRINT PRINT " The satellite path itself is not periodical (or after many " PRINT " cycles): check with small increments around 1ø" PRINT " Some metapaths (large increments) do prove periodical" PRINT PRINT "-> Try small and large increments, also, multiples of 90 and 360ø," PRINT " and small deviations, eg: 720, 721, 3600, 3600.1 ..." PRINT "-> Press a key to interrupt, and again to enter new increment" PLAY "l21o3c+ef+g+>c Press a key... " tijd = TIMER: WHILE TIMER - tijd < .5: WEND IF col = 11 THEN col = 5 ELSE col = 11 a$ = INKEY$ WEND a$ = "": CLS weer: LOCATE 1, 1 COLOR 11 INPUT "-> Angular increment (0=END) ? ", t IF t = 0 THEN END PRINT : PRINT COLOR 7 PRINT " (Type '-' to link path points)" COLOR 11 LOCATE CSRLIN - 2, 1 INPUT "-> Link path points ? ", p$ 'SCREEN 12 CLS COLOR 3: PRINT t t = pi * t / 180 CIRCLE (x0, y0), 4, 14 SLEEP 1 x = x0: y = y0 '''first point... RESTORE leesthet FOR m = 1 TO k: READ thet(m): NEXT m FOR j = 1 TO k thet(j) = thet(j) + alf(j) * t x = x + r(j) * COS(thet(j)) * 2 y = y + r(j) * SIN(thet(j)) * 2 NEXT j PSET (x, y) '''...first point DO x = x0: y = y0 FOR j = 1 TO k thet(j) = thet(j) + alf(j) * t x = x + r(j) * COS(thet(j)) * 2 y = y + r(j) * SIN(thet(j)) * 2 NEXT j IF p$ = "-" THEN LINE -(x, y), 3 ELSE PSET (x, y), 11 a$ = INKEY$ LOOP WHILE a$ = "" PLAY "o4l12d" a$ = INPUT$(1) GOTO weer lees: DATA 60,45.5 ,10.23 : 'radii main and subcircles DATA .5, 3.123, 10.23 : 'relative angular increments 'DATA .50112354 ,3.123642 ,10.2365412 : 'try these for a change leesthet: DATA 1.0,0.0,2.0,0. : 'starting angles END