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 Transform(Animation)
Transform is used to transform the first specified
VMobject at first one position animatedly into the second specified
VMobject at second one position for given parameters along a straight path.
Class ReplacementTransform(Transform)
ReplacementTransform is used to replace the first specified
VMobject at first one position animatedly with the second specified
VMobject at second one position for given parameters along a straight path.
Class TransformFromCopy(Transform)
TransformFromCopy is used to make a copy of the first specified
VMobject at first one position first and then replace the copy animatedly with the second specified
VMobject at second one position for given parameters along a straight path.
Example
Code
# folder/file: tut/manim_animation_transformreplacementtransformfromcopy_001a.py
from manimlib.scene.scene import Scene
from manimlib.mobject.geometry import Circle, Square
from manimlib.animation.transform import Transform, ReplacementTransform, TransformFromCopy
from manimlib.mobject.svg.tex_mobject import TextMobject
from manimlib.animation.composition import AnimationGroup
class manim_animation_transformreplacementtransformfromcopy_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])
c1=TextMobject("Test1 Text").move_to([-5.5,-2.5,0])
c2=TextMobject("T2 Text").move_to([-3,-2.5,0])
c3=Circle().scale(0.5).move_to([-0.5,-2.5,0])
c4=Square().scale(0.5).move_to([2,-2.5,0])
self.add(TextMobject("Transform").move_to([0,3.5,0]),TextMobject("ReplacementTransform").move_to([0,1,0]),TextMobject("TransformFromCopy").move_to([0,-1.5,0]))
self.add(a1,a2,a3,a4,b1,b2,b3,b4,c1,c2,c3,c4)
self.wait(3)
self.play(AnimationGroup(Transform(a1,a2),ReplacementTransform(b1,b2),TransformFromCopy(c1,c2)),run_time=5)
self.wait(3)
a1.move_to([-5.5,3,0])
b1.move_to([-5.5,0.5,0])
c1.move_to([-5.5,-2,0])
self.wait(2)
a2.move_to([-3,1.5,0])
b2.move_to([-3,-1,0])
c2.move_to([-3,-3.5,0])
self.wait(3)
self.play(AnimationGroup(Transform(a1,a3),ReplacementTransform(b1,b3),TransformFromCopy(c1,c3)),run_time=5)
self.wait(3)
self.play(AnimationGroup(Transform(a2,a4),ReplacementTransform(b2,b4),TransformFromCopy(c2,c4)),run_time=5)
self.wait(3)
Output