mirror of
https://github.com/3b1b/manim.git
synced 2025-04-13 09:47:07 +00:00
50 lines
1.1 KiB
Python
50 lines
1.1 KiB
Python
from manimlib.constants import *
|
|
from manimlib.mobject.geometry import Rectangle
|
|
from manimlib.utils.config_ops import digest_config
|
|
|
|
|
|
class ScreenRectangle(Rectangle):
|
|
CONFIG = {
|
|
"aspect_ratio": 16.0 / 9.0,
|
|
"height": 4
|
|
}
|
|
|
|
def __init__(self, **kwargs):
|
|
Rectangle.__init__(self, **kwargs)
|
|
self.set_width(
|
|
self.aspect_ratio * self.get_height(),
|
|
stretch=True
|
|
)
|
|
|
|
|
|
class FullScreenRectangle(ScreenRectangle):
|
|
CONFIG = {
|
|
"height": FRAME_HEIGHT,
|
|
"fill_color": GREY_E,
|
|
"fill_opacity": 1,
|
|
"stroke_width": 0,
|
|
}
|
|
|
|
|
|
class FullScreenFadeRectangle(FullScreenRectangle):
|
|
CONFIG = {
|
|
"stroke_width": 0,
|
|
"fill_color": BLACK,
|
|
"fill_opacity": 0.7,
|
|
}
|
|
|
|
|
|
class PictureInPictureFrame(Rectangle):
|
|
CONFIG = {
|
|
"height": 3,
|
|
"aspect_ratio": 16.0 / 9.0
|
|
}
|
|
|
|
def __init__(self, **kwargs):
|
|
digest_config(self, kwargs)
|
|
Rectangle.__init__(
|
|
self,
|
|
width=self.aspect_ratio * self.height,
|
|
height=self.height,
|
|
**kwargs
|
|
)
|