§
    7?ÄjK  ã                   óV   — d dl mZ d dlmZ d dlmZ e G d„ de¦  «        ¦   «         ZdS )é    )Ú	dataclass)ÚClip)ÚEffectc                   ó8   — e Zd ZU dZeed<   eed<   dedefd„ZdS )ÚSlideOutaÛ  Makes the clip goes away by one side of the screen.

    Only works when the clip is included in a CompositeVideoClip,
    and if the clip has the same size as the whole composition.

    Parameters
    ----------

    clip : moviepy.Clip.Clip
      A video clip.

    duration : float
      Time taken for the clip to be fully visible

    side : str
      Side of the screen where the clip goes. One of
      'top', 'bottom', 'left' or 'right'.

    Examples
    --------

    .. code:: python

        from moviepy import *

        clips = [... make a list of clips]
        slided_clips = [
            CompositeVideoClip([clip.with_effects([vfx.SlideOut(1, "left")])])
            for clip in clips
        ]
        final_clip = concatenate_videoclips(slided_clips, padding=-1)

        clip = ColorClip(
            color=(255, 0, 0), duration=1, size=(300, 300)
        ).with_fps(60)
        final_clip = CompositeVideoClip([clip.with_effects([vfx.SlideOut(1, "right")])])
    ÚdurationÚsideÚclipÚreturnc                 óÞ   ‡ ‡‡‡— |j         €t          d¦  «        ‚|j        \  ŠŠ|j         ‰ j         z
  Šˆ ˆˆfd„ˆ ˆˆfd„ˆˆ ˆfd„ˆˆ ˆfd„dœ}|                     |‰ j                 ¦  «        S )zApply the effect to the clip.NzAttribute 'duration' not setc                 óF   •— t          d‰| ‰z
   ‰j        z  z  ¦  «        dfS ©Nr   Úcenter©Úminr   ©ÚtÚselfÚtsÚws    €€€úJC:\Projects\Historical\venv\Lib\site-packages\moviepy/video/fx/SlideOut.pyú<lambda>z SlideOut.apply.<locals>.<lambda>:   s(   ø€ �s 1 a¨Q°©V¨9°t´}Ñ+DÑ&EÑFÔFÈÐQ€ ó    c                 óD   •— t          d‰| ‰z
  ‰j        z  z  ¦  «        dfS r   ©Úmaxr   r   s    €€€r   r   z SlideOut.apply.<locals>.<lambda>;   s&   ø€ ¥ A q¨Q°©V°t´}Ñ,DÑ'EÑ FÔ FÈÐQ€ r   c                 óF   •— dt          d‰| ‰z
   ‰j        z  z  ¦  «        fS ©Nr   r   r   ©r   Úhr   r   s    €€€r   r   z SlideOut.apply.<locals>.<lambda><   s(   ø€ ˜h­¨A¨q°a¸"±f°IÀÄÑ4MÑ/NÑ(OÔ(OÐP€ r   c                 óD   •— dt          d‰| ‰z
  ‰j        z  z  ¦  «        fS r   r   r   s    €€€r   r   z SlideOut.apply.<locals>.<lambda>=   s&   ø€  ­3¨q°!¸¸B¹À$Ä-Ñ7OÑ2PÑ+QÔ+QÐ R€ r   )ÚleftÚrightÚtopÚbottom)r   Ú
ValueErrorÚsizeÚwith_positionr	   )r   r
   Úpos_dictr    r   r   s   `  @@@r   ÚapplyzSlideOut.apply2   s§   øøøø€ àŒ=Ð ÝÐ;Ñ<Ô<Ð<àŒy‰ˆˆ1ØŒ]˜Tœ]Ñ*ˆàQÐQÐQÐQÐQÐQØQÐQÐQÐQÐQÐQØPÐPÐPÐPÐPÐPØRÐRÐRÐRÐRÐRð	
ð 
ˆð ×!Ò! (¨4¬9Ô"5Ñ6Ô6Ð6r   N)	Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚfloatÚ__annotations__Ústrr   r*   © r   r   r   r      sW   € € € € € € ð$ð $ðL €O€O�OØ
€I€I�Ið7˜$ð 7 4ð 7ð 7ð 7ð 7ð 7ð 7r   r   N)Údataclassesr   Úmoviepy.Clipr   Úmoviepy.Effectr   r   r2   r   r   ú<module>r6      s{   ðØ !Ð !Ð !Ð !Ð !Ð !à Ð Ð Ð Ð Ð Ø !Ð !Ð !Ð !Ð !Ð !ð ð87ð 87ð 87ð 87ð 87ˆvñ 87ô 87ñ „ð87ð 87ð 87r   