Refactored helpers.py into a folder of various util files, take 2

This commit is contained in:
Grant Sanderson
2018-03-30 18:42:32 -07:00
parent 8fae39fe82
commit 9560b0b077
32 changed files with 56 additions and 42 deletions

View File

@ -7,7 +7,7 @@ import warnings
from mobject.mobject import Mobject, Group from mobject.mobject import Mobject, Group
from mobject.vectorized_mobject import VMobject from mobject.vectorized_mobject import VMobject
from mobject.tex_mobject import TextMobject from mobject.tex_mobject import TextMobject
from animation import Animation from .animation import Animation
from transform import Transform from transform import Transform
from utils.bezier import inverse_interpolate from utils.bezier import inverse_interpolate
from utils.config_ops import digest_config from utils.config_ops import digest_config

View File

@ -1,9 +1,10 @@
import numpy as np import numpy as np
import operator as op import operator as op
from animation import Animation from .animation import Animation
from transform import Transform from transform import Transform
from mobject.mobject import Mobject1D, Mobject from mobject.mobject import Mobject
from mobject.point_cloud_mobject import Mobject1D
from topics.geometry import Line from topics.geometry import Line
from utils.paths import path_along_arc from utils.paths import path_along_arc

View File

@ -7,7 +7,7 @@ import warnings
from mobject.mobject import Mobject, Group from mobject.mobject import Mobject, Group
from mobject.vectorized_mobject import VMobject from mobject.vectorized_mobject import VMobject
from mobject.tex_mobject import TextMobject from mobject.tex_mobject import TextMobject
from animation import Animation from .animation import Animation
from transform import Transform from transform import Transform
from utils.bezier import interpolate from utils.bezier import interpolate
from utils.config_ops import digest_config from utils.config_ops import digest_config

View File

@ -6,8 +6,9 @@ import warnings
from constants import * from constants import *
from animation import Animation from .animation import Animation
from mobject.mobject import Mobject, Point, VMobject, Group from mobject.mobject import Mobject, Group
from mobject.vectorized_mobject import VMobject, VectorizedPoint
from topics.geometry import Dot, Circle from topics.geometry import Dot, Circle
from utils.config_ops import digest_config from utils.config_ops import digest_config
from utils.iterables import adjacent_pairs from utils.iterables import adjacent_pairs
@ -112,7 +113,7 @@ class GrowFromPoint(Transform):
def __init__(self, mobject, point, **kwargs): def __init__(self, mobject, point, **kwargs):
digest_config(self, kwargs) digest_config(self, kwargs)
target = mobject.copy() target = mobject.copy()
point_mob = Point(point) point_mob = VectorizedPoint(point)
if self.point_color: if self.point_color:
point_mob.set_color(self.point_color) point_mob.set_color(self.point_color)
mobject.replace(point_mob) mobject.replace(point_mob)

View File

@ -63,7 +63,6 @@ from utils.color import *
from utils.config_ops import * from utils.config_ops import *
from utils.images import * from utils.images import *
from utils.iterables import * from utils.iterables import *
from utils.linear_algebra import *
from utils.paths import * from utils.paths import *
from utils.rate_functions import * from utils.rate_functions import *
from utils.simple_functions import * from utils.simple_functions import *

View File

@ -14,7 +14,7 @@ import subprocess as sp
from constants import * from constants import *
from scene.scene import Scene from scene.scene import Scene
from camera.camera import Camera from camera.camera import Camera
from utils.sound import play_error_sound, play_finish_sound from utils.sounds import play_error_sound, play_finish_sound
HELP_MESSAGE = """ HELP_MESSAGE = """
Usage: Usage:

View File

@ -1,5 +0,0 @@
__all__ = [
"mobject",
"image_mobject",
"tex_mobject",
]

View File

@ -5,7 +5,7 @@ from PIL import Image
from random import random from random import random
from constants import * from constants import *
from mobject.mobject import Mobject from .mobject import Mobject
from point_cloud_mobject import PMobject from point_cloud_mobject import PMobject
from utils.bezier import interpolate from utils.bezier import interpolate
from utils.color import color_to_int_rgb from utils.color import color_to_int_rgb

View File

@ -1,5 +1,6 @@
import numpy as np import numpy as np
import operator as op import operator as op
import itertools as it
import os import os
import copy import copy
from PIL import Image from PIL import Image

View File

@ -1,7 +1,7 @@
from constants import * from constants import *
from mobject.mobject import Mobject from .mobject import Mobject
from utils.bezier import interpolate from utils.bezier import interpolate
from utils.color import color_to_rgb, color_to_rgba, rgba_to_color, from utils.color import color_to_rgb, color_to_rgba, rgba_to_color
from utils.color import color_gradient from utils.color import color_gradient
from utils.color import interpolate_color from utils.color import interpolate_color
from utils.config_ops import digest_config from utils.config_ops import digest_config

View File

@ -1,4 +1,6 @@
from xml.dom import minidom from xml.dom import minidom
import itertools as it
import re
import warnings import warnings
from constants import * from constants import *

View File

@ -7,6 +7,7 @@ from utils.config_ops import digest_config
import collections import collections
import sys import sys
import operator as op
TEX_MOB_SCALE_FACTOR = 0.05 TEX_MOB_SCALE_FACTOR = 0.05

View File

@ -1,8 +1,9 @@
import re import re
from colour import Color
from constants import * from constants import *
from mobject.mobject import Mobject from .mobject import Mobject
from utils.bezier import bezier, partial_bezier_points, from utils.bezier import bezier, partial_bezier_points
from utils.bezier import interpolate, get_smooth_handle_points, is_closed from utils.bezier import interpolate, get_smooth_handle_points, is_closed
from utils.color import color_to_rgb from utils.color import color_to_rgb
from utils.color import interpolate_color from utils.color import interpolate_color

View File

@ -2,7 +2,7 @@
import scipy import scipy
from big_ol_pile_of_manim_imports import * from big_ol_pile_of_manim_imports import *
from old_projects.fourier import *
FREQUENCY_COLOR = RED FREQUENCY_COLOR = RED
USE_ALMOST_FOURIER_BY_DEFAULT = False USE_ALMOST_FOURIER_BY_DEFAULT = False

View File

@ -1,7 +1,7 @@
from constants import * from constants import *
from camera import MovingCamera from camera.camera import MovingCamera
from scene.scene import Scene from .scene import Scene
from topics.geometry import ScreenRectangle from topics.geometry import ScreenRectangle
class MovingCameraScene(Scene): class MovingCameraScene(Scene):

View File

@ -1,6 +1,6 @@
import numpy as np import numpy as np
from scene.scene import Scene from .scene import Scene
from animation.transform import Transform from animation.transform import Transform
from mobject.mobject import Mobject from mobject.mobject import Mobject

View File

@ -10,13 +10,15 @@ import copy
from tqdm import tqdm as ProgressDisplay from tqdm import tqdm as ProgressDisplay
import inspect import inspect
import subprocess as sp import subprocess as sp
import random
from constants import * from constants import *
from camera.camera import Camera from camera.camera import Camera
from tk_scene import TkSceneRoot from tk_scene import TkSceneRoot
from mobject.mobject import Mobject, VMobject from mobject.mobject import Mobject
from animation import Animation from mobject.vectorized_mobject import VMobject
from animation.animation import Animation
from animation.transform import MoveToTarget from animation.transform import MoveToTarget
from animation.continual_animation import ContinualAnimation from animation.continual_animation import ContinualAnimation
from utils.iterables import list_update from utils.iterables import list_update

View File

@ -3,7 +3,7 @@ import cv2
import itertools as it import itertools as it
from tqdm import tqdm as show_progress from tqdm import tqdm as show_progress
from scene.scene import Scene from .scene import Scene
class SceneFromVideo(Scene): class SceneFromVideo(Scene):

View File

@ -1,10 +1,11 @@
import numpy as np import numpy as np
from scene.scene import Scene from .scene import Scene
from animation.transform import FadeIn from animation.transform import FadeIn
from mobject.mobject import Mobject from mobject.mobject import Mobject
from topics.geometry import Rectangle from topics.geometry import Rectangle
from camera import MovingCamera, Camera from camera.camera import Camera
from camera.camera import MovingCamera
from constants import * from constants import *

View File

@ -3,7 +3,7 @@ import itertools as it
from constants import * from constants import *
from scene.scene import Scene from scene.scene import Scene
from animation import Animation from animation.animation import Animation
from mobject.tex_mobject import TexMobject from mobject.tex_mobject import TexMobject
class RearrangeEquation(Scene): class RearrangeEquation(Scene):

View File

@ -1,6 +1,10 @@
import random
import numpy as np
import itertools as it
from constants import * from constants import *
from mobject.mobject import Mobject from mobject.mobject import Mobject, Group
from mobject.svg_mobject import SVGMobject from mobject.svg_mobject import SVGMobject
from mobject.vectorized_mobject import VMobject, VGroup from mobject.vectorized_mobject import VMobject, VGroup
from mobject.tex_mobject import TextMobject, TexMobject from mobject.tex_mobject import TextMobject, TexMobject
@ -8,8 +12,9 @@ from mobject.tex_mobject import TextMobject, TexMobject
from topics.objects import Bubble, ThoughtBubble, SpeechBubble from topics.objects import Bubble, ThoughtBubble, SpeechBubble
from topics.geometry import ScreenRectangle from topics.geometry import ScreenRectangle
from animation import Animation from animation.animation import Animation
from animation.transform import * from animation.transform import Transform, ApplyMethod, MoveToTarget
from animation.transform import ReplacementTransform, FadeOut, FadeIn
from animation.simple_animations import Write, ShowCreation from animation.simple_animations import Write, ShowCreation
from animation.compositions import AnimationGroup from animation.compositions import AnimationGroup
from scene.scene import Scene from scene.scene import Scene

View File

@ -2,7 +2,7 @@
from constants import * from constants import *
from scene.scene import Scene from scene.scene import Scene
from animation import Animation from animation.animation import Animation
from animation.simple_animations import Write, DrawBorderThenFill from animation.simple_animations import Write, DrawBorderThenFill
from animation.compositions import LaggedStart from animation.compositions import LaggedStart
from animation.transform import FadeIn, FadeOut, ApplyMethod from animation.transform import FadeIn, FadeOut, ApplyMethod

View File

@ -1,10 +1,10 @@
from constants import * from constants import *
from mobject import VGroup from mobject.vectorized_mobject import VGroup
from mobject.tex_mobject import TexMobject, TextMobject from mobject.tex_mobject import TexMobject, TextMobject
from number_line import NumberPlane from number_line import NumberPlane
from animation import Animation from animation.animation import Animation
from animation.transform import ApplyPointwiseFunction, MoveToTarget from animation.transform import ApplyPointwiseFunction, MoveToTarget
from animation.simple_animations import Homotopy, ShowCreation, \ from animation.simple_animations import Homotopy, ShowCreation, \
SmoothedVectorizedHomotopy SmoothedVectorizedHomotopy

View File

@ -1,5 +1,8 @@
from constants import * from constants import *
import itertools as it
import numpy as np
from mobject.mobject import Mobject from mobject.mobject import Mobject
from mobject.vectorized_mobject import VMobject, VGroup from mobject.vectorized_mobject import VMobject, VGroup
from utils.bezier import interpolate from utils.bezier import interpolate

View File

@ -1,6 +1,5 @@
from constants import * from constants import *
from mobject.mobject import Mobject1D
from mobject.vectorized_mobject import VMobject, VGroup from mobject.vectorized_mobject import VMobject, VGroup
from mobject.tex_mobject import TexMobject from mobject.tex_mobject import TexMobject
from topics.geometry import Line, Arrow from topics.geometry import Line, Arrow

View File

@ -1,7 +1,7 @@
from mobject.vectorized_mobject import VMobject, VGroup, VectorizedPoint from mobject.vectorized_mobject import VMobject, VGroup, VectorizedPoint
from mobject.tex_mobject import TexMobject from mobject.tex_mobject import TexMobject
from animation import Animation from animation.animation import Animation
from animation.continual_animation import ContinualAnimation from animation.continual_animation import ContinualAnimation
from topics.geometry import BackgroundRectangle from topics.geometry import BackgroundRectangle
from scene.scene import Scene from scene.scene import Scene

View File

@ -5,7 +5,7 @@ from mobject.vectorized_mobject import VGroup, VMobject, VectorizedPoint
from mobject.svg_mobject import SVGMobject from mobject.svg_mobject import SVGMobject
from mobject.tex_mobject import TextMobject, TexMobject, Brace from mobject.tex_mobject import TextMobject, TexMobject, Brace
from animation import Animation from animation.animation import Animation
from animation.simple_animations import Rotating from animation.simple_animations import Rotating
from animation.compositions import LaggedStart, AnimationGroup from animation.compositions import LaggedStart, AnimationGroup
from animation.transform import ApplyMethod, FadeIn, GrowFromCenter from animation.transform import ApplyMethod, FadeIn, GrowFromCenter

View File

@ -4,7 +4,7 @@ from scene.scene import Scene
from mobject.mobject import Mobject from mobject.mobject import Mobject
from mobject.vectorized_mobject import VMobject, VGroup from mobject.vectorized_mobject import VMobject, VGroup
from mobject.tex_mobject import TexMobject, TextMobject from mobject.tex_mobject import TexMobject, TextMobject
from animation import Animation from animation.animation import Animation
from animation.transform import ApplyPointwiseFunction, Transform, \ from animation.transform import ApplyPointwiseFunction, Transform, \
ApplyMethod, FadeOut, ApplyFunction ApplyMethod, FadeOut, ApplyFunction
from animation.simple_animations import ShowCreation, Write from animation.simple_animations import ShowCreation, Write

View File

@ -2,7 +2,7 @@ import numpy as np
from scipy import linalg from scipy import linalg
from utils.simple_functions import choose from utils.simple_functions import choose
CLOSED_THRESHOLD = 0.01 CLOSED_THRESHOLD = 0.0
def bezier(points): def bezier(points):
n = len(points) - 1 n = len(points) - 1
@ -123,4 +123,4 @@ def diag_to_matrix(l_and_u, diag):
return matrix return matrix
def is_closed(points): def is_closed(points):
return np.linalg.norm(points[0] - points[-1]) < CLOSED_THRESHOLDp return np.linalg.norm(points[0] - points[-1]) < CLOSED_THRESHOLD

View File

@ -1,5 +1,5 @@
from colour import Color from colour import Color
from numpy import np import numpy as np
import random import random
from utils.bezier import interpolate from utils.bezier import interpolate

View File

@ -1,7 +1,9 @@
import numpy as np import numpy as np
from utils.bezier import interpolate from utils.bezier import interpolate
from utils.space_ops import rotation_matrix from utils.space_ops import rotation_matrix
from constants import OUT
STRAIGHT_PATH_THRESHOLD = 0.01
def straight_path(start_points, end_points, alpha): def straight_path(start_points, end_points, alpha):
""" """

View File

@ -1,5 +1,6 @@
import numpy as np import numpy as np
from utils.simple_functions import sigmoid from utils.simple_functions import sigmoid
from utils.bezier import bezier
def smooth(t, inflection = 10.0): def smooth(t, inflection = 10.0):
error = sigmoid(-inflection / 2) error = sigmoid(-inflection / 2)