Transform
The defined transform
Animation in transform.py
- transform.Transform(Animation)
- transform.ReplacementTransform(Transform)
- transform.TransformFromCopy(Transform)
- transform.ClockwiseTransform(Transform)
- transform.CounterclockwiseTransform(Transform)
- transform.MoveToTarget(Transform)
- transform.CyclicReplace(Transform)
- transform.Swap(CyclicReplace)
- transform.ApplyMethod(Transform)
- transform.ApplyPointwiseFunction(ApplyMethod)
- transform.ApplyPointwiseFunctionToCenter(ApplyPointwiseFunction)
- transform.ApplyMatrix(ApplyPointwiseFunction)
- transform.FadeToColor(ApplyMethod)
- transform.ScaleInPlace(ApplyMethod)
- transform.ShrinkToCenter(ScaleInPlace)
- transform.Restore(ApplyMethod)
- transform.ApplyComplexFunction(ApplyMethod)
- transform.ApplyFunction(Transform)
- transform.TransformAnimations(Transform)
Class ScaleInPlace(ApplyMethod)
ScaleInPlace is used to transform the specified
VMobject to center according to the scale specified.
Class ShrinkToCenter(ScaleInPlace)
ShrinkToCenter is used to transform the specified
VMobject to center by setting the scale to zero.
Example
Code
# folder/file: tut/manim_animation_scaleinplaceshrinktocenter_001a.py
from manimlib.scene.scene import Scene
from manimlib.mobject.geometry import Circle, Square
from manimlib.animation.transform import ScaleInPlace, ShrinkToCenter
from manimlib.mobject.svg.tex_mobject import TextMobject
from manimlib.animation.composition import AnimationGroup
class manim_animation_scaleinplaceshrinktocenter_001a(Scene):
def construct(self):
a1=TextMobject("Test1 Text").move_to([-5.5,2.5,0])
a2=TextMobject("T2 Text").move_to([-3,2.5,0])
a3=Circle().scale(0.5).move_to([-0.5,2.5,0])
a4=Square().scale(0.5).move_to([2,2.5,0])
b1=TextMobject("Test1 Text").move_to([-5.5,0,0])
b2=TextMobject("T2 Text").move_to([-3,0,0])
b3=Circle().scale(0.5).move_to([-0.5,0,0])
b4=Square().scale(0.5).move_to([2,0,0])
self.add(TextMobject("ScaleInPlace").move_to([0,3.5,0]),TextMobject("ShrinkToCenter").move_to([0,1,0]))
self.add(a1,a2,a3,a4,b1,b2,b3,b4)
self.wait(3)
self.play(AnimationGroup(ScaleInPlace(a1,0.5),ShrinkToCenter(b1)),run_time=5)
self.wait(3)
a1.move_to([-5.5,3,0])
b1.move_to([-5.5,0.5,0])
self.wait(2)
a2.move_to([-3,1.5,0])
b2.move_to([-3,-1,0])
self.wait(3)
self.play(AnimationGroup(ScaleInPlace(a2,1.5),ShrinkToCenter(b2)),run_time=5)
self.wait(3)
self.play(AnimationGroup(ScaleInPlace(a3,1.5),ShrinkToCenter(b3)),run_time=5)
self.wait(3)
self.play(AnimationGroup(ScaleInPlace(a4,0),ShrinkToCenter(b4)),run_time=5)
self.wait(3)
Output