' -−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−- ' This program exported from BASIC Anywhere Machine (Version [5.2.3].[2024.07.01.10.00]) on 2024.07.02 at 04:13 (Coordinated Universal Time) ' This BAM Program by Charlie Veniot ' Inspired by the Small Visual Basic program found on Facebook (https://www.facebook.com/share/p/RfHe2pu4Xc31CQWM/) ' -−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−- SCREEN _NEWIMAGE( 601, 601, 17 ) DECLARE SUB DrawShape( a%, p% ) ' 🔖 a% = angle, p% = TRUE or FALSE (whether to paint or not) sc% = 62 ' 🔖 Shape border colour ' -−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−- ' Main Program FOR a% = 0 TO 345 STEP 15 IF sc% = 62 THEN sc% = 61 ELSE sc% = 62 ' 🔖 The shapes overlap, so we need to generate them with alternating border colours so PAINT can find the boundaries of each shape COLOR sc% : CALL DrawShape( (a%), TRUE ) COLOR 63 : CALL DrawShape( (a%), FALSE ) ' 🔖 Redraw shape's border with the colour white next a% ' -−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−-−- ' Subroutines SUB DrawShape( a%, p% ) DRAW "bm300,300" DRAW "B TA" + a% + " U 160" a% = a% + 295 px% = POINT(0) : py% = POINT(1) DRAW "TA" + a% + " U 150" _DELAY 0.02 DRAW "TA" + ( a% + 5 ) + " R 64" _DELAY 0.02 draw "TA" + ( a% + 345 ) + " D 170" _DELAY 0.02 DRAW "M" + px% + "," + py% _DELAY 0.02 IF p% THEN DRAW "B U 120" : DRAW "B L 4" : PAINT ( POINT(0), POINT(1) ), INT( RND * 60 + 1), sc% : _DELAY 0.05 END SUB