值跟踪器¶
限定名称: manim.mobject.value\_tracker.ValueTracker
- class ValueTracker(value=0, **kwargs)[来源]¶
基础类:
Mobject一个可用于跟踪(实值)参数的mobject。 对于动画参数变化非常有用。
不用于显示。相反,位置编码了一些数字,通常是另一个动画或持续动画用于其更新函数的数字,通过将其视为一个mobject,它仍然可以像其他任何东西一样被动画化和操作。
当使用
animate语法进行动画时,此值会不断变化。示例
示例:ValueTrackerExample ¶
from manim import * class ValueTrackerExample(Scene): def construct(self): number_line = NumberLine() pointer = Vector(DOWN) label = MathTex("x").add_updater(lambda m: m.next_to(pointer, UP)) tracker = ValueTracker(0) pointer.add_updater( lambda m: m.next_to( number_line.n2p(tracker.get_value()), UP ) ) self.add(number_line, pointer,label) tracker += 1.5 self.wait(1) tracker -= 4 self.wait(0.5) self.play(tracker.animate.set_value(5)) self.wait(0.5) self.play(tracker.animate.set_value(3)) self.play(tracker.animate.increment_value(-2)) self.wait(0.5)
class ValueTrackerExample(Scene): def construct(self): number_line = NumberLine() pointer = Vector(DOWN) label = MathTex("x").add_updater(lambda m: m.next_to(pointer, UP)) tracker = ValueTracker(0) pointer.add_updater( lambda m: m.next_to( number_line.n2p(tracker.get_value()), UP ) ) self.add(number_line, pointer,label) tracker += 1.5 self.wait(1) tracker -= 4 self.wait(0.5) self.play(tracker.animate.set_value(5)) self.wait(0.5) self.play(tracker.animate.set_value(3)) self.play(tracker.animate.increment_value(-2)) self.wait(0.5)注意
你也可以将ValueTrackers链接到更新器。在这种情况下,你必须确保ValueTracker通过
add添加到场景中。示例:ValueTrackerExample ¶
from manim import * class ValueTrackerExample(Scene): def construct(self): tracker = ValueTracker(0) label = Dot(radius=3).add_updater(lambda x : x.set_x(tracker.get_value())) self.add(label) self.add(tracker) tracker.add_updater(lambda mobject, dt: mobject.increment_value(dt)) self.wait(2)
class ValueTrackerExample(Scene): def construct(self): tracker = ValueTracker(0) label = Dot(radius=3).add_updater(lambda x : x.set_x(tracker.get_value())) self.add(label) self.add(tracker) tracker.add_updater(lambda mobject, dt: mobject.increment_value(dt)) self.wait(2)方法
获取此ValueTracker的当前值。
将标量值递增(添加)到 ValueTracker
将自身转换为mobject1和mobject2之间的插值。
为ValueTracker设置一个新的标量值
属性
animate用于动画化
self的任何方法的应用。animation_overridesdepthmobject的深度。
heightmobject的高度。
widthmobject的宽度。
- _original__init__(value=0, **kwargs)¶
初始化自身。有关准确的签名,请参阅 help(type(self))。