Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Challenges
#60
+1 @Dav another nice surprise!


Here is my code for 2nd snapshot of so called "Doyle" spiral.

Code: (Select All)
_Title "Doyle Spirals 2" ' as B+ ported from John T at LB 2025-11-04
Screen _NewImage(700, 700, 32)
_ScreenMove 300, 0
Color , _RGB32(128)
Cls
xc = 350: yc = 350

For angle = 0 To 359 Step 5
    radius = .1
    While radius < 340
        If angle Mod 10 = 0 Then
            x = radius * Cos(_D2R(angle)) ' Calculate X position
            y = radius * Sin(_D2R(angle)) ' Calculate Y position
            clr~& = _RGB32(55 + radius * 200 / 340, 0, 0)
        Else
            x = (radius * 1.05 * Cos(_D2R(angle))) ' Calculate X position
            y = (radius * 1.05 * Sin(_D2R(angle))) ' Calculate Y position
            clr~& = _RGB32(0, 0, 255 - radius * 240 / 340)
        End If
        FC3 xc + x, yc + y, Int(radius * .052) - 2, clr~&
        radius = radius * 1.1
    Wend
Next

angle = 0
restart:
radius = .1
clr~& = _RGB32(255, 255, 0)
While radius < 340
    r = Int(radius * .052) - 5
    If r < 1 Then r = 1
    x = radius * Cos(_D2R(angle)) ' Calculate X position
    y = radius * Sin(_D2R(angle)) ' Calculate Y position
    FC3 xc + x, yc + y, r, clr~&
    x = (radius * 1.05 * Cos(_D2R(angle + 5))) ' Calculate X position
    y = (radius * 1.05 * Sin(_D2R(angle + 5))) ' Calculate Y position
    FC3 xc + x, yc + y, r, clr~&
    angle = angle + 10
    radius = radius * 1.1
Wend
l = l + 1
angle = 0
angle = angle + l * 60
If l < 6 Then GoTo restart


angle = 0: l = 0
restart2:
radius = .1
clr~& = _RGB32(0, 255, 192)
While radius < 340
    r = Int(radius * .052) - 8
    If r < 1 Then r = 1
    x = radius * Cos(_D2R(angle)) ' Calculate X position
    y = radius * Sin(_D2R(angle)) ' Calculate Y position
    FC3 xc + x, yc + y, r, clr~&
    x = (radius * 1.05 * Cos(_D2R(angle - 5))) ' Calculate X position
    y = (radius * 1.05 * Sin(_D2R(angle - 5))) ' Calculate Y position
    FC3 xc + x, yc + y, r, clr~&
    angle = angle - 10
    radius = radius * 1.1
Wend
l = l + 1
angle = 0
angle = angle - l * 60
If l < 6 Then GoTo restart2
Sleep

Sub FC3 (cx As Long, cy As Long, r As Long, clr~&)
    Dim As Long r2, x, y ' for Option _Explicit
    If r < 1 Then Exit Sub
    Line (cx - r, cy)-(cx + r, cy), clr~&, BF
    r2 = r * r
    Do
        y = y + 1
        x = Sqr(r2 - y * y)
        Line (cx - x, cy + y)-(cx + x, cy + y), clr~&, BF
        Line (cx - x, cy - y)-(cx + x, cy - y), clr~&, BF
    Loop Until y = r
End Sub

Turns out this might not exactly fit the definition of Doyle spirals which is math model of plant growth discovered (or is it invented with math its hard to say) in ealy 1900's. It is circle packing 6 tangent circles around a center and infinitely expanding outward with logarithmic sequence of circle centers. I can not prove perfectly tangent nor perfectly logarithmic but I can say it looks pretty cool anyway! IMHO

I am offerring up code I had started this Challenge with because I think we've come up with more interesting Challenge - 

What can you do with Sin and Cos?

Quite a bit! Suddenly I am reminded once again of Mennonites "SineCube" another great example from QB Samples I mentioned recently in another post.
  724  855  599  923  575  468  400  206  147  564  878  823  652  556 bxor cross forever
Reply


Messages In This Thread
Challenges - by bplus - 04-27-2022, 05:21 PM
RE: Challenges - by Pete - 04-27-2022, 05:33 PM
RE: Challenges - by bplus - 04-27-2022, 05:38 PM
RE: Challenges - by Pete - 04-27-2022, 06:00 PM
RE: Challenges - by bplus - 04-27-2022, 06:08 PM
RE: Challenges - by bplus - 04-28-2022, 01:17 AM
RE: Challenges - by Dav - 04-28-2022, 01:26 AM
RE: Challenges - by Pete - 04-28-2022, 01:59 AM
RE: Challenges - by bplus - 05-04-2022, 01:36 AM
RE: Challenges - by Pete - 05-04-2022, 01:51 AM
RE: Challenges - by bplus - 05-04-2022, 01:57 AM
RE: Challenges - by Pete - 05-04-2022, 02:22 AM
RE: Challenges - by bplus - 05-04-2022, 04:10 PM
RE: Challenges - by bplus - 06-18-2022, 01:10 PM
RE: Challenges - by SierraKen - 06-18-2022, 11:32 PM
RE: Challenges - by bplus - 06-19-2022, 01:09 AM
RE: Challenges - by bplus - 03-26-2024, 11:37 PM
RE: Challenges - by CharlieJV - 03-30-2024, 12:02 AM
RE: Challenges - by SMcNeill - 03-27-2024, 12:20 AM
RE: Challenges - by SMcNeill - 03-27-2024, 12:32 AM
RE: Challenges - by bplus - 03-27-2024, 01:24 AM
RE: Challenges - by bplus - 03-30-2024, 02:53 PM
RE: Challenges - by CharlieJV - 03-30-2024, 03:39 PM
RE: Challenges - by bplus - 03-31-2024, 01:33 PM
RE: Challenges - by Petr - 03-31-2024, 02:00 PM
RE: Challenges - by SMcNeill - 03-31-2024, 02:18 PM
RE: Challenges - by Petr - 03-31-2024, 02:23 PM
RE: Challenges - by bplus - 03-31-2024, 03:28 PM
RE: Challenges - by bplus - 06-18-2024, 10:42 PM
RE: Challenges - by SMcNeill - 06-19-2024, 04:32 AM
RE: Challenges - by SMcNeill - 06-19-2024, 04:45 AM
RE: Challenges - by KingLeonidas - 06-19-2024, 09:42 AM
RE: Challenges - by bplus - 06-19-2024, 01:59 PM
RE: Challenges - by bplus - 06-21-2024, 07:31 PM
RE: Challenges - by bplus - 06-23-2024, 03:07 PM
RE: Challenges - by bplus - 08-14-2025, 03:10 PM
RE: Challenges - by dbox - 08-15-2025, 10:14 PM
RE: Challenges - by bplus - 08-16-2025, 01:02 AM
RE: Challenges - by dbox - 08-30-2025, 04:25 PM
RE: Challenges - by bplus - 08-30-2025, 07:30 PM
RE: Challenges - by dbox - 08-30-2025, 10:36 PM
RE: Challenges - by madscijr - 08-31-2025, 12:34 AM
RE: Challenges - by bplus - 08-31-2025, 04:33 AM
RE: Challenges - by Unseen Machine - 09-02-2025, 08:00 PM
RE: Challenges - by bplus - 09-02-2025, 08:20 PM
RE: Challenges - by Unseen Machine - 09-02-2025, 08:39 PM
RE: Challenges - by bplus - 09-02-2025, 09:41 PM
RE: Challenges - by bplus - 11-06-2025, 05:37 PM
RE: Challenges - Christmas Tree - by 2112 - 11-06-2025, 07:36 PM
RE: Challenges - by bplus - 11-06-2025, 08:47 PM
RE: Challenges - by bplus - 11-07-2025, 03:19 PM
RE: Challenges - by 2112 - 11-07-2025, 06:58 PM
RE: Challenges - by bplus - 11-07-2025, 07:50 PM
RE: Challenges - by madscijr - 11-08-2025, 09:20 PM
RE: Challenges - by NakedApe - 11-08-2025, 02:32 AM
RE: Challenges - by Dav - 11-09-2025, 12:45 AM
RE: Challenges - by bplus - 11-09-2025, 12:48 AM
RE: Challenges - by bplus - 11-09-2025, 01:25 AM
RE: Challenges - by Dav - 11-09-2025, 01:01 PM
RE: Challenges - by bplus - 11-09-2025, 02:14 PM
RE: Challenges - by 2112 - 11-09-2025, 02:58 PM
RE: Challenges - by Dav - 11-10-2025, 02:56 AM
RE: Challenges - by bplus - 11-10-2025, 03:01 PM
RE: Challenges - by Dav - 11-16-2025, 11:59 PM
RE: Challenges - by Petr - 11-17-2025, 01:18 AM
RE: Challenges - by dbox - 11-17-2025, 03:56 AM
RE: Challenges - by Dav - 11-17-2025, 04:10 AM
RE: Challenges - by dbox - 11-17-2025, 02:29 PM
RE: Challenges - by Dav - 11-17-2025, 06:06 PM
RE: Challenges - by dbox - 11-17-2025, 08:12 PM
RE: Challenges - by NakedApe - 11-17-2025, 06:28 PM
RE: Challenges - by bplus - 11-17-2025, 09:28 PM
RE: Challenges - by Dav - 11-18-2025, 02:42 AM
RE: Challenges - by bplus - 11-18-2025, 08:20 AM
RE: Challenges - by Dav - 12-31-2025, 05:33 PM
RE: Challenges - by NakedApe - 12-31-2025, 10:04 PM
RE: Challenges - by Dav - 12-31-2025, 10:28 PM
RE: Challenges - by Dav - 12-31-2025, 10:39 PM
RE: Challenges - by dbox - 01-01-2026, 05:25 AM
RE: Challenges - by Pete - 12-31-2025, 11:11 PM
RE: Challenges - by Dav - 01-01-2026, 02:35 AM
RE: Challenges - by Pete - 01-01-2026, 03:07 AM
RE: Challenges - by bplus - 01-01-2026, 01:36 PM

Possibly Related Threads…
Thread Author Replies Views Last Post
  Rosetta Code Challenges bplus 15 3,405 04-29-2024, 03:03 AM
Last Post: bplus

Forum Jump:


Users browsing this thread: 1 Guest(s)