Author Topic: Peace Sign  (Read 5657 times)

0 Members and 1 Guest are viewing this topic.

Offline SierraKen

  • Forum Resident
  • Posts: 1454
    • View Profile
Peace Sign
« on: March 09, 2022, 08:13:17 pm »
This is a peace sign I just threw together. The colors of the sign change and then go back and start over.

Code: QB64: [Select]
  1. _Title "Peace - press Esc to quit app."
  2. Screen _NewImage(800, 600, 32)
  3. r = 50: g = 1: b = 1
  4. _Limit 100
  5.     If r < 256 Then r = r + .005
  6.     If r > 255 Then r2 = 1
  7.     If b < 256 And r2 = 1 Then b = b + .005
  8.     If b > 255 Then b2 = 1
  9.     If g < 256 And r2 = 1 And b2 = 1 Then g = g + .005
  10.     If g > 255 Then r2 = 0: b2 = 0: r = 1: b = 1: g = 1
  11.  
  12.     x = x + .01
  13.     y = y + .01
  14.     Line (0, y)-(x, 0), _RGB32(r, g, b)
  15.     If y > 2000 Then GoTo design:
  16. design:
  17.  
  18. For cir = .1 To 100 Step .1
  19.     Circle (400, 300), cir, _RGB32(127 - cir, 255 / cir, 255 / cir)
  20. Next cir
  21.     bl = bl + 1
  22.     If bl > 254 Then bl = 1
  23.     gr = gr + 1
  24.     If gr > 254 Then gr = 1
  25.     re = red + 1
  26.     If re > 254 Then re = 1
  27.     For thick = .1 To 10 Step .1
  28.         Circle (400, 300), 90 + thick, _RGB32(re, gr, bl)
  29.     Next thick
  30.  
  31.     seconds = 29.99
  32.     s = (60 - seconds) * 6 + 180
  33.     x2 = Int(Sin(s / 180 * 3.141592) * 100) + 400
  34.     y2 = Int(Cos(s / 180 * 3.141592) * 100) + 300
  35.     Line (400, 300)-(x2, y2), _RGB32(re, gr, bl)
  36.     seconds = 60
  37.     s = (60 - seconds) * 6 + 180
  38.     x2 = Int(Sin(s / 180 * 3.141592) * 100) + 400
  39.     y2 = Int(Cos(s / 180 * 3.141592) * 100) + 300
  40.     Line (400, 300)-(x2, y2), _RGB32(re, gr, bl)
  41.     seconds = 20
  42.     s = (60 - seconds) * 6 + 180
  43.     x2 = Int(Sin(s / 180 * 3.141592) * 100) + 400
  44.     y2 = Int(Cos(s / 180 * 3.141592) * 100) + 300
  45.     Line (400, 300)-(x2, y2), _RGB32(re, gr, bl)
  46.     seconds = 40
  47.     s = (60 - seconds) * 6 + 180
  48.     x2 = Int(Sin(s / 180 * 3.141592) * 100) + 400
  49.     y2 = Int(Cos(s / 180 * 3.141592) * 100) + 300
  50.     Line (400, 300)-(x2, y2), _RGB32(re, gr, bl)
  51.  
  52.     _Delay .02
  53.     If bl = 254 Then _Delay 1
  54.  

Ken's Peace Sign.jpg
* Ken's Peace Sign.jpg (Filesize: 63.83 KB, Dimensions: 797x625, Views: 176)
« Last Edit: March 09, 2022, 08:21:36 pm by SierraKen »

Offline bplus

  • Global Moderator
  • Forum Resident
  • Posts: 8053
  • b = b + ...
    • View Profile
Re: Peace Sign
« Reply #1 on: March 09, 2022, 09:05:17 pm »
Hey Ken nice background!

Here's some help with ThickLine:
Code: QB64: [Select]
  1. Screen _NewImage(800, 600, 32)
  2.  
  3. ThickLine 400, 20, 400, 580, 50, _RGB32(255, 255, 255)
  4. ThickLine 400, 300, 400 + 280 * Cos(_Pi / 2 + _Pi / 4), 300 + 280 * Sin(_Pi / 2 + _Pi / 4), 50, _RGB32(255, 255, 255)
  5. ThickLine 400, 300, 400 + 280 * Cos(_Pi / 2 - _Pi / 4), 300 + 280 * Sin(_Pi / 2 - _Pi / 4), 50, _RGB32(255, 255, 255)
  6. Circle (400, 300), 280
  7.  
  8. Sub ThickLine (x1, y1, x2, y2, rThick, colr~&)
  9.     'x1, y1 is one endpoint of line
  10.     'x2, y2 is the other endpoint of the line
  11.     'rThick is the radius of the tiny circles that will be drawn
  12.     '   from one end point to the other to create the thick line
  13.  
  14.     'Yes, the line will then extend beyond the endpoints with circular ends.
  15.  
  16.     cThick = Int(rThick / 2) ' << dont change value, copy it
  17.     stepx = x2 - x1: stepy = y2 - y1
  18.     lngth = Int((stepx ^ 2 + stepy ^ 2) ^ .5)
  19.     If lngth Then
  20.         dx = stepx / lngth: dy = stepy / lngth
  21.         For i = 0 To lngth
  22.             For r = 0 To cThick Step .25
  23.                 Circle (x1 + dx * i, y1 + dy * i), r
  24.             Next
  25.         Next
  26.     Else
  27.         For r = 0 To cThick Step .25
  28.             Circle (x1, y1), r
  29.         Next
  30.     End If
  31.  
  32.  
  33.  
  34.  

Edit: Thickness is 1 unit to 5.5 unit (radius) 280/5.5 ~ 50
« Last Edit: March 09, 2022, 09:17:21 pm by bplus »

Offline SierraKen

  • Forum Resident
  • Posts: 1454
    • View Profile
Re: Peace Sign
« Reply #2 on: March 09, 2022, 09:43:10 pm »
Thanks B+! I just had to add the color variable inside of the SUB's CIRCLE command and it works great! I love it! I left the tips rounded to make it almost like a paintbrush look to it, or spray paint. Thanks again :).

Here is the code and a new picture:

Code: QB64: [Select]
  1. _Title "Peace - press Esc to quit app."
  2.  
  3. Screen _NewImage(800, 600, 32)
  4. r = 50: g = 1: b = 1
  5. _Limit 100
  6.     If r < 256 Then r = r + .005
  7.     If r > 255 Then r2 = 1
  8.     If b < 256 And r2 = 1 Then b = b + .005
  9.     If b > 255 Then b2 = 1
  10.     If g < 256 And r2 = 1 And b2 = 1 Then g = g + .005
  11.     If g > 255 Then r2 = 0: b2 = 0: r = 1: b = 1: g = 1
  12.  
  13.     x = x + .01
  14.     y = y + .01
  15.     Line (0, y)-(x, 0), _RGB32(r, g, b)
  16.     If y > 2000 Then GoTo design:
  17. design:
  18.  
  19. For cir = .1 To 100 Step .1
  20.     Circle (400, 300), cir, _RGB32(127 - cir, 255 / cir, 255 / cir)
  21. Next cir
  22.     bl = bl + 1
  23.     If bl > 254 Then bl = 1
  24.     gr = gr + 1
  25.     If gr > 254 Then gr = 1
  26.     re = red + 1
  27.     If re > 254 Then re = 1
  28.     For thick = .1 To 10 Step .1
  29.         Circle (400, 300), 90 + thick, _RGB32(re, gr, bl)
  30.     Next thick
  31.  
  32.     colr~& = _RGB32(re, gr, bl)
  33.     ThickLine 400, 220, 400, 300 + 80, 20, colr~&
  34.     ThickLine 400, 300, 400 + 80 * Cos(_Pi / 2 + _Pi / 4), 300 + 80 * Sin(_Pi / 2 + _Pi / 4), 20, colr~&
  35.     ThickLine 400, 300, 400 + 80 * Cos(_Pi / 2 - _Pi / 4), 300 + 80 * Sin(_Pi / 2 - _Pi / 4), 20, colr~&
  36.  
  37.     _Delay .02
  38.     If bl = 254 Then _Delay 1
  39.  
  40. Sub ThickLine (x1, y1, x2, y2, rThick, colr~&)
  41.     'x1, y1 is one endpoint of line
  42.     'x2, y2 is the other endpoint of the line
  43.     'rThick is the radius of the tiny circles that will be drawn
  44.     '   from one end point to the other to create the thick line
  45.  
  46.     'Yes, the line will then extend beyond the endpoints with circular ends.
  47.  
  48.     cThick = Int(rThick / 2) ' << dont change value, copy it
  49.     stepx = x2 - x1: stepy = y2 - y1
  50.     lngth = Int((stepx ^ 2 + stepy ^ 2) ^ .5)
  51.     If lngth Then
  52.         dx = stepx / lngth: dy = stepy / lngth
  53.         For i = 0 To lngth
  54.             For r = 0 To cThick Step .25
  55.                 Circle (x1 + dx * i, y1 + dy * i), r, colr~&
  56.             Next
  57.         Next
  58.     Else
  59.         For r = 0 To cThick Step .25
  60.             Circle (x1, y1), r
  61.         Next
  62.     End If
  63.  

Ken's Peace Sign.jpg
* Ken's Peace Sign.jpg (Filesize: 61.91 KB, Dimensions: 800x624, Views: 160)

Offline SierraKen

  • Forum Resident
  • Posts: 1454
    • View Profile
Re: Peace Sign
« Reply #3 on: March 09, 2022, 10:36:40 pm »
If anyone wishes to make their own peace signs, feel free to post them here.

Offline bplus

  • Global Moderator
  • Forum Resident
  • Posts: 8053
  • b = b + ...
    • View Profile
Re: Peace Sign
« Reply #4 on: March 10, 2022, 01:02:40 am »
Changed Thick line to Lyne:
Code: QB64: [Select]
  1. _Title "Now" 'B+ 2022-03-10 Mod Smooth Clock #3
  2. Const sq = 320 '<<<<<<<<<<<<<< everything is scaled to this
  3. Const xy0 = sq / 2, dr = .88 * xy0, br = .1 * xy0, hh = .65 * xy0, mh = .88 * xy0, sh = .88 * xy0, thk = .01 * xy0
  4. Const pi = 3.141592653589793, pm2 = 2 * pi, pd2 = pi / 2, pm2d12 = 2 * pi / 12, pm2d60 = 2 * pi / 60 ' pi stuff
  5. Screen _NewImage(sq, sq, 32)
  6. _ScreenMove (1200 - sq) / 2, 10
  7.     t# = Timer(.001)
  8.     hour% = Int(t# / 3600)
  9.     If hour% > 12 Then showHr# = t# / 3600 - 12 Else showHr# = t# / 3600
  10.     min# = t# / 60 - hour% * 60
  11.     sec# = t# - hour% * 3600 - Int(min#) * 60
  12.     Color , &HFF002868: Cls
  13.     For r = dr - dr / 11 To dr + dr / 11 Step .25
  14.         Circle (xy0, xy0), r
  15.     Next
  16.     lyne xy0, xy0 - dr, 2 * dr, pd2, dr / 5.5, &HFFFFFFFF
  17.     lyne xy0, xy0, dr, pi * .25, dr / 5.5, &HFFFFFFFF
  18.     lyne xy0, xy0, dr, pi * .75, dr / 5.5, &HFFFFFFFF
  19.     For i = 0 To 59
  20.         If i Mod 5 = 0 Then r = 3 Else r = 1
  21.         Circle (xy0 + dr * Cos(i * pm2d60), xy0 + dr * Sin(i * pm2d60)), r * thk, &HFFBF0A30
  22.     Next
  23.     lyne xy0, xy0, hh, pm2d12 * showHr# - pd2, 8 * thk, &HFFBF0A30
  24.     lyne xy0, xy0, mh, pm2d60 * min# - pd2, 6 * thk, &HFFBF0A30
  25.     lyne xy0, xy0, sh, pm2d60 * sec# - pd2, 2 * thk, &HFFBF0A30
  26.     Circle (xy0, xy0), 3, &HFF000000
  27.     _Limit 60
  28.     _Display
  29.  
  30. Sub lyne (x0, y0, lngth, ra, thic, c As _Unsigned Long)
  31.     Dim x As Integer, y As Integer, l As Integer
  32.     While l < lngth
  33.         l = l + 1: x = x0 + l * Cos(ra): y = y0 + l * Sin(ra)
  34.         For radius = 0 To thic / 2
  35.             Circle (x, y), radius, c, BF
  36.         Next
  37.     Wend
  38.  

 
Now.PNG

Offline Dimster

  • Forum Resident
  • Posts: 500
    • View Profile
Re: Peace Sign
« Reply #5 on: March 10, 2022, 08:28:42 am »
Does it come in Blue and Yellow?

Offline bplus

  • Global Moderator
  • Forum Resident
  • Posts: 8053
  • b = b + ...
    • View Profile
Re: Peace Sign
« Reply #6 on: March 10, 2022, 11:06:22 am »
Does it come in Blue and Yellow?

Sure a simple mod I leave to you!

Offline SierraKen

  • Forum Resident
  • Posts: 1454
    • View Profile
Re: Peace Sign
« Reply #7 on: March 10, 2022, 12:47:35 pm »
Cool clock B+!

Offline bplus

  • Global Moderator
  • Forum Resident
  • Posts: 8053
  • b = b + ...
    • View Profile
Re: Peace Sign
« Reply #8 on: March 10, 2022, 10:30:25 pm »
Code: QB64: [Select]
  1. _Title "Peace Train" ' 2022-03-10 Mod of old post 2019-03-24 mod B+ 2019-03-26
  2.  
  3.  
  4.  
  5. '      play this: [youtube]https://www.youtube.com/watch?v=UkTQri3a4Gg[/youtube]
  6. '      Cat Stevens: Peace Train
  7.  
  8.  
  9.  
  10. Screen _NewImage(800, 600, 32)
  11. _ScreenMove 200, 20
  12.  
  13. 'background B+ mod
  14. Dim Shared scape&
  15. LoadLandscape
  16. scapeWidth = _Width(scape&)
  17. scapeHeight = _Height(scape&)
  18. 'PRINT scapeWidth, scapeHeight
  19.  
  20. 'train stuff [banned user] and Fellippe?
  21.  
  22. Dim Shared Train(7, 10) As String
  23. Dim Shared Coal(10) As String
  24.  
  25. Dim Smoke1 As String
  26. Dim Smoke2 As String
  27. Dim Smoke3 As String
  28. Dim Smoke4 As String
  29. Smoke1 = Space$(16) + "@@@@"
  30. Smoke2 = Space$(16) + "          @ @ "
  31. Smoke3 = Space$(16) + "    @@     @@     @     @     @    "
  32. Smoke4 = Space$(16) + "       @@     @@     @     @     @ "
  33. LoadTrain
  34. col = 1
  35. row = 7
  36. p = 6
  37.  
  38. le = scapeWidth - 800
  39.     Cls
  40.  
  41.     '    background stuff
  42.     If le + 800 > scapeWidth Then
  43.         te = scapeWidth - le
  44.         _PutImage (0, 0)-(te, scapeHeight), scape&, 0, (scapeWidth - te, 0)-(scapeWidth, scapeHeight)
  45.         _PutImage (te, 0)-(800, scapeHeight), scape&, 0, (0, 0)-(800 - te, scapeHeight)
  46.     Else
  47.         _PutImage (0, 0)-(800, scapeHeight), scape&, 0, (le, 0)-(le + 800, scapeHeight)
  48.     End If
  49.     '_PRINTSTRING (5, 5), STR$(le)
  50.     le = le - 1
  51.     If le < 0 Then le = scapeWidth
  52.  
  53.  
  54.     'train stuff
  55.     Color _RGBA32(255, 255, 255, 200), _RGBA32(0, 0, 0, 0)
  56.     For j = 0 To 9
  57.         '_PRINTSTRING (0, 16 * j + 112), MID$(Train(p, j + 1), i, 80)
  58.         _PrintString (64, 16 * j + 442), Mid$(Train(p, j + 1), 1, 84)
  59.     Next
  60.     'If i < Len(Smoke4) Then
  61.     '    If fcount Mod 30 < 15 Then
  62.     '        _PrintString (0, 96 + 300), Mid$(Smoke1, i, 80)
  63.     '        _PrintString (0, 64 + 300), Space$(8) + Mid$(Smoke1, i, 80)
  64.     '        _PrintString (0, 32 + 300), Space$(24) + Mid$(Smoke3, i, 80)
  65.     '    Else
  66.     '        _PrintString (0, 80 + 280), Space$(4) + Mid$(Smoke1, i, 80)
  67.     '        _PrintString (0, 48 + 280), Space$(12) + Mid$(Smoke2, i, 80)
  68.     '        _PrintString (0, 32 + 280), Space$(24) + Mid$(Smoke4, i, 80)
  69.     '    End If
  70.     'End If
  71.  
  72.     fcount = fcount + 1
  73.     If fcount = 60 Then fcount = 0
  74.     If fcount Mod 6 = 0 Then
  75.         col = col + 1: i = i + 1
  76.         If col = Len(Pattern) + 1 Then col = 1
  77.         If i > Len(Train(1, 1)) - 80 Then i = 1
  78.         p = Val(Mid$(Pattern, col, 1))
  79.     End If
  80.     peace 167, 579, 18, a
  81.     peace 215, 579, 18, a + _Pi / 2
  82.     peace 263, 579, 18, a + _Pi
  83.     peace 311, 579, 18, a + _Pi * 1.5
  84.  
  85.     peace 530, 591, 6, a + _Pi * .25
  86.     peace 578, 591, 6, a + _Pi * .75
  87.     peace 634, 591, 6, a + _Pi * 1.25
  88.     peace 682, 591, 6, a + _Pi * 1.75
  89.  
  90.     peace 90, 585, 12, a + _Pi * .66
  91.     peace 386, 585, 12, a + _Pi * 1.66
  92.  
  93.     peace 128, 419, 12, -a + _Pi * .1
  94.     peace 175, 386, 10, -a - _Pi * .3
  95.     peace 281, 351, 9, -a + _Pi * .5
  96.     peace 328, 321, 10, -a + _Pi * .7
  97.     peace 401, 318, 7, -a + _Pi * .9
  98.     peace 477, 307, 9, -a + _Pi * 1.1
  99.     peace 562, 317, 6, -a + _Pi * 1.5
  100.  
  101.     a = a - _Pi / 36
  102.     For i = 1 To 5
  103.         peace 608, 518, 28, 0
  104.     Next
  105.  
  106.     _Display
  107.     _Limit 90 '<<< EDIT
  108.  
  109. Sub LoadLandscape
  110.     cur& = _Dest
  111.     xmax = 800 * 6: ymax = 600
  112.     scape& = _NewImage(xmax, ymax, 32)
  113.     _Dest scape&
  114.  
  115.     For i = 0 To ymax
  116.         midInk 0, 0, 128, 128, 128, 200, i / ymax
  117.         Line (0, i)-(xmax, i)
  118.     Next
  119.     'the land
  120.     startH = ymax - 200
  121.     rr = 70: gg = 70: bb = 90
  122.     For mountain = 1 To 6
  123.         Xright = 0
  124.         y = startH
  125.         Color _RGB(rr, gg, bb)
  126.         While Xright < xmax - 50
  127.             ' upDown = local up / down over range, change along Y
  128.             ' range = how far up / down, along X
  129.             upDown = (Rnd * .8 - .4) * (mountain * .5)
  130.             range = Xright + rand%(15, 25) * 2.5 / mountain
  131.             If range > xmax - 50 Then range = xmax - 50
  132.             lastx = Xright - 1
  133.             For x = Xright To range
  134.                 test = y + upDown
  135.                 If Abs(test - startH) < .1 * startH Then y = test
  136.                 Line (lastx, y)-(x, ymax), , BF 'just lines weren't filling right
  137.                 lastx = x
  138.             Next
  139.             Xright = range
  140.         Wend
  141.         x = lastx + 1
  142.         While x <= xmax
  143.             y = y + (startH - y) / 40
  144.             Line (lastx, y)-(x, ymax), , BF 'just lines weren't filling right
  145.             lastx = x
  146.             x = x + 1
  147.         Wend
  148.         rr = rand%(rr - 15, rr): gg = rand%(gg - 15, gg): bb = rand%(bb - 25, bb)
  149.         If rr < 0 Then rr = 0
  150.         If gg < 0 Then gg = 0
  151.         If bb < 0 Then bb = 0
  152.         startH = startH + rand%(5, 20)
  153.     Next
  154.     _Dest cur&
  155.  
  156. Function rand% (lo%, hi%)
  157.     rand% = Int(Rnd * (hi% - lo% + 1)) + lo%
  158.  
  159. Sub midInk (r1%, g1%, b1%, r2%, g2%, b2%, fr##)
  160.     Color _RGB(r1% + (r2% - r1%) * fr##, g1% + (g2% - g1%) * fr##, b1% + (b2% - b1%) * fr##)
  161.  
  162. Sub LoadTrain
  163.     Dim t As String
  164.  
  165.     For j = 1 To 10
  166.         Read t: Coal(j) = t
  167.     Next
  168.  
  169.     For i = 1 To 6
  170.         For j = 1 To 10
  171.             Read t: Train(i, j) = t + Coal(j)
  172.         Next
  173.     Next
  174.  
  175.     For i = 1 To Len(t)
  176.         ' Reverse: "312465"
  177.         t = Mid$("564213", i, 1)
  178.         Pattern = Pattern + t + t
  179.     Next
  180.     Exit Sub
  181.  
  182.     Data "                             "
  183.     Data "                             "
  184.     Data "    _________________        "
  185.     Data "   _|                \_____A "
  186.     Data " =|                        | "
  187.     Data " -|                        | "
  188.     Data "__|________________________|_"
  189.     Data "|__________________________|_"
  190.     Data "   |_D__D__D_|  |_D__D__D_|  "
  191.     Data "    \_/   \_/    \_/   \_/   "
  192.  
  193.     Data "      ====        ________                ___________"
  194.     Data "  _D _|  |_______/        \__I_I_____===__|_________|"
  195.     Data "   |(_)---  |   H\________/ |   |        =|___ ___|  "
  196.     Data "   /     |  |   H  |  |     |   |         ||_| |_||  "
  197.     Data "  |      |  |   H  |__--------------------| [___] |  "
  198.     Data "  | ________|___H__/__|_____/[][]~\_______|       |  "
  199.     Data "  |/ |   |-----------I_____I [][] []  D   |=======|__"
  200.     Data "__/ =| o |=-O=====O=====O=====O \ ____Y___________|__"
  201.     Data " |/-=|___|=    ||    ||    ||    |_____/~\___/       "
  202.     Data "  \_/      \__/  \__/  \__/  \__/      \_/           "
  203.  
  204.     Data "      ====        ________                ___________"
  205.     Data "  _D _|  |_______/        \__I_I_____===__|_________|"
  206.     Data "   |(_)---  |   H\________/ |   |        =|___ ___|  "
  207.     Data "   /     |  |   H  |  |     |   |         ||_| |_||  "
  208.     Data "  |      |  |   H  |__--------------------| [___] |  "
  209.     Data "  | ________|___H__/__|_____/[][]~\_______|       |  "
  210.     Data "  |/ |   |-----------I_____I [][] []  D   |=======|__"
  211.     Data "__/ =| o |=-~O=====O=====O=====O\ ____Y___________|__"
  212.     Data " |/-=|___|=    ||    ||    ||    |_____/~\___/       "
  213.     Data "  \_/      \__/  \__/  \__/  \__/      \_/           "
  214.  
  215.     Data "      ====        ________                ___________"
  216.     Data "  _D _|  |_______/        \__I_I_____===__|_________|"
  217.     Data "   |(_)---  |   H\________/ |   |        =|___ ___|  "
  218.     Data "   /     |  |   H  |  |     |   |         ||_| |_||  "
  219.     Data "  |      |  |   H  |__--------------------| [___] |  "
  220.     Data "  | ________|___H__/__|_____/[][]~\_______|       |  "
  221.     Data "  |/ |   |-----------I_____I [][] []  D   |=======|__"
  222.     Data "__/ =| o |=-~~\  /~~\  /~~\  /~~\ ____Y___________|__"
  223.     Data " |/-=|___|=O=====O=====O=====O   |_____/~\___/       "
  224.     Data "  \_/      \__/  \__/  \__/  \__/      \_/           "
  225.  
  226.     Data "      ====        ________                ___________"
  227.     Data "  _D _|  |_______/        \__I_I_____===__|_________|"
  228.     Data "   |(_)---  |   H\________/ |   |        =|___ ___|  "
  229.     Data "   /     |  |   H  |  |     |   |         ||_| |_||  "
  230.     Data "  |      |  |   H  |__--------------------| [___] |  "
  231.     Data "  | ________|___H__/__|_____/[][]~\_______|       |  "
  232.     Data "  |/ |   |-----------I_____I [][] []  D   |=======|__"
  233.     Data "__/ =| o |=-~~\  /~~\  /~~\  /~~\ ____Y___________|__"
  234.     Data " |/-=|___|=   O=====O=====O=====O|_____/~\___/       "
  235.     Data "  \_/      \__/  \__/  \__/  \__/      \_/           "
  236.  
  237.     Data "      ====        ________                ___________"
  238.     Data "  _D _|  |_______/        \__I_I_____===__|_________|"
  239.     Data "   |(_)---  |   H\________/ |   |        =|___ ___|  "
  240.     Data "   /     |  |   H  |  |     |   |         ||_| |_||  "
  241.     Data "  |      |  |   H  |__--------------------| [___] |  "
  242.     Data "  | ________|___H__/__|_____/[][]~\_______|       |  "
  243.     Data "  |/ |   |-----------I_____I [][] []  D   |=======|__"
  244.     Data "__/ =| o |=-~~\  /~~\  /~~\  /~~\ ____Y___________|__"
  245.     Data " |/-=|___|=    ||    ||    ||    |_____/~\___/       "
  246.     Data "  \_/      \O=====O=====O=====O_/      \_/           "
  247.  
  248.     Data "      ====        ________                ___________"
  249.     Data "  _D _|  |_______/        \__I_I_____===__|_________|"
  250.     Data "   |(_)---  |   H\________/ |   |        =|___ ___|  "
  251.     Data "   /     |  |   H  |  |     |   |         ||_| |_||  "
  252.     Data "  |      |  |   H  |__--------------------| [___] |  "
  253.     Data "  | ________|___H__/__|_____/[][]~\_______|       |  "
  254.     Data "  |/ |   |-----------I_____I [][] []  D   |=======|__"
  255.     Data "__/ =| o |=-~~\  /~~\  /~~\  /~~\ ____Y___________|__"
  256.     Data " |/-=|___|=    ||    ||    ||    |_____/~\___/       "
  257.     Data "  \_/      \_O=====O=====O=====O/      \_/           "
  258.  
  259. Sub lyne (x0, y0, lngth, ra, thic, c As _Unsigned Long)
  260.     Dim x As Integer, y As Integer, l As Integer
  261.     While l < lngth
  262.         l = l + 1: x = x0 + l * Cos(ra): y = y0 + l * Sin(ra)
  263.         For radius = 0 To thic / 2
  264.             Circle (x, y), radius, c, BF
  265.         Next
  266.     Wend
  267.  
  268. Sub peace (x0, y0, r, raRot) ' 12 is about smallest
  269.     thic = r / 5.5
  270.     For rr = r - thic To r Step 1
  271.         Circle (x0, y0), rr
  272.     Next
  273.     lyne x0, y0, r - .5 * thic, _Pi * 1.5 + raRot, thic, &H11FFFFFF
  274.     lyne x0, y0, r - .5 * thic, _Pi * .5 + raRot, thic, &H11FFFFFF
  275.     lyne x0, y0, r - .5 * thic, _Pi * .25 + raRot, thic, &H11FFFFFF
  276.     lyne x0, y0, r - .5 * thic, _Pi * .75 + raRot, thic, &H11FFFFFF
  277.  
  278.  

Offline SierraKen

  • Forum Resident
  • Posts: 1454
    • View Profile
Re: Peace Sign
« Reply #9 on: March 10, 2022, 10:35:36 pm »
WOW That's way cool! The Peace Train! Good job.

Offline bplus

  • Global Moderator
  • Forum Resident
  • Posts: 8053
  • b = b + ...
    • View Profile
Re: Peace Sign
« Reply #10 on: March 10, 2022, 10:37:28 pm »
Man! You picked up on that fast! :)

Offline johnno56

  • Forum Resident
  • Posts: 1270
  • Live long and prosper.
    • View Profile
Re: Peace Sign
« Reply #11 on: March 10, 2022, 11:58:35 pm »
SierraKen. Nice job!

bplus. Trains. Gotta love 'em.
Logic is the beginning of wisdom.

Offline SierraKen

  • Forum Resident
  • Posts: 1454
    • View Profile
Re: Peace Sign
« Reply #12 on: March 11, 2022, 12:18:34 pm »
Thanks Johno :). LOL B+. :)