Mobject
The defined coloring functions for
Mobject in mobject.py
- def set_color(self, color=YELLOW_C, family=True)
- def set_color_by_gradient(self, *colors)
- def set_colors_by_radial_gradient(self, center=None, radius=1, inner_color=WHITE, outer_color=BLACK)
- def set_submobject_colors_by_gradient(self, *colors)
- def set_submobject_colors_by_radial_gradient(self, center=None, radius=1, inner_color=WHITE, outer_color=BLACK)
- def to_original_color(self)
- def fade_to(self, color, alpha, family=True)
- def fade(self, darkness=0.5, family=True)
Coloring Functions
def set_color(self, color=YELLOW_C, family=True)
set_color is used to set the color of a
Mobject according to the specified parameters.
def set_color_by_gradient(self, *colors)
set_color_by_gradient is used to set the color of a
Mobject by gradient according to the specified colors parameters, *color.
def set_colors_by_radial_gradient(self, center=None, radius=1, inner_color=WHITE, outer_color=BLACK)
set_colors_by_radial_gradient is used to set the color of a
Mobject by gradient radially according to the specified parameters.
def set_submobject_colors_by_gradient(self, *colors)
set_submobject_colors_by_gradient is used to set sub
Mobject colors by gradient according to the specified parameters.
def set_submobject_colors_by_radial_gradient(self, center=None, radius=1, inner_color=WHITE, outer_color=BLACK)
set_submobject_colors_by_radial_gradient is used to set sub
Mobject colors by gradient radially according to the specified parameters.
def to_original_color(self)
to_original_color is used to set the color of a
Mobject to its original color.
def fade_to(self, color, alpha, family=True)
fade_to is used to set the color of a
Mobject by fading to according to the specified color parameter, color, and the specified alpha parameter, alpha.
def fade(self, darkness=0.5, family=True)
fade is used to set the color of a
Mobject by fading according to the specified parameters.
Example
Code
# folder/file: tut/manim_mobject_func_coloring_001a.py
from manimlib.scene.scene import Scene
from manimlib.mobject.geometry import Rectangle, Square, Circle, Line,RoundedRectangle
from manimlib.animation.creation import ShowCreation
from manimlib.mobject.svg.tex_mobject import TexMobject, TextMobject
from manimlib.animation.fading import FadeOut
from manimlib.animation.creation import Write
from manimlib.animation.transform import ApplyMethod, ApplyFunction
from manimlib.imports import *
class manim_mobject_func_coloring_001a(Scene):
def construct(self):
linex=Line([2,2,0],[1,1,0],color="#88FF00")
polya= RoundedRectangle(width=2,height=2,corner_radius=0.5,stroke_width=50,fill_color="#FFFF00",fill_opacity=1)
polyb = Rectangle(width=2.5,height=1.5,stroke_width=15,color="#88FF00",fill_color="#FFFF00",fill_opacity=1)
polyc= Square(side_length=2,stroke_width=20,fill_color="#FF8800",fill_opacity=1).move_to([-3,-2,0])
polyd= Circle(arc_center=(-2,0.75,0),color="#888888")
polya.add(Rectangle(width=2,height=2,color="#77DDCC").move_to(polya))
polya.add(Rectangle(width=1,height=2.5,color="#77DDCC").move_to(polya))
polya.add(TextMobject("A").move_to(polya))
polye = Rectangle(width=1.25,height=3.75,color="#888888",fill_color="#333333",fill_opacity=1).move_to([-0.625,-1.125,0])
polyf= Rectangle(width=1,height=2,color="#888888").move_to([-2.5,-2,0])
self.play(ShowCreation(polyb),run_time=2)
polyb.add(polye)
#self.play(ShowCreation(polyb),ShowCreation(polye),run_time=2)
self.wait()
self.play(ShowCreation(polyc),ShowCreation(polyf),run_time=2)
self.wait()
self.play(ShowCreation(polya.move_to(polyd)),ShowCreation(polyd),run_time=2)
self.wait()
self.add(TextMobject("B").move_to([0,0,0]))
self.add(TextMobject("C").move_to(polyc))
self.add(TextMobject("E").move_to(polye))
self.add(linex)
self.add(Rectangle(width=14.22,height=8))
text=TexMobject("polya.set\_color(color=\"\#338833\")").move_to([0,3,0])
self.play(Write(text),ApplyFunction(lambda mob:mob.set_color(color="#338833"),polya),run_time=3)
self.wait()
self.play(FadeOut(text),run_time=2)
text=TexMobject("polya.set\_color\_by\_gradient(\"\#FF8833\",\"\#003388\")").move_to([0,3,0])
self.play(Write(text),ApplyFunction(lambda mob:mob.set_color_by_gradient("#FF8833","#003388"),polya),run_time=3)
self.wait()
self.play(FadeOut(text),run_time=2)
text=TexMobject("text.set\_color\_by\_radial\_gradient\cr(radius=2,outer_color=\"\#003388\")").move_to([0,3,0])
self.play(ApplyFunction(lambda mob:mob.set_colors_by_radial_gradient( radius=2,outer_color="#003388"),text),run_time=5)
self.wait()
self.play(FadeOut(text),run_time=2)
text=TexMobject("polya.to\_original\_color()").move_to([0,3,0])
self.play(Write(text),ApplyFunction(lambda mob:mob.to_original_color(),polya),run_time=3)
self.wait()
self.play(FadeOut(text),run_time=2)
text=TexMobject("text.set\_submobject\_color\_by\_gradient\cr(\"\#FF8833\",\"\#003388\")").move_to([0,3,0])
self.play(ApplyFunction(lambda mob:mob.set_submobject_colors_by_gradient("#FF8833","#003388"),text),run_time=3)
self.wait()
self.play(FadeOut(text),run_time=2)
text=TexMobject("text.set\_submobject\_color\\_by\_radial\_gradient\cr(radius=2,outer_color=\"\#003388\")").move_to([0,3,0])
self.play(ApplyFunction(lambda mob:mob.set_submobject_colors_by_radial_gradient( radius=2,outer_color="#003388"),text),run_time=5)
self.wait()
self.play(FadeOut(text),run_time=2)
text=TexMobject("polya.fade\_to(color=\"\#003388\",alpha=0.75)").move_to([0,3,0])
self.play(Write(text),ApplyFunction(lambda mob:mob.fade_to(color="#003388",alpha=0.75),polya),run_time=3)
self.wait()
self.play(FadeOut(text),run_time=2)
text=TexMobject("polyb.fade()").move_to([0,3,0])
self.play(Write(text),ApplyFunction(lambda mob:mob.fade(),polyb),run_time=3)
self.wait()
self.play(FadeOut(text),run_time=2)
Output