mirror of
https://github.com/3b1b/manim.git
synced 2025-07-30 05:24:22 +08:00
Changed all files to (mostly) conform to PEP8
This commit is contained in:
205
constants.py
205
constants.py
@ -3,31 +3,34 @@ import numpy as np
|
||||
|
||||
# Things anyone wishing to use this repository for their
|
||||
# own use will want to change this
|
||||
MEDIA_DIR = os.path.join(os.path.expanduser('~'), "Dropbox (3Blue1Brown)/3Blue1Brown Team Folder")
|
||||
MEDIA_DIR = os.path.join(
|
||||
os.path.expanduser('~'),
|
||||
"Dropbox (3Blue1Brown)/3Blue1Brown Team Folder"
|
||||
)
|
||||
#
|
||||
|
||||
|
||||
DEFAULT_PIXEL_HEIGHT = 1080
|
||||
DEFAULT_PIXEL_WIDTH = 1920
|
||||
DEFAULT_PIXEL_WIDTH = 1920
|
||||
|
||||
LOW_QUALITY_FRAME_DURATION = 1./15
|
||||
MEDIUM_QUALITY_FRAME_DURATION = 1./30
|
||||
PRODUCTION_QUALITY_FRAME_DURATION = 1./60
|
||||
LOW_QUALITY_FRAME_DURATION = 1. / 15
|
||||
MEDIUM_QUALITY_FRAME_DURATION = 1. / 30
|
||||
PRODUCTION_QUALITY_FRAME_DURATION = 1. / 60
|
||||
|
||||
#There might be other configuration than pixel_shape later...
|
||||
# There might be other configuration than pixel_shape later...
|
||||
PRODUCTION_QUALITY_CAMERA_CONFIG = {
|
||||
"pixel_shape" : (DEFAULT_PIXEL_HEIGHT, DEFAULT_PIXEL_WIDTH),
|
||||
"pixel_shape": (DEFAULT_PIXEL_HEIGHT, DEFAULT_PIXEL_WIDTH),
|
||||
}
|
||||
|
||||
MEDIUM_QUALITY_CAMERA_CONFIG = {
|
||||
"pixel_shape" : (720, 1280),
|
||||
"pixel_shape": (720, 1280),
|
||||
}
|
||||
|
||||
LOW_QUALITY_CAMERA_CONFIG = {
|
||||
"pixel_shape" : (480, 854),
|
||||
"pixel_shape": (480, 854),
|
||||
}
|
||||
|
||||
DEFAULT_POINT_DENSITY_2D = 25
|
||||
DEFAULT_POINT_DENSITY_2D = 25
|
||||
DEFAULT_POINT_DENSITY_1D = 250
|
||||
|
||||
DEFAULT_POINT_THICKNESS = 4
|
||||
@ -35,8 +38,8 @@ DEFAULT_POINT_THICKNESS = 4
|
||||
|
||||
FRAME_HEIGHT = 8.0
|
||||
FRAME_WIDTH = FRAME_HEIGHT * DEFAULT_PIXEL_WIDTH / DEFAULT_PIXEL_HEIGHT
|
||||
FRAME_Y_RADIUS = FRAME_HEIGHT/2
|
||||
FRAME_X_RADIUS = FRAME_WIDTH/2
|
||||
FRAME_Y_RADIUS = FRAME_HEIGHT / 2
|
||||
FRAME_X_RADIUS = FRAME_WIDTH / 2
|
||||
|
||||
SMALL_BUFF = 0.1
|
||||
MED_SMALL_BUFF = 0.25
|
||||
@ -47,49 +50,49 @@ DEFAULT_MOBJECT_TO_EDGE_BUFFER = MED_LARGE_BUFF
|
||||
DEFAULT_MOBJECT_TO_MOBJECT_BUFFER = MED_SMALL_BUFF
|
||||
|
||||
|
||||
#All in seconds
|
||||
# All in seconds
|
||||
DEFAULT_ANIMATION_RUN_TIME = 1.0
|
||||
DEFAULT_POINTWISE_FUNCTION_RUN_TIME = 3.0
|
||||
DEFAULT_WAIT_TIME = 1.0
|
||||
|
||||
|
||||
ORIGIN = np.array(( 0., 0., 0.))
|
||||
UP = np.array(( 0., 1., 0.))
|
||||
DOWN = np.array(( 0.,-1., 0.))
|
||||
RIGHT = np.array(( 1., 0., 0.))
|
||||
LEFT = np.array((-1., 0., 0.))
|
||||
IN = np.array(( 0., 0.,-1.))
|
||||
OUT = np.array(( 0., 0., 1.))
|
||||
X_AXIS = np.array(( 1., 0., 0.))
|
||||
Y_AXIS = np.array(( 0., 1., 0.))
|
||||
Z_AXIS = np.array(( 0., 0., 1.))
|
||||
ORIGIN = np.array((0., 0., 0.))
|
||||
UP = np.array((0., 1., 0.))
|
||||
DOWN = np.array((0., -1., 0.))
|
||||
RIGHT = np.array((1., 0., 0.))
|
||||
LEFT = np.array((-1., 0., 0.))
|
||||
IN = np.array((0., 0., -1.))
|
||||
OUT = np.array((0., 0., 1.))
|
||||
X_AXIS = np.array((1., 0., 0.))
|
||||
Y_AXIS = np.array((0., 1., 0.))
|
||||
Z_AXIS = np.array((0., 0., 1.))
|
||||
|
||||
TOP = FRAME_Y_RADIUS*UP
|
||||
BOTTOM = FRAME_Y_RADIUS*DOWN
|
||||
LEFT_SIDE = FRAME_X_RADIUS*LEFT
|
||||
RIGHT_SIDE = FRAME_X_RADIUS*RIGHT
|
||||
TOP = FRAME_Y_RADIUS * UP
|
||||
BOTTOM = FRAME_Y_RADIUS * DOWN
|
||||
LEFT_SIDE = FRAME_X_RADIUS * LEFT
|
||||
RIGHT_SIDE = FRAME_X_RADIUS * RIGHT
|
||||
|
||||
TAU = 2*np.pi
|
||||
DEGREES = TAU/360
|
||||
TAU = 2 * np.pi
|
||||
DEGREES = TAU / 360
|
||||
|
||||
ANIMATIONS_DIR = os.path.join(MEDIA_DIR, "animations")
|
||||
RASTER_IMAGE_DIR = os.path.join(MEDIA_DIR, "designs", "raster_images")
|
||||
SVG_IMAGE_DIR = os.path.join(MEDIA_DIR, "designs", "svg_images")
|
||||
#TODO, staged scenes should really go into a subdirectory of a given scenes directory
|
||||
STAGED_SCENES_DIR = os.path.join(ANIMATIONS_DIR, "staged_scenes")
|
||||
# TODO, staged scenes should really go into a subdirectory of a given scenes directory
|
||||
STAGED_SCENES_DIR = os.path.join(ANIMATIONS_DIR, "staged_scenes")
|
||||
###
|
||||
THIS_DIR = os.path.dirname(os.path.realpath(__file__))
|
||||
FILE_DIR = os.path.join(THIS_DIR, "files")
|
||||
TEX_DIR = os.path.join(FILE_DIR, "Tex")
|
||||
TEX_IMAGE_DIR = TEX_DIR #TODO, What is this doing?
|
||||
#These two may be depricated now.
|
||||
MOBJECT_DIR = os.path.join(FILE_DIR, "mobjects")
|
||||
THIS_DIR = os.path.dirname(os.path.realpath(__file__))
|
||||
FILE_DIR = os.path.join(THIS_DIR, "files")
|
||||
TEX_DIR = os.path.join(FILE_DIR, "Tex")
|
||||
TEX_IMAGE_DIR = TEX_DIR # TODO, What is this doing?
|
||||
# These two may be depricated now.
|
||||
MOBJECT_DIR = os.path.join(FILE_DIR, "mobjects")
|
||||
IMAGE_MOBJECT_DIR = os.path.join(MOBJECT_DIR, "image")
|
||||
|
||||
if not os.path.exists(MEDIA_DIR):
|
||||
raise Exception("""
|
||||
Redefine MEDIA_DIR in constants.py to point to
|
||||
a valid directory where movies and images will
|
||||
Redefine MEDIA_DIR in constants.py to point to
|
||||
a valid directory where movies and images will
|
||||
be written
|
||||
""")
|
||||
for folder in [FILE_DIR, RASTER_IMAGE_DIR, SVG_IMAGE_DIR, ANIMATIONS_DIR, TEX_DIR,
|
||||
@ -99,82 +102,72 @@ for folder in [FILE_DIR, RASTER_IMAGE_DIR, SVG_IMAGE_DIR, ANIMATIONS_DIR, TEX_DI
|
||||
os.makedirs(folder)
|
||||
|
||||
TEX_TEXT_TO_REPLACE = "YourTextHere"
|
||||
TEMPLATE_TEX_FILE = os.path.join(THIS_DIR, "template.tex")
|
||||
TEMPLATE_TEX_FILE = os.path.join(THIS_DIR, "template.tex")
|
||||
TEMPLATE_TEXT_FILE = os.path.join(THIS_DIR, "text_template.tex")
|
||||
|
||||
FFMPEG_BIN = "ffmpeg"
|
||||
|
||||
|
||||
### Colors ###
|
||||
# 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",
|
||||
"GREY_BROWN" : "#736357",
|
||||
"PINK" : "#D147BD",
|
||||
"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",
|
||||
"GREY_BROWN": "#736357",
|
||||
"PINK": "#D147BD",
|
||||
"GREEN_SCREEN": "#00FF00",
|
||||
"ORANGE" : "#FF862F",
|
||||
"ORANGE": "#FF862F",
|
||||
}
|
||||
PALETTE = COLOR_MAP.values()
|
||||
locals().update(COLOR_MAP)
|
||||
for name in filter(lambda s : s.endswith("_C"), COLOR_MAP.keys()):
|
||||
for name in filter(lambda s: s.endswith("_C"), COLOR_MAP.keys()):
|
||||
locals()[name.replace("_C", "")] = locals()[name]
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user