Manim Tutorial Series E05: Interactivity | Mathematical Animations WITH EASE

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

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

  • @AngryArmadillo
    @AngryArmadillo 13 дней назад

    Thanks for the high-quality information-dense videos. Just what I was looking for.

  • @sc0820
    @sc0820 Год назад +10

    The whole series is amazing. I think your channel deserves much more subscription.

  • @thecommexokid
    @thecommexokid 6 месяцев назад +1

    One very simple keyboard interaction that I have been finding extremely useful in my own work is one to print out the current Euler angles of the camera. That way once I've found a camera angle I like using the existing mouse interactions, I can quickly output what the angles are and paste them into my scene.
    Here's my implementation. Press 'a' while in the interactive embed window and you get a printout to the console window like "(theta=22*DEGREES, phi=-84*DEGREES, gamma=0*DEGREES)".
    def on_key_press(self, symbol, modifiers):
    from pyglet.window import key as pyglet_key
    if symbol == pyglet_key.A:
    (theta, phi, gamma) = (f"{angle/DEGREES:.0f}*DEGREES" for angle in self.camera.euler_angles)
    print (f"({theta=!s}, {phi=!s}, {gamma=!s})")
    super().on_key_press(symbol, modifiers)

  • @KivySchool
    @KivySchool 2 года назад +4

    AMAZING!
    Thanks for this, this is simply AWESOME!
    Thank you very much my brother, a lot of love from Brazil

  • @MathVisualProofs
    @MathVisualProofs 2 года назад +2

    So cool. Thanks for all your work.

  • @hikmatahmedov
    @hikmatahmedov 2 года назад +5

    Hi, please create one video about transforming Latex expressions. Let's say you want to create a video that simplifies expression step by step. How can we do it beatifully and what options do we have. Thanks a lot in advance.

    • @behackl
      @behackl  2 года назад

      Thank you for the suggestion!

  •  2 года назад +3

    Thank you so much to you, for those great videos and your work on manimCE!

  • @curiouswalk
    @curiouswalk 2 года назад +2

    A great addition to the tutorial series

  • @BngPhysics
    @BngPhysics 4 месяца назад +1

    Very good explanation and an amazing content creation ... best of luck

  • @lam_xyz
    @lam_xyz 2 года назад +6

    Is there a possibility to implement something like a slider control to change parameters and have some graphics changing interactively (kind of an „geogebra emulation“ but in combination with programmatical animation which is not possible in ggb)?

    • @Scriptum_1
      @Scriptum_1 Год назад

      Have you tried to jointly use Manim and some GUI library like Tkinter or PyQT?

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

      @@Scriptum_1 no but now I will

  • @CalcWithDec
    @CalcWithDec Год назад +1

    This is great!! Thanks for the awesome introduction. Is there any update yet about sharing these interactions?

    • @behackl
      @behackl  Год назад +1

      Nothing new to report, unfortunately.

    • @CalcWithDec
      @CalcWithDec Год назад

      @@behackl ok, thanks for the response!

  • @EdvanPontes
    @EdvanPontes 2 года назад

    For the sake of humanity, we need more videos from you.

    • @behackl
      @behackl  2 года назад

      Soon! There are a few other things right now that require my attention more than creating videos, unfortunately. :-)

  • @m67esteban
    @m67esteban Год назад +1

    Thanks! This tutorial is very useful!

    • @behackl
      @behackl  Год назад +1

      Glad to hear and happy you liked it! Thank you!

  • @claire7848
    @claire7848 Год назад +1

    Thank you for the wonderful video! When I try the same codes in the OpenGL demo, I get an error saying that 'OpenGLSurface' object has no attribute 'shader_wrapper'. Do you think I am missing a package?

    • @behackl
      @behackl  Год назад +2

      Hey! I think you also asked via Discord, just for the sake of answering the question here too: this was a bug which we have just fixed; a new release (Manim v0.17.2) has been published a few minutes ago. :-)

  • @adidevbhattacharya9220
    @adidevbhattacharya9220 11 месяцев назад

    Benjamin, thank you so much for these tutorials, made reading the documentation easier.
    Btw can we have this interactivity using openGL in web, maybe if someone wants to have a React app, in that case?

  • @mounibmekhilef8536
    @mounibmekhilef8536 2 года назад +1

    Hi benjamin, yet another great piece !
    I wonder whether we can find in openGL features to display/plot implicit surfaces ( f(x,y,z)=0 ). The reason I'm asking is because transforming implicit to parametric is not (to my knowledge) an easy task. May be my question is naive as my knowledge about OpenGL goes back to its origin when using mainframes to make some little computations like displaying a polynomial.

    • @behackl
      @behackl  2 года назад

      Thanks! Good question -- I don't think that there is a good way; certainly nothing that is already implemented. The approach that is used for plotting two-dimensional equations scales badly (if at all) for three-dimensional ones.

  • @PRAMODKUMAR-rk6wh
    @PRAMODKUMAR-rk6wh 2 года назад

    Thanks for such amazing content.
    Kindly add more on camera, multi_camera , moving_camera , 3d_camera and mapping camera.

    • @behackl
      @behackl  2 года назад

      interesting ideas, thank you!

  • @wg2
    @wg2 Месяц назад

    probably the best video so far on the topic, Quick question: When I use the manim.cfg file to set the renderer, enable the GUI, force the window, and set write_to_file to false, should this replace all the CLI arguments, so I only need to run manim [file] [scene]? It seems to default to the Cairo renderer unless I explicitly specify it in the CLI. Is this an issue on my end, or could it be a genuine bug?

    • @behackl
      @behackl  Месяц назад

      Thanks for the kind words! It is possible that this is indeed a genuine bug -- if you feel like it, open an issue over at github.com/ManimCommunity/manim so that we can check it properly. (Changes to make the config system more robust will likely happen in the near future.) Cheers!

  • @matthewjames7513
    @matthewjames7513 2 года назад +2

    AMAZING!!! So glad you're doing this stuff, thank you! May I ask what file format the output tutorial is? I guess it can't be mp4. I noticed at 45:19 that you talked about how this can only be used locally at this point. In principle, do you think it could be possible in the future to embed this type of interactive video in a current LMS like Canvis/blackboard/moodle? Thanks :) :) :)

    • @behackl
      @behackl  2 года назад

      Thank you! :-)
      Output: there *is* no output file; the application is just running in the render preview window; as mentioned in the video: if you want to share this, you'll have to record your screen.
      As for embedding: I'd say it is a long-term goal to get this sort of functionality up and running in some sort of shareable format, but there is a lot of work to be done to actually get there.

    • @matthewjames7513
      @matthewjames7513 Год назад

      @@behackl Hi Ben, do you know where I can keep updated on the latest status of interactive videos using MANIM? I'm a University teacher and I want to hire a few students to create interactive videos with me, but I have yet to decide the best platform to do it it in. I'm torn between MANIM and FigureOne (JS library)

    • @behackl
      @behackl  Год назад

      ​@@matthewjames7513 Hey Matthew! There hasn't been much change, feature-wise, since I've recorded this video. (I don't find as much time to work on it as I'd like to have, unfortunately.) If you want others to interact with your videos too (in contrast to only you interacting during a lecture), I'd definitely recommend some JS Library like FigureOne, Liqvid, or Motion Canvas. Good luck! 🙂

  • @Zwain-f5b
    @Zwain-f5b Год назад

    where could i find the documations of opengl methods, for example i want to learn more about opengltexturesurface method?

  • @lebronx9516
    @lebronx9516 2 года назад

    Awesome job! You deserve way more subscribers, bro!! Keep up the great work!

    • @behackl
      @behackl  2 года назад +1

      Thank you for the kind words! Manim tutorials are still pretty niche content, but we'll see how things develop. :-)

  • @thomassouza5853
    @thomassouza5853 2 года назад

    New Manim video, Awesome

  • @ndrcrypto
    @ndrcrypto 2 года назад

    Thanks a lot MSensei

  • @erebology
    @erebology 2 года назад

    Excellent!

  • @xs6819
    @xs6819 Год назад

    Can't wait till this hits Udemy

  • @gflaesch
    @gflaesch 2 года назад

    Hi Benjamin,
    thank you for that awesome intro to the interactive mode! Is it possible to extract the current camera angles, once I have set it up the way I like?

    • @behackl
      @behackl  2 года назад +1

      Thanks for the kind words! I think you might have already asked the same question in our Discord, but for the sake of completeness I'll answer here too: Inside of the construct method, you can use self.renderer.camera.euler_angles to get a list consisting of the current values of [theta, phi, gamma].

    • @gflaesch
      @gflaesch 2 года назад

      Yes, I asked it there as well, not realizing that it would be kind of ending in the same pool of people ;) Thank you very much for the answer!

  • @blvrglu
    @blvrglu 2 года назад +1

    Awesome

  • @matthewjames7513
    @matthewjames7513 2 года назад

    Hey Ben! at 11:10 you type into your command window "manim -qm -p --renderer=opengl e05.py Open" I assume the end of that line is just OpenGL, right?
    I plan to write this instead of the normal normal "python -m manim filename.py"

    • @matthewjames7513
      @matthewjames7513 2 года назад

      ah I realized that you just wrote the class name at the end. But when I run it, it says I cannot find the path, which is weird because i've previously set the path to my folder "cd ":
      "manim : The term 'manim' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is
      correct and try again."

    • @behackl
      @behackl  2 года назад

      Hey! Apologies, I've been travelling the past week -- it sounds like as if manim is not on your PATH; perhaps you have fixed it already -- but if not, the easiest fix is to google for "add python executable module to PATH" for your operating system and you should find helpful answers.

  • @arktessellator_10
    @arktessellator_10 2 года назад

    hey man i have been trying to work through some simple animation of scaling a vector by using manim, however i think scale method scales any mobject from its centre, but in case of scaling vector it should scale having its origin fixed, how do i animate such scaling of vector?

    • @behackl
      @behackl  2 года назад +1

      Hey! YT comments are not great for discussing a problem like this, take a look at this page in our documentation to see different ways of getting help: docs.manim.community/en/latest/faq/help.html#faq-getting-help

  • @PritishMishra
    @PritishMishra 2 года назад

    This was a great video!!!

  • @theFire-nx6pd
    @theFire-nx6pd 2 года назад

    More please 🙏

    • @behackl
      @behackl  2 года назад

      More episodes soon! What would you like to learn more about?

  • @josemichellpr
    @josemichellpr 2 года назад

    Thanks 👍

  • @brahimcheikh3852
    @brahimcheikh3852 Год назад

    when i tray that code they told me AttributeError: 'Camera' object has no attribute 'animate'

    • @behackl
      @behackl  Год назад +1

      Are you sure you are running manim with the --renderer=opengl flag? Otherwise check this link for suggestions how to get help more efficiently than via YT comments: docs.manim.community/en/stable/faq/help.html

  • @Ghost-tm5gw
    @Ghost-tm5gw 2 года назад

    Hey guys, i get a error (No module named IPython) or smthn like it when i used interactive_embed

    • @behackl
      @behackl  2 года назад +1

      You have to install IPython, something like "pip install IPython" or "python -m pip install IPython" should do the trick. :-)
      If you are getting an error mentioning something about SQL, run the install command again, but with IPython==8.0.1 instead!

    • @StarFury2
      @StarFury2 2 года назад

      Had the same problem. As author suggested using:
      pip install ipython==8.0.1
      solved missing ipython and sql problem.

  • @NdrXbrain
    @NdrXbrain 2 года назад

    thanks a lot

  • @shivangt.g.2684
    @shivangt.g.2684 2 года назад

    Can to please tell me how to animate the zeta function transformation on the complex plane in manim

    • @behackl
      @behackl  2 года назад

      This is a very particular question; from what you are asking I can't quite tell what exactly you would like to see. I don't think this here is a good place to keep discussing; I'd recommend asking in our Discord (manim.community/discord), or open a Discussion in our GitHub repository (github.com/ManimCommunity/manim/discussions/new).

    • @shivangt.g.2684
      @shivangt.g.2684 2 года назад

      @@behackl thanks

  • @rauchnog3288
    @rauchnog3288 2 года назад

    hi benjamin, wann rechnest du den nächsten matura termin

    • @behackl
      @behackl  2 года назад +1

      Hallo! Ich denke, die letzten paar Termine + Ersatztermine habe ich ziemlich abgedeckt; der nächste ist also vermutlich der am 3.5. stattfindende Haupttermin. :-)

    • @rauchnog3288
      @rauchnog3288 2 года назад

      @@behackl danke für die rasche antwort! liebe deine videos obwohl ich noch weit von der matura weg bin! LG