Tinkering With Spirographs in C++

Поделиться
HTML-код
  • Опубликовано: 17 дек 2024

Комментарии • 84

  • @javidx9
    @javidx9  5 месяцев назад +35

    Massive thanks to Moros1138 and his fantastic PGEtinker project. It's been a passion project of his for a while and its just brilliant - please give it a go at pgetinker.com, or indeed, play with the video code right now: pgetinker.com/s/OWNuhyU8IgX

    • @moros1138
      @moros1138 5 месяцев назад +15

      Excellent video. Thank you so much! PGEtinker has been a passion project of mine and seeing it actually being used has been an emotional experience. So exciting!

    • @sakikogookheng
      @sakikogookheng 5 месяцев назад +2

      @@moros1138 I hope you feel a great sense of pride! You've really create something quite special 🙂

    • @moros1138
      @moros1138 5 месяцев назад +2

      @@sakikogookheng Thank you very much!

    • @LithiumDeuteride-6
      @LithiumDeuteride-6 5 месяцев назад

      I solved this problem many years ago (~2000), wrote a spirograph in BASIC for the UKNTS(УКНЦ), but there was no access to a computer, the program was written on paper. In 2004, I got a 486DX2-66, and I was finally able to run this program on QBASIC, and then rewrote it in Turbopascal. And then, already in our time, I rewrote it in UASM and OpenGL. In general, the task is not too difficult to learn.

    • @JazzyJesterTechPing
      @JazzyJesterTechPing 5 месяцев назад +1

      Amazing, just played with it !

  • @HYRULE10
    @HYRULE10 5 месяцев назад +25

    The math around the spirographs I could see being useful for making little special effects or other sorts of fun mezmerizing things in a game. For example, in those vampire-survivor type games where you have lots of little weapons spiraling about hitting things automatically, defining their path in this way would be quite fun to watch.

    • @javidx9
      @javidx9  5 месяцев назад +10

      Hopefully it inspires someone with more application creativity than me lol 😂

    • @blacklight9876
      @blacklight9876 29 дней назад

      @@javidx9 I think a good use case for it would be a loading animation for applications with fancy graphics, it is very mesmerizing, which is exactly what you want from a loading animation, perhaps also make it run from the user's cursor which would make it an interactive and mesmerizing loading animation. It could be far cooler than some spinning dots that most apps have.

  • @quicktastic
    @quicktastic 5 месяцев назад +7

    I wear a Casio F-91W. I love how simple they are. I am also impressed at how accurate it is. It stays within a couple of seconds from my computer clock for months. It is far more accurate than any other electronic clock I have (that isn't synced to a time source of course).

  • @brawldude2656
    @brawldude2656 5 месяцев назад +2

    I check your videos time to time and find inspiration. Your projects are always so interesting olc!

  • @ForbinKid
    @ForbinKid 5 месяцев назад +2

    Pen being outside the wheel breaks physics, no man has seen (but this one has). I did this simulation very slowly back in 1971, but only had a flat bed plotter and Dec PDP10 basic to play with, so it was quite slow. I did do a few colours. I just through out the old faded 2 or 3 foot plots I had tucked away a couple months ago.

  • @garymetheringham4990
    @garymetheringham4990 2 месяца назад +1

    Was thinking about doing this on an arduio with a tft screen. Then 1 day later your video pops up in my recommended videos.
    Thankyou for explaining how the calculations are done.

  • @jeffreyphipps1507
    @jeffreyphipps1507 5 месяцев назад

    My Spirograph from the early 70s had a piece of cardboard and little push pins to hold the paper/outer gears (mine has two - yes, I still have it) and about ten smaller inner gears. I also have a Spirotot which was small and was a frame with self piercing paper holders and the frame contained the main/outer wheel and instead of gears used inner wheels (yes, still have it too). I also have my Mechanograph which allowed a user to pin paper and inner wheels and shapes to cardboard and use the wheels and shapes to draw around the inner shapes. There was one shape that was a human shape.

  • @GodmanchesterGoblin
    @GodmanchesterGoblin 5 месяцев назад +1

    Around 40 years ago I coded up the drawing of hypotrochoids like these in BBC Basic. It's kind of funny to see so much resource used these days to achieve a similar result. And I still have my Spirograph set from around 1968. The box is somewhat degraded, however.

  • @jumbledfox2098
    @jumbledfox2098 5 месяцев назад +7

    love your videos, keep it up!! hope you had a lovely holiday

    • @javidx9
      @javidx9  5 месяцев назад +6

      Thanks, I did!

  • @landsgevaer
    @landsgevaer 5 месяцев назад +15

    Nice graph, but the pen motion looks off and the code is indeed slightly mistaken. Around 15:00 the curve briefly shows retrograde motion when the pen is close to the ring gear when it obviously shouldn't. The error is in the ratio. The circumferences ratio is used, but that is not the ratio of angular velocities. That should equal
    ratio = Rfixed / Rmoving - 1
    because the moving wheel is also making one full rotation inside the fixed wheel.
    This is easy to see when for instance Rfixed = ½Rmoving, then the inner wheel makes one anticlockwise rotation, not two, when it circles around once clockwise. Or, when Rmoving = Rfixed, then the moving wheel should not rotate at all, i.e. ratio=0.
    I invite you to try it.
    Otherwise pretty nevertheless!

    • @emilsteen9182
      @emilsteen9182 5 месяцев назад

      Remined me of this: ruclips.net/video/FUHkTs-Ipfg/видео.htmlsi=fFqMN_EhEjyD5nNo

  • @KerboOnYT
    @KerboOnYT 5 месяцев назад

    Neat! I remember being fascinated with spirographs as a kid

  • @michaeloneill3786
    @michaeloneill3786 5 месяцев назад +1

    Nice video! This reminds me of the flight patterns used by enemies in Galaga

  • @greketrotny
    @greketrotny 5 месяцев назад +1

    Amazing video! I also find spirographs quite mesmerizing. In this scenario, where we have two circles, and one rolls around the other without slipping, the `ratio` calculation has to be corrected by subtracting 1.0f from it.

  • @unknown_error101
    @unknown_error101 5 месяцев назад +2

    That would honestly make a killer screen saver.

  • @natsuhiboshi7161
    @natsuhiboshi7161 5 месяцев назад +1

    Awesome video, a beautifully broken down solution!
    Thanks for sharing this with us!

  • @KDM16AAB
    @KDM16AAB 5 месяцев назад +2

    Just at the end with the last circle and the colour changing, I was reminded of the Captain Blood "Hyperspace, activated".

    • @juanmacias5922
      @juanmacias5922 5 месяцев назад

      I had to look up the reference, but see what you mean!

  • @WinterSina
    @WinterSina 5 месяцев назад

    "I like this a lot". Mee too brother, ty

  • @gedaliakoehler6992
    @gedaliakoehler6992 5 месяцев назад +7

    End result was very pretty. Nice video. I do question why vacations weren’t as fun at night though 😂

    • @csgowoes6319
      @csgowoes6319 5 месяцев назад

      Although I am sure there was a bit of comic effect going on there, I can say from experience that going on holiday with young kids, if you are fairly sensible parents, means you can forget about going out in the evening or anything like that, your kid/s is/are hopefully in bed by 8 or 9 at the latest but then you have all evening to kill, and then at least one of you is too knackered for Rummy or Old Maid and so programming Spirograph in C++ it is.

  • @MrKaftpaket
    @MrKaftpaket 5 месяцев назад

    The video was amazing! And I love your shirt :)

  • @JADE-iteGames
    @JADE-iteGames 5 месяцев назад +1

    That is awesome!

  • @juanmacias5922
    @juanmacias5922 5 месяцев назад

    Such a fun project, I'll have to implement a Spirograph builder in a future project myself. :)

  • @RealCaptainAwesome
    @RealCaptainAwesome 5 месяцев назад +2

    Now I want to make a spirograph

  • @tmbarral664
    @tmbarral664 5 месяцев назад

    I smiled when I’ve heard Conwy and not Conway.
    Nice job, sir ;)

  • @jeffreyphipps1507
    @jeffreyphipps1507 5 месяцев назад

    Very Nice!

  • @efdbjon2114
    @efdbjon2114 5 месяцев назад

    love it in wales hope u had good holiday (:

  • @gower1973
    @gower1973 5 месяцев назад +1

    Omg cant believe you went to Conwy on holiday, I live just down the road, what a small world, were you there for the pirate weekend?

    • @javidx9
      @javidx9  5 месяцев назад +1

      Heh, actually I was staying in Llandudno (of course lol) as I do frequently, primary objectives were to run around the Orme, and family holiday.

  • @__hannibaalbarca__
    @__hannibaalbarca__ 5 месяцев назад

    Hi, I did that long time ago, back to 1994, in GWBasic with mechanic branch Cinematic with vectors and torsors(not tensors), very beautiful.

  • @motasam8122
    @motasam8122 5 месяцев назад +1

    you welcome back

    • @javidx9
      @javidx9  5 месяцев назад +1

      Thanks Motasam :D

  • @brockormond4131
    @brockormond4131 5 месяцев назад

    Looks great, you should checkout a 'Complex Fourier series'. It provides the math to extend your Spirographs to include more circles, radius, and the spin (delta time) of individual circles. With that techinque you can actually draw pictures in an interesting way.

  • @daveking-sandbox9263
    @daveking-sandbox9263 5 месяцев назад +5

    If you could decrease the size of the inner circle on every iteration, I could imagine you could draw spirals.

    • @javidx9
      @javidx9  5 месяцев назад +2

      Great idea! Go and edit the tinker and see what happens!

  • @VincentGuillotine
    @VincentGuillotine 5 месяцев назад +4

    I see we both wear the most common wristwatch known to man

    • @javidx9
      @javidx9  5 месяцев назад +3

      Reliable, affordable, fashionable. Best watch ever

    • @sakikogookheng
      @sakikogookheng 5 месяцев назад

      @@javidx9 It also has a rich history behind it too. Not bad for £10 on Amazon! (when it's on sale)

  • @ncot_tech
    @ncot_tech 5 месяцев назад +4

    Good taste in dodgy shirts 👌

    • @javidx9
      @javidx9  5 месяцев назад +3

      It's a cracker this one!

  • @tomkirbygreen
    @tomkirbygreen 5 месяцев назад +2

    The worlds smallest house appears to be a 1 x 2 Lego brick :-)

  • @Adomas_B
    @Adomas_B 4 месяца назад

    The most satisfying case is when the ratio is golden

  • @manuelsuarez7521
    @manuelsuarez7521 5 месяцев назад +3

    cool video!

    • @javidx9
      @javidx9  5 месяцев назад

      Cheers Manuel!

  • @minirop
    @minirop 5 месяцев назад +3

    I was indeed annoyed by you stoping the rainbow too soon.

  • @andrealijaramosagostini
    @andrealijaramosagostini 5 месяцев назад +1

    hey, do you happen too know how does a 3d cad software work and how to make one? there is really a lack of content about cad

  • @christianlett
    @christianlett 5 месяцев назад +1

    Nice shirt. I have the same one!

  • @BrekMartin
    @BrekMartin 5 месяцев назад

    That’s fine. I can’t help but think your entire time on RUclips was a lead up to this. It’s a shame it’s out of reach for the Lynx, and I’ll have to revisit on the next platform!😅

  • @Czeckie
    @Czeckie 5 месяцев назад

    good job moros!

  • @axelBr1
    @axelBr1 5 месяцев назад +1

    Is that a metal box it comes in?!

  • @ZomB1986
    @ZomB1986 5 месяцев назад

    13:45 Your moving gear is 'rotating' too fast because you didn't account for the sidereal effect. If the moving gear is exactly half the fixed gear, it rotates once per revolution (a pen at the edge traces a straight line). If it's 1/3rd, it rotates twice per revolution, etc.

  • @debsarkar4893
    @debsarkar4893 5 месяцев назад

    Bro can you or someone else around here please give the link the c++ networking series part 5 I really like that one and your other videos as well in part 4 you said that there will be a part 5 but I can't find it in which u will show shooting players, I know it 3 yrs since now but plz

  • @RandomGeometryDashStuff
    @RandomGeometryDashStuff 5 месяцев назад

    10:40 looks like 3d donut

  • @bs11pl
    @bs11pl 5 месяцев назад

    Great job, Moros. Respect. Take care.

  • @ivan_prime
    @ivan_prime 5 месяцев назад

    Neat! 😎

  • @Alemorf
    @Alemorf 5 месяцев назад +1

    Hi. I was told that we released a video about the Spirograph at the same time. :) I just modified the Spirograph. I did multiple nesting. sin(x) + d * sin(k * x) + d * d * sin(k * k * x)... It s amazing!
    Java script programm:
    ruclips.net/video/JcvrrYigqa0/видео.htmlfeature=shared&t=599

    • @tootalldan5702
      @tootalldan5702 5 месяцев назад

      Nice, I watched the video and link to your Github ... HtmlVisualDemo.

  • @motbus3
    @motbus3 5 месяцев назад

    Hey Mr. Try one of those riscv notebooks. They cost like 300 pounds

  • @andrewdunbar828
    @andrewdunbar828 5 месяцев назад

    mouses and sheeps have different radiuses

  • @random_precision_software
    @random_precision_software 5 месяцев назад

    Can you please please please do some videos in C#. I'm using unity and I think it would help in my game development.
    thanks 🙏

  • @obinator9065
    @obinator9065 5 месяцев назад +2

    how ya doin

    • @javidx9
      @javidx9  5 месяцев назад +1

      Not bad thanks Obin!

  • @sakikogookheng
    @sakikogookheng 5 месяцев назад

    Please make a second channel that's just you running this program to create pretty spirographs

  • @emty5526
    @emty5526 5 месяцев назад

    you are Coding Train for C++

  • @amirgardia4330
    @amirgardia4330 5 месяцев назад

    Hlw sir....Can u make a window in console without gui which will respond to user on input(I want to learn how framework make a window from scratch)....please........

  • @geekume6413
    @geekume6413 5 месяцев назад

    E

  • @purelove9133
    @purelove9133 5 месяцев назад +1

    Grow your beard please

  • @SassyToll
    @SassyToll 5 месяцев назад +3

    That was a brilliant just brilliant way to show the power of PGETinker, thanks @Javidx9 . Johnnyg63

  • @idiedlastmonth
    @idiedlastmonth 5 месяцев назад

    Very useful! Appreciate it!