chore: only import some classes when type checking

This commit is contained in:
TonyCrane
2022-02-14 21:34:56 +08:00
parent 62cab9feaf
commit 66caf0c1ad
4 changed files with 15 additions and 4 deletions

View File

@ -12,7 +12,6 @@ from colour import Color
from manimlib.constants import * from manimlib.constants import *
from manimlib.mobject.mobject import Mobject from manimlib.mobject.mobject import Mobject
from manimlib.mobject.mobject import Point from manimlib.mobject.mobject import Point
from manimlib.shader_wrapper import ShaderWrapper
from manimlib.utils.config_ops import digest_config from manimlib.utils.config_ops import digest_config
from manimlib.utils.simple_functions import fdiv from manimlib.utils.simple_functions import fdiv
from manimlib.utils.simple_functions import clip from manimlib.utils.simple_functions import clip
@ -22,6 +21,10 @@ from manimlib.utils.space_ops import rotation_matrix_transpose
from manimlib.utils.space_ops import quaternion_from_angle_axis from manimlib.utils.space_ops import quaternion_from_angle_axis
from manimlib.utils.space_ops import quaternion_mult from manimlib.utils.space_ops import quaternion_mult
from typing import TYPE_CHECKING
if TYPE_CHECKING:
from manimlib.shader_wrapper import ShaderWrapper
class CameraFrame(Mobject): class CameraFrame(Mobject):
CONFIG = { CONFIG = {

View File

@ -7,7 +7,6 @@ import numpy as np
import numpy.typing as npt import numpy.typing as npt
from manimlib.constants import * from manimlib.constants import *
from manimlib.camera.camera import Camera
from manimlib.mobject.mobject import Mobject from manimlib.mobject.mobject import Mobject
from manimlib.utils.bezier import integer_interpolate from manimlib.utils.bezier import integer_interpolate
from manimlib.utils.bezier import interpolate from manimlib.utils.bezier import interpolate
@ -15,6 +14,10 @@ from manimlib.utils.images import get_full_raster_image_path
from manimlib.utils.iterables import listify from manimlib.utils.iterables import listify
from manimlib.utils.space_ops import normalize_along_axis from manimlib.utils.space_ops import normalize_along_axis
from typing import TYPE_CHECKING
if TYPE_CHECKING:
from manimlib.camera.camera import Camera
class Surface(Mobject): class Surface(Mobject):
CONFIG = { CONFIG = {

View File

@ -5,11 +5,14 @@ import numpy as np
from typing import Callable from typing import Callable
from manimlib.constants import BLACK from manimlib.constants import BLACK
from manimlib.mobject.mobject import Mobject
from manimlib.mobject.numbers import Integer from manimlib.mobject.numbers import Integer
from manimlib.mobject.types.vectorized_mobject import VGroup from manimlib.mobject.types.vectorized_mobject import VGroup
from manimlib.logger import log from manimlib.logger import log
from typing import TYPE_CHECKING
if TYPE_CHECKING:
from manimlib.mobject.mobject import Mobject
def print_family(mobject: Mobject, n_tabs: int = 0) -> None: def print_family(mobject: Mobject, n_tabs: int = 0) -> None:
"""For debugging purposes""" """For debugging purposes"""

View File

@ -3,7 +3,9 @@ from __future__ import annotations
import itertools as it import itertools as it
from typing import Iterable from typing import Iterable
from manimlib.mobject.mobject import Mobject from typing import TYPE_CHECKING
if TYPE_CHECKING:
from manimlib.mobject.mobject import Mobject
def extract_mobject_family_members( def extract_mobject_family_members(