Skip to content

# New colour enums- Try2 #488

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 13 commits into from
Sep 29, 2020
1 change: 1 addition & 0 deletions docs/source/changelog.rst
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,7 @@ Of interest to developers
#. Added logging tests tools.
#. Added ability to save logs in json
#. Move to Poetry.
#. Colors have moved to an Enum

Other Changes
--------------
Expand Down
1 change: 1 addition & 0 deletions manim/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,7 @@

from .utils.bezier import *
from .utils.color import *
from .utils import color as color
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this line does not have an effect right now.
import manim.color as C is not working, only
import manim.utils.color as C

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you please try from manim import color as C instead?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh, nice, this one is working

from manim import Scene,Dot
from manim import color as C
class Foo(Scene):
    def construct(self):
        dot = Dot().set_color(C.GREEN)
        self.add(dot)
        self.wait(1)

from .utils.config_ops import *
from .utils.debug import *
from .utils.images import *
Expand Down
1 change: 1 addition & 0 deletions manim/animation/indication.py
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@
from ..utils.config_ops import digest_config
from ..utils.rate_functions import there_and_back
from ..utils.rate_functions import wiggle
from ..utils.color import GREY, YELLOW


class FocusOn(Transform):
Expand Down
3 changes: 1 addition & 2 deletions manim/animation/specialized.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,12 @@
from ..animation.composition import LaggedStart
from ..animation.transform import ApplyMethod
from ..animation.transform import Restore
from ..constants import WHITE
from ..constants import BLACK
from ..mobject.geometry import Circle
from ..mobject.svg.drawings import Car
from ..mobject.types.vectorized_mobject import VGroup
from ..utils.config_ops import digest_config
from ..utils.space_ops import get_norm
from ..utils.color import BLACK, WHITE


class MoveCar(ApplyMethod):
Expand Down
2 changes: 1 addition & 1 deletion manim/camera/camera.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
from ..mobject.mobject import Mobject
from ..mobject.types.point_cloud_mobject import PMobject
from ..mobject.types.vectorized_mobject import VMobject
from ..utils.color import color_to_int_rgba
from ..utils.color import color_to_int_rgba, BLACK
from ..utils.config_ops import digest_config
from ..utils.images import get_full_raster_image_path
from ..utils.iterables import list_difference_update
Expand Down
3 changes: 2 additions & 1 deletion manim/camera/moving_camera.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,11 @@

from .. import config
from ..camera.camera import Camera
from ..constants import ORIGIN, WHITE
from ..constants import ORIGIN
from ..mobject.frame import ScreenRectangle
from ..mobject.types.vectorized_mobject import VGroup
from ..utils.config_ops import digest_config
from ..utils.color import WHITE


# TODO, think about how to incorporate perspective
Expand Down
70 changes: 0 additions & 70 deletions manim/constants.py
Original file line number Diff line number Diff line change
Expand Up @@ -112,76 +112,6 @@ class MyText(Text):
# gif stuff
GIF_FILE_EXTENSION = ".gif"

# Colors
COLOR_MAP = {
"DARK_BLUE": "#236B8E",
"DARK_BROWN": "#8B4513",
"LIGHT_BROWN": "#CD853F",
"BLUE_E": "#1C758A",
"BLUE_D": "#29ABCA",
"BLUE_C": "#58C4DD",
"BLUE_B": "#9CDCEB",
"BLUE_A": "#C7E9F1",
"TEAL_E": "#49A88F",
"TEAL_D": "#55C1A7",
"TEAL_C": "#5CD0B3",
"TEAL_B": "#76DDC0",
"TEAL_A": "#ACEAD7",
"GREEN_E": "#699C52",
"GREEN_D": "#77B05D",
"GREEN_C": "#83C167",
"GREEN_B": "#A6CF8C",
"GREEN_A": "#C9E2AE",
"YELLOW_E": "#E8C11C",
"YELLOW_D": "#F4D345",
"YELLOW_C": "#FFFF00",
"YELLOW_B": "#FFEA94",
"YELLOW_A": "#FFF1B6",
"GOLD_E": "#C78D46",
"GOLD_D": "#E1A158",
"GOLD_C": "#F0AC5F",
"GOLD_B": "#F9B775",
"GOLD_A": "#F7C797",
"RED_E": "#CF5044",
"RED_D": "#E65A4C",
"RED_C": "#FC6255",
"RED_B": "#FF8080",
"RED_A": "#F7A1A3",
"MAROON_E": "#94424F",
"MAROON_D": "#A24D61",
"MAROON_C": "#C55F73",
"MAROON_B": "#EC92AB",
"MAROON_A": "#ECABC1",
"PURPLE_E": "#644172",
"PURPLE_D": "#715582",
"PURPLE_C": "#9A72AC",
"PURPLE_B": "#B189C6",
"PURPLE_A": "#CAA3E8",
"WHITE": "#FFFFFF",
"BLACK": "#000000",
"LIGHT_GRAY": "#BBBBBB",
"LIGHT_GREY": "#BBBBBB",
"GRAY": "#888888",
"GREY": "#888888",
"DARK_GREY": "#444444",
"DARK_GRAY": "#444444",
"DARKER_GREY": "#222222",
"DARKER_GRAY": "#222222",
"GREY_BROWN": "#736357",
"PINK": "#D147BD",
"LIGHT_PINK": "#DC75CD",
"GREEN_SCREEN": "#00FF00",
"ORANGE": "#FF862F",
}
COLOR_MAP.update(
{
name.replace("_C", ""): COLOR_MAP[name]
for name in COLOR_MAP
if name.endswith("_C")
}
)
PALETTE = list(COLOR_MAP.values())
locals().update(COLOR_MAP)
FFMPEG_VERBOSITY_MAP = {
"DEBUG": "error",
"INFO": "error",
Expand Down
2 changes: 1 addition & 1 deletion manim/mobject/changing.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@

__all__ = ["AnimatedBoundary", "TracedPath"]


from ..constants import *
from ..mobject.types.vectorized_mobject import VMobject
from ..mobject.types.vectorized_mobject import VGroup
from ..utils.rate_functions import smooth
from ..utils.space_ops import get_norm
from ..utils.color import BLUE_D, BLUE_B, BLUE_E, GREY_BROWN, WHITE


class AnimatedBoundary(VGroup):
Expand Down
2 changes: 2 additions & 0 deletions manim/mobject/coordinate_systems.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@
from ..utils.config_ops import merge_dicts_recursively
from ..utils.simple_functions import binary_search
from ..utils.space_ops import angle_of_vector
from ..utils.color import LIGHT_GREY, WHITE, BLUE_D, BLUE


# TODO: There should be much more code reuse between Axes, NumberPlane and GraphScene

Expand Down
1 change: 1 addition & 0 deletions manim/mobject/frame.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
from ..constants import *
from ..mobject.geometry import Rectangle
from ..utils.config_ops import digest_config
from ..utils.color import BLACK


class ScreenRectangle(Rectangle):
Expand Down
2 changes: 2 additions & 0 deletions manim/mobject/functions.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@
from ..constants import *
from ..mobject.types.vectorized_mobject import VMobject
from ..utils.config_ops import digest_config
from ..utils.color import YELLOW

import math


Expand Down
2 changes: 1 addition & 1 deletion manim/mobject/geometry.py
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@
from ..utils.space_ops import get_norm
from ..utils.space_ops import normalize
from ..utils.space_ops import rotate_vector

from ..utils.color import RED, WHITE, BLUE

DEFAULT_DOT_RADIUS = 0.08
DEFAULT_SMALL_DOT_RADIUS = 0.04
Expand Down
1 change: 1 addition & 0 deletions manim/mobject/matrix.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
from ..mobject.svg.tex_mobject import Tex
from ..mobject.types.vectorized_mobject import VGroup
from ..mobject.types.vectorized_mobject import VMobject
from ..utils.color import WHITE

VECTOR_LABEL_SCALE_FACTOR = 0.8

Expand Down
2 changes: 1 addition & 1 deletion manim/mobject/mobject.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
from .. import config, file_writer_config
from ..constants import *
from ..container import Container
from ..utils.color import color_gradient
from ..utils.color import color_gradient, WHITE, BLACK, YELLOW_C
from ..utils.color import interpolate_color
from ..utils.iterables import list_update
from ..utils.iterables import remove_list_redundancies
Expand Down
1 change: 1 addition & 0 deletions manim/mobject/number_line.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
from ..utils.config_ops import merge_dicts_recursively
from ..utils.simple_functions import fdiv
from ..utils.space_ops import normalize
from ..utils.color import LIGHT_GREY


class NumberLine(Line):
Expand Down
2 changes: 1 addition & 1 deletion manim/mobject/probability.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
from ..mobject.svg.tex_mobject import MathTex
from ..mobject.svg.tex_mobject import Tex
from ..mobject.types.vectorized_mobject import VGroup
from ..utils.color import color_gradient
from ..utils.color import color_gradient, DARK_GREY, LIGHT_GREY, GREEN_E, BLUE_E, MAROON_B, YELLOW, BLUE
from ..utils.iterables import tuplify

EPSILON = 0.0001
Expand Down
2 changes: 1 addition & 1 deletion manim/mobject/shape_matchers.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
from ..mobject.geometry import Rectangle
from ..mobject.types.vectorized_mobject import VGroup
from ..mobject.types.vectorized_mobject import VMobject
from ..utils.color import Color
from ..utils.color import Color, YELLOW, BLACK, RED
from ..utils.config_ops import digest_config


Expand Down
2 changes: 2 additions & 0 deletions manim/mobject/svg/code_mobject.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@
from pygments.formatters.html import HtmlFormatter
from pygments.styles import get_all_styles

from ...utils.color import WHITE


class Code(VGroup):
"""A highlighted source code listing.
Expand Down
1 change: 1 addition & 0 deletions manim/mobject/svg/drawings.py
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@
from ...utils.space_ops import angle_of_vector
from ...utils.space_ops import complex_to_R3
from ...utils.space_ops import rotate_vector
from ...utils.color import YELLOW, WHITE, DARK_GREY, MAROON_B, PURPLE, GREEN, BLACK, LIGHT_GREY, GREY, BLUE_B, BLUE_D
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why not just import C? And use C.WHITE, etc.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

also possible.
But I wanted to keep it consistent with the others, so I chose this way
Another option would be to say in this example from ...utils.color import *



class Lightbulb(SVGMobject):
Expand Down
1 change: 1 addition & 0 deletions manim/mobject/svg/tex_mobject.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
from ...utils.config_ops import digest_config
from ...utils.strings import split_string_list_to_isolate_substrings
from ...utils.tex_file_writing import tex_to_svg_file
from ...utils.color import BLACK

TEX_MOB_SCALE_FACTOR = 0.05

Expand Down
2 changes: 1 addition & 1 deletion manim/mobject/svg/text_mobject.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
from ...mobject.svg.svg_mobject import SVGMobject
from ...mobject.types.vectorized_mobject import VGroup
from ...utils.config_ops import digest_config

from ...utils.color import WHITE, BLACK

TEXT_MOB_SCALE_FACTOR = 0.05

Expand Down
2 changes: 1 addition & 1 deletion manim/mobject/three_dimensions.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@

__all__ = ["ThreeDVMobject", "ParametricSurface", "Sphere", "Cube", "Prism"]


from ..constants import *
from ..mobject.geometry import Square
from ..mobject.types.vectorized_mobject import VGroup
from ..mobject.types.vectorized_mobject import VMobject
from ..utils.iterables import tuplify
from ..utils.space_ops import z_to_vector
from ..utils.color import BLUE_D, BLUE , BLUE_E , LIGHT_GREY

##############

Expand Down
2 changes: 1 addition & 1 deletion manim/mobject/types/image_mobject.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
from ...mobject.mobject import Mobject
from ...mobject.shape_matchers import SurroundingRectangle
from ...utils.bezier import interpolate
from ...utils.color import color_to_int_rgb
from ...utils.color import color_to_int_rgb, WHITE
from ...utils.config_ops import digest_config
from ...utils.images import get_full_raster_image_path

Expand Down
2 changes: 1 addition & 1 deletion manim/mobject/types/point_cloud_mobject.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
from ...constants import *
from ...mobject.mobject import Mobject
from ...utils.bezier import interpolate
from ...utils.color import color_gradient
from ...utils.color import color_gradient, YELLOW_C, WHITE, BLACK, YELLOW
from ...utils.color import color_to_rgba
from ...utils.color import rgba_to_color
from ...utils.config_ops import digest_config
Expand Down
2 changes: 1 addition & 1 deletion manim/mobject/types/vectorized_mobject.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
from ...utils.bezier import interpolate
from ...utils.bezier import integer_interpolate
from ...utils.bezier import partial_bezier_points
from ...utils.color import color_to_rgba
from ...utils.color import color_to_rgba, BLACK, WHITE
from ...utils.iterables import make_even
from ...utils.iterables import stretch_array_to_length
from ...utils.iterables import tuplify
Expand Down
2 changes: 1 addition & 1 deletion manim/mobject/vector_field.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
from ..mobject.types.vectorized_mobject import VMobject
from ..utils.bezier import inverse_interpolate
from ..utils.bezier import interpolate
from ..utils.color import color_to_rgb
from ..utils.color import color_to_rgb, BLUE_E, GREEN, YELLOW, RED, BLUE, WHITE
from ..utils.color import rgb_to_color
from ..utils.config_ops import digest_config
from ..utils.rate_functions import linear
Expand Down
2 changes: 1 addition & 1 deletion manim/scene/graph_scene.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
from ..mobject.types.vectorized_mobject import VectorizedPoint
from ..scene.scene import Scene
from ..utils.bezier import interpolate
from ..utils.color import color_gradient
from ..utils.color import color_gradient, GREY, BLUE, GREEN, YELLOW, BLACK, WHITE
from ..utils.color import invert_color
from ..utils.space_ops import angle_of_vector

Expand Down
1 change: 1 addition & 0 deletions manim/scene/vector_space_scene.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
from ..mobject.types.vectorized_mobject import VGroup
from ..mobject.types.vectorized_mobject import VMobject
from ..scene.scene import Scene
from ..utils.color import GREEN_C, RED_C, BLUE_D, WHITE, YELLOW, GREY, LIGHT_GREY
from ..utils.rate_functions import rush_from
from ..utils.rate_functions import rush_into
from ..utils.space_ops import angle_of_vector
Expand Down
Loading