Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Heart Beat
#1
Code: (Select All)
_Title "Heart Beat" 'b+ 2022-09-01  playing with Heart graphic code at JB
'    https://justbasiccom.proboards.com/thread/883/heart-shapes
Screen _NewImage(600, 350, 32)
Color &HFFFF0000, &HFFEEEEEE
M = 313
P = 100
J = 1
Dim h(1 To 4) As Long
For stepper = .0005 To .0005004 Step .0000001
    k = k + 1
    Cls
    For I = 0 To 1.567 Step stepper
        J = 0 - J
        Circle (Abs(P * (J * I + 3)), P * (2 + (I ^ .01 * (Abs(Cos(I)) ^ .5 * Cos(M * I)) - I ^ .3))), 1
    Next
    h(k) = _NewImage(600, 350, 32)
    _PutImage , 0, h(k)
Next
k = 0: dk = 1
While 1
    k = k + dk
    If k > 4 Then k = 1
    _PutImage , h(k), 0
    toggle = 1 - toggle
    If toggle Then _Delay .8 Else _Delay .08
Wend

https://www.youtube.com/watch?v=xos2MnVxe-c
b = b + ...
Reply
#2
Good job B+! It's always fun to find new graphical equations. Smile
Reply
#3
Yes that is one heck of a formula for y!
b = b + ...
Reply
#4
Ah! Here is the animation we were trying to duplicate at JB:
Code: (Select All)
_Title "Heart Code Animation by tsh73" 'b+ 2022-09-03 playing with Heart graphic code at JB
'    https://justbasiccom.proboards.com/thread/883/heart-shapes
Screen _NewImage(600, 350, 32)
Color &HFFFF0000, &HFFEEEEEE
M = 313
P = 100
J = 1
Dim h(1 To 10) As Long
For k = 0 To 9
    Cls
    J = 1
    For I = 0 To 1.567 Step 0.0005 '.5/(P*5+k/60)
        x = Int(Abs(P * (J * I + 3)))
        J = 0 - J
        Circle (x, Int(P * (2 + (I ^ .01 * (Abs(Cos(I)) ^ .5 * Cos(M * I + k / 30)) - I ^ .3)))), 1, &HFF990000
    Next
    h(k + 1) = _NewImage(600, 350, 32)
    _PutImage , 0, h(k + 1)
Next
k = 0: dk = 1
While 1
    k = (k + 1) Mod 10 + 1
    _PutImage , h(k), 0
    _Limit 10
Wend

Much smoother!
b = b + ...
Reply
#5
Here you don't even have to copy and paste, QBJS will run it for you!
https://qbjs.org/?code=X1RpdGxlICJIZWFyd...AxMApXZW5k

   
b = b + ...
Reply
#6
Nice!
Reply




Users browsing this thread: 2 Guest(s)