2015-03-22 13:33:02 -06:00
|
|
|
import os
|
2015-06-19 08:31:02 -07:00
|
|
|
import numpy as np
|
2015-03-22 13:33:02 -06:00
|
|
|
|
2015-10-29 13:45:28 -07:00
|
|
|
|
|
|
|
DEFAULT_HEIGHT = 1440
|
|
|
|
DEFAULT_WIDTH = 2560
|
|
|
|
DEFAULT_FRAME_DURATION = 0.04
|
|
|
|
|
2015-05-07 21:28:02 -07:00
|
|
|
PRODUCTION_QUALITY_DISPLAY_CONFIG = {
|
2015-10-29 13:45:28 -07:00
|
|
|
"height" : DEFAULT_HEIGHT,
|
|
|
|
"width" : DEFAULT_WIDTH ,
|
|
|
|
"frame_duration" : DEFAULT_FRAME_DURATION,
|
2015-05-07 21:28:02 -07:00
|
|
|
}
|
|
|
|
|
2015-10-20 21:55:46 -07:00
|
|
|
MEDIUM_QUALITY_DISPLAY_CONFIG = {
|
|
|
|
"height" : 720,
|
|
|
|
"width" : 1280,
|
|
|
|
"frame_duration" : 0.04,
|
|
|
|
}
|
|
|
|
|
2015-05-07 21:28:02 -07:00
|
|
|
LOW_QUALITY_DISPLAY_CONFIG = {
|
|
|
|
"height" : 480,
|
|
|
|
"width" : 840,
|
2015-06-09 11:26:12 -07:00
|
|
|
"frame_duration" : 0.04,
|
2015-05-07 21:28:02 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
DEFAULT_POINT_DENSITY_2D = 25
|
2015-10-08 11:14:55 -07:00
|
|
|
DEFAULT_POINT_DENSITY_1D = 200
|
2015-05-07 21:28:02 -07:00
|
|
|
|
2015-11-01 14:36:49 -08:00
|
|
|
DEFAULT_POINT_THICKNESS = 6
|
2015-10-10 18:48:25 -07:00
|
|
|
|
2015-05-07 21:28:02 -07:00
|
|
|
#TODO, Make sure these are not needd
|
2015-06-19 08:31:02 -07:00
|
|
|
SPACE_HEIGHT = 4.0
|
|
|
|
SPACE_WIDTH = SPACE_HEIGHT * DEFAULT_WIDTH / DEFAULT_HEIGHT
|
|
|
|
|
|
|
|
|
2015-09-28 16:25:18 -07:00
|
|
|
DEFAULT_MOBJECT_TO_EDGE_BUFFER = 0.5
|
|
|
|
DEFAULT_MOBJECT_TO_MOBJECT_BUFFER = 0.2
|
|
|
|
|
|
|
|
|
2015-03-22 13:33:02 -06:00
|
|
|
#All in seconds
|
2015-06-27 04:49:10 -07:00
|
|
|
DEFAULT_ANIMATION_RUN_TIME = 1.0
|
2015-10-20 21:55:46 -07:00
|
|
|
DEFAULT_POINTWISE_FUNCTION_RUN_TIME = 3.0
|
2015-03-22 13:33:02 -06:00
|
|
|
DEFAULT_DITHER_TIME = 1.0
|
|
|
|
|
2015-06-19 08:31:02 -07:00
|
|
|
|
|
|
|
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))
|
2015-08-07 18:10:00 -07:00
|
|
|
IN = np.array(( 0, 0,-1))
|
|
|
|
OUT = np.array(( 0, 0, 1))
|
2015-03-26 22:49:22 -06:00
|
|
|
|
2015-10-09 19:53:38 -07:00
|
|
|
TOP = SPACE_HEIGHT*UP
|
|
|
|
BOTTOM = SPACE_HEIGHT*DOWN
|
|
|
|
LEFT_SIDE = SPACE_WIDTH*LEFT
|
|
|
|
RIGHT_SIDE = SPACE_WIDTH*RIGHT
|
|
|
|
|
2015-10-29 13:45:28 -07:00
|
|
|
THIS_DIR = os.path.dirname(os.path.realpath(__file__))
|
|
|
|
FILE_DIR = os.path.join(THIS_DIR, os.pardir, "animation_files")
|
|
|
|
IMAGE_DIR = os.path.join(FILE_DIR, "images")
|
|
|
|
GIF_DIR = os.path.join(FILE_DIR, "gifs")
|
|
|
|
MOVIE_DIR = os.path.join(FILE_DIR, "movies")
|
|
|
|
TEX_DIR = os.path.join(FILE_DIR, "Tex")
|
|
|
|
TEX_IMAGE_DIR = os.path.join(IMAGE_DIR, "Tex")
|
|
|
|
MOBJECT_DIR = os.path.join(FILE_DIR, "mobjects")
|
2015-08-17 11:12:56 -07:00
|
|
|
IMAGE_MOBJECT_DIR = os.path.join(MOBJECT_DIR, "image")
|
|
|
|
|
2015-10-12 19:39:46 -07:00
|
|
|
for folder in [IMAGE_DIR, GIF_DIR, MOVIE_DIR, TEX_DIR,
|
2015-08-17 11:12:56 -07:00
|
|
|
TEX_IMAGE_DIR, MOBJECT_DIR, IMAGE_MOBJECT_DIR]:
|
2015-03-22 13:33:02 -06:00
|
|
|
if not os.path.exists(folder):
|
|
|
|
os.mkdir(folder)
|
|
|
|
|
2015-04-03 16:41:25 -07:00
|
|
|
PDF_DENSITY = 800
|
2015-03-26 22:49:22 -06:00
|
|
|
SIZE_TO_REPLACE = "SizeHere"
|
|
|
|
TEX_TEXT_TO_REPLACE = "YourTextHere"
|
2015-10-29 13:45:28 -07:00
|
|
|
TEMPLATE_TEX_FILE = os.path.join(THIS_DIR, "template.tex")
|
|
|
|
TEMPLATE_TEXT_FILE = os.path.join(THIS_DIR, "text_template.tex")
|
2015-08-07 18:10:00 -07:00
|
|
|
MAX_LEN_FOR_HUGE_TEX_FONT = 25
|
2015-03-26 22:49:22 -06:00
|
|
|
|
|
|
|
LOGO_PATH = os.path.join(IMAGE_DIR, "logo.png")
|
|
|
|
|
2015-06-13 19:00:23 -07:00
|
|
|
|
2015-10-20 21:55:46 -07:00
|
|
|
### Colors ###
|
|
|
|
|
|
|
|
|
|
|
|
COLOR_MAP = {
|
2015-10-29 13:45:28 -07:00
|
|
|
"DARK_BLUE" : "#236B8E",
|
|
|
|
"DARK_BROWN" : "#8B4513",
|
2015-10-20 21:55:46 -07:00
|
|
|
"LIGHT_BROWN" : "#CD853F",
|
2015-11-01 14:36:49 -08:00
|
|
|
"BLUE_E" : "#1C758A",
|
|
|
|
"BLUE_D" : "#29ABCA",
|
2015-10-29 13:45:28 -07:00
|
|
|
"BLUE_C" : "#58C4DD",
|
2015-11-01 14:36:49 -08:00
|
|
|
"BLUE_B" : "#9CDCEB",
|
|
|
|
"BLUE_A" : "#C7E9F1",
|
|
|
|
"TEAL_E" : "#49A88F",
|
|
|
|
"TEAL_D" : "#55C1A7",
|
2015-10-29 13:45:28 -07:00
|
|
|
"TEAL_C" : "#5CD0B3",
|
2015-11-01 14:36:49 -08:00
|
|
|
"TEAL_B" : "#76DDC0",
|
|
|
|
"TEAL_A" : "#ACEAD7",
|
|
|
|
"GREEN_E" : "#699C52",
|
|
|
|
"GREEN_D" : "#77B05D",
|
2015-10-29 13:45:28 -07:00
|
|
|
"GREEN_C" : "#83C167",
|
2015-11-01 14:36:49 -08:00
|
|
|
"GREEN_B" : "#A6CF8C",
|
|
|
|
"GREEN_A" : "#C9E2AE",
|
|
|
|
"YELLOW_E" : "#E8C11C",
|
|
|
|
"YELLOW_D" : "#F4D345",
|
2015-10-29 13:45:28 -07:00
|
|
|
"YELLOW_C" : "#FCE15B",
|
2015-11-01 14:36:49 -08:00
|
|
|
"YELLOW_B" : "#FFEA94",
|
|
|
|
"YELLOW_A" : "#FFF1B6",
|
|
|
|
"GOLD_E" : "#C78D46",
|
|
|
|
"GOLD_D" : "#E1A158",
|
2015-10-29 13:45:28 -07:00
|
|
|
"GOLD_C" : "#F0AC5F",
|
2015-11-01 14:36:49 -08:00
|
|
|
"GOLD_B" : "#F9B775",
|
|
|
|
"GOLD_A" : "#F7C797",
|
|
|
|
"RED_E" : "#CF5044",
|
|
|
|
"RED_D" : "#E65A4C",
|
2015-10-29 13:45:28 -07:00
|
|
|
"RED_C" : "#FC6255",
|
2015-11-01 14:36:49 -08:00
|
|
|
"RED_B" : "#FF8080",
|
|
|
|
"RED_A" : "#F7A1A3",
|
|
|
|
"MAROON_E" : "#94424F",
|
|
|
|
"MAROON_D" : "#A24D61",
|
2015-10-29 13:45:28 -07:00
|
|
|
"MAROON_C" : "#C55F73",
|
2015-11-01 14:36:49 -08:00
|
|
|
"MAROON_B" : "#EC92AB",
|
|
|
|
"MAROON_A" : "#ECABC1",
|
|
|
|
"PURPLE_E" : "#644172",
|
|
|
|
"PURPLE_D" : "#715582",
|
2015-10-29 13:45:28 -07:00
|
|
|
"PURPLE_C" : "#9A72AC",
|
2015-11-01 14:36:49 -08:00
|
|
|
"PURPLE_B" : "#B189C6",
|
|
|
|
"PURPLE_A" : "#CAA3E8",
|
2015-10-29 13:45:28 -07:00
|
|
|
"WHITE" : "#FFFFFF",
|
|
|
|
"BLACK" : "#000000",
|
2015-10-20 21:55:46 -07:00
|
|
|
}
|
|
|
|
PALETTE = COLOR_MAP.values()
|
2015-10-29 13:45:28 -07:00
|
|
|
globals().update(COLOR_MAP)
|
|
|
|
for name in filter(lambda s : s.endswith("_C"), COLOR_MAP.keys()):
|
|
|
|
globals()[name.replace("_C", "")] = globals()[name]
|
2015-08-17 11:12:56 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2015-06-13 19:00:23 -07:00
|
|
|
|
|
|
|
|
2015-11-01 14:36:49 -08:00
|
|
|
|