Coding Challenge #64.1: Forward Kinematics

[ad_1]
This coding challenge is the first in a series on kinematics!
In Part 1, I demonstrate forward kinematics in Processing (Java).

Link to Part 2:
Link to Part 3:
Link to Part 4:

Support this channel on Patreon:
To buy Coding Train merchandise:

Send me your questions and coding challenges!:

Contact:
Twitter:
The Coding Train website:

Links discussed in this video:
Kinematics on Wikipedia:
Interactive Fish Aquarium Desktop Wallpaper:
Coding Math on Youtube:

Source Code for the all Video Lessons:

p5.js:
Processing:

For More Coding Challenges:
For an Intro to Programming using p5.js:

Help us caption & translate this video!


Posted

in

by

Tags:

Comments

40 responses to “Coding Challenge #64.1: Forward Kinematics”

  1. Wolf Hound Avatar

    Is there a version of this for Python? Or C++?

  2. Felix Olsen Avatar

    this made me questionable hard

  3. Krunchy Krisp Avatar

    I get so confused and have to stop the video and think about everything all over again because Daniel himself gets confused 😀

  4. eyal meltser Avatar

    Is your T -shirt in any way related to FRC team #148?

  5. Mohamed Ahmed Avatar

    can this be done with python?

  6. GameTu Avatar

    Hey bro, did you study Computer-Science or did you teach you yourself? And for how long do you code? 😀

  7. ning wang Avatar

    Is it possible to demostrate how to draw an isosuface with processing? if it needs other libraries, it's ok.

  8. Bryce Frank Avatar

    When he uses two constructor functions, how does the program know which one is called when they both have the same name. Does it have to do with the types of variables included when seg2 is created (at around 11:30)?

  9. GABRIELFILMSTUDIOS Avatar

    The intro is not recorded post-CC! Unbelievable! ;D

  10. JustMeJustADude Avatar

    Isn't this just the segments/joints and no kinematics? Shouldn't just the first segment move and the rest respond dynamically to its movement? This is just random movement or am i wrong

  11. MentoDaSheep Avatar

    great video! The whole Tentacle,Current and Next thing completely blew me away! It took me a moment or two to get what's going on (At least I think i understand… 0_0) but I still can't figure out the lines:
    Current.Child = Next;
    Current = Next;
    Why do they work? Shouldn't Current.Child be overwritten by the information in Next.Child if Current is being overwritten as Next? Where does that piece of memory goes?

  12. RedsBoneStuff Avatar

    13:37 Would it also work if you didn't copy, but instead just made another reference to the same PVector object?

  13. alekmoth Avatar

    Why copy parent.b to this.a instead of just having it be reference to the same vector?

  14. mr_os Avatar

    Man you should build the segment link with an LSystem! You would have a tree floating in the wind!

  15. LarsGavris Avatar

    Couldn't you do:
    a = parent.b; (without the .copy)
    Wouldn't that make "a" refer to exactly the same PVector as "b" of the parent?
    Thus you wouldn't have to update that?

  16. dougboblas Avatar

    This is such an amazing demo. It is so useful to be able to see the code develop piece by piece directly reflected alongside the corresponding visual results
    I only know a bit about coding so forgive me if my question is dumb. Is this a recursive kind of solution with the function calling itself?
    This video is so exciting because the kinematics you derive is a fundamental component of my artwork for which I use a kinematics application in a physics engine and I create dynamic constrained chaotic behaviour with it.
    Thank you for your efforts!

  17. Pat Plunkett Avatar

    I really enjoy watching these! I love your enthusiasm, and I'm learning a lot! Thank you so much for taking the time to do your live streams and edit these videos! Your students are really fortunate to have a professor like you.

  18. DayZnublet Avatar

    This is java, right?
    or javascript

  19. Haider Ali Punjabi Avatar

    Make it dance to input audio, similar to clapping flapping bird 🙂

  20. Corey Redmon Avatar

    At 30:00, you already had a reference to parent in the second constructor so you didn't really need the t variable as an input; you could have gotten it from parent.

  21. zubie7a Avatar

    Stream of consciousness, improvisational experimentation is the best 😀

  22. Mukul Barai Avatar

    Daniel, thanks a lot for your great videos on programming. Most of your programming videos are on the basis of computational geometry and graphics. In your videos, you have shown that programming is not a context of boring. It is a topic of fun and mystery. Now it would be helpful for me, if you kindly explain the sequence of topic that I should follow to be a programmer like you. I want to be expert in algorithm and computational geometry based program. Like you so much…

  23. Puneet Kumar Avatar

    can I know on what platform or what ide you R using for all that and which language u R using

  24. Tomás Mejia Avatar

    is it just me, or every time he writes "angle", he's actually writing "ayk"?

  25. Darth Torus Avatar

    He's wearing the same shirt as in his polar coordinates video :O

  26. Denon Merlo Avatar

    Please do coding challenge feeding frenzy, its like the snake game but uses mouse!

  27. Welsiton Ferreira - Desenvolvedor Indie Avatar

    hahahaha I already watched codemath video series about inverse kinematic, but I'll watch this one too 🙂

  28. Luis Fernando Silva Avatar

    Amazing, You are the best.

  29. realcygnus Avatar

    superb content !…..as per usual……btw no BIG worries about going too far off track…….imo your frequent tangents are just a consequence of unscripted/real-time programming….& its crucial for the flavor/level of your channel…….in other words don't change a thing.

  30. TheRandomSpectator Avatar

    So I'm still learning the basics (more or less) of java in school, so I'm trying to understand a few things. When you write a new method, why don't you have to write "public" at the beginning of it (I've noticed you just write "void"). Also, do you have to import a special library to use the set up and draw functions (i.e. how can I take what I'm seeing here and use it in Eclipse), or is that a default function of the Processing IDE?

  31. Jacodi Avatar

    By phase i assume you mean phase difference as in the sine wave being constructively or destructively changed. We use it in physics to calculate interference of waves.

  32. G.M. Leine Avatar

    couldn't you have just used two vectors? one vector for its base position, and the other vector for the b position. and then length will be the magnitude of vector b, and angle would be the angle of vector b.

  33. Virax Avatar

    so fucking usefull thanks !

  34. SEFD Game Dev Avatar

    I love you man, been wanting to learn this for a while 😀

  35. hoo ooy Avatar

    daniel, you need to bring the time limit back. that was a lot of fun watching you geting disturbed by the time left. good show

  36. Marcos Landi Avatar

    You could use curveVertex() and make It extra smooth!

Leave a Reply

Your email address will not be published. Required fields are marked *