Skip to content

Angle does not change value when line updates #4512

@strniko

Description

@strniko

Description of bug / unexpected behavior

When an Angle is initialized on two lines (even with always_redraw) and one of the lines changes the value of the angle doesn't reflect that change.
Might be a duplicate of #3698, if so, can someone please explain?

Expected behavior

Running angle.get_value() should reflect the change in rotation of the lines.

How to reproduce the issue

Code for reproducing the problem

Minimal example that just prints the angles to the console while rendering

from manim import *

class Main(Scene):
    def construct(self):
        l1 = Line(LEFT, RIGHT)
        l2 = Line(DOWN, UP)
        a = always_redraw(lambda: Angle(l1, l2))
        print(a.get_value())
        l1.rotate(PI / 4)
        print(a.get_value())

Example with something on the screen

from manim import *

class Main(Scene):
    def construct(self):
        rotation = ValueTracker(0)
        l1 = Line(LEFT, RIGHT)
        l2 = always_redraw(lambda: Line(DOWN, UP).rotate(rotation.get_value()))
        a = always_redraw(lambda: Angle(l1, l2))
        text = always_redraw(lambda: Tex(str(a.get_value())).shift(2 * UP))
        self.add(l1, l2, a, text)
        self.play(rotation.animate.set_value(PI / 4))
        self.wait()

Additional media files

Images/GIFs
Main.mp4

Logs

Terminal output
~> manim -v DEBUG main.py
Manim Community v0.19.1

1.5707963267948966
[12/14/25 17:37:53] DEBUG    Hashing ...                               hashing.py:360
                    DEBUG    Hashing done in 0.018946 s.               hashing.py:372
                    DEBUG    Hash generated :                          hashing.py:375
                             3544663784_359959684_1130657173
                    DEBUG    List of the first few animation    cairo_renderer.py:103
                             hashes of the scene:
                             ['3544663784_359959684_1130657173'
                             ]
[12/14/25 17:37:55] INFO     Animation 0 : Partial movie     scene_file_writer.py:590
                             file written in
                             '/home/user/Projects/testing_Ma
                             nim/media/videos/main/1080p60/p
                             artial_movie_files/Main/3544663
                             784_359959684_1130657173.mp4'
1.5707963267948966
                    INFO     Combining to Movie file.        scene_file_writer.py:740
                    DEBUG    Partial movie files to combine  scene_file_writer.py:624
                             (1 files):
                             ['/home/user/Projects/testing_M
                             anim/media/videos/main/1080p60/
                             partial_movie_files/Main/354466
                             3784_359959684_1130657173.mp4']
                    INFO                                     scene_file_writer.py:887
                             File ready at
                             '/home/user/Projects/testing_Ma
                             nim/media/videos/main/1080p60/M
                             ain.mp4'

                    INFO     Rendered Main                               scene.py:279
                             Played 1 animations

System specifications

System Details
  • OS (with version, e.g., Windows 10 v2004 or macOS 10.15 (Catalina)): Debian 6.12.57-1 (2025-11-05) x86_64 GNU/Linux
  • RAM: 64 GB DDR 5
  • Python version (python/py/python3 --version): Python 3.12.12
    • I use UV for a virtual environment: uv 0.9.9
  • Installed modules (provide output from pip list):
    • I used uv pip list, as I don't have a global installation of pip
Package           Version
----------------- -------
av                13.1.0
beautifulsoup4    4.14.3
click             8.3.1
cloup             3.0.8
decorator         5.2.1
glcontext         3.0.0
isosurfaces       0.1.2
manim             0.19.1
manimpango        0.6.1
mapbox-earcut     2.0.0
markdown-it-py    4.0.0
mdurl             0.1.2
moderngl          5.12.0
moderngl-window   3.1.1
networkx          3.6
numpy             2.3.5
pillow            12.0.0
pycairo           1.29.0
pydub             0.25.1
pyglet            2.1.11
pyglm             2.8.3
pygments          2.19.2
rich              14.2.0
scipy             1.16.3
screeninfo        0.8.1
skia-pathops      0.9.0
soupsieve         2.8
srt               3.5.3
svgelements       1.9.6
tqdm              4.67.1
typing-extensions 4.15.0
watchdog          6.0.0
LaTeX details
  • LaTeX distribution (e.g. TeX Live 2020): texlive-full (from the apt repos)
  • Installed LaTeX packages:
    None:
(running on Debian, switching to user mode!)
(see /usr/share/doc/texlive-base/README.tlmgr-on-Debian.md)
TLPDB: not a directory, not loading: /home/user/texmf
tlmgr: user mode not initialized, please read the documentation!

Additional comments

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    🆕 New

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions