Hacked By AnonymousFox

Current Path : /opt/cloudlinux/venv/lib64/python3.11/site-packages/svgwrite/__pycache__/
Upload File :
Current File : //opt/cloudlinux/venv/lib64/python3.11/site-packages/svgwrite/__pycache__/animate.cpython-311.pyc

�

�܋f���ddlmZddlmZddlmZmZGd�dee��ZGd�de��ZGd�d	e��Z	Gd
�de	��Z
Gd�d
e	��ZdS)�)�BaseElement)�XLink)�strlist�	is_stringc�T��eZdZdZdZd
�fd�	Z�fd�Zd
d�Zdd�Z		dd�Z	d	�Z
�xZS)
�Seta� The **set** element provides a simple means of just setting the value
    of an attribute for a specified duration. It supports all attribute types,
    including those that cannot reasonably be interpolated, such as string
    and boolean values. The **set** element is non-additive. The additive and
    accumulate attributes are not allowed, and will be ignored if specified.
    �setNc�z��tt|��jdi|��|�|�|��dSdS)z� Set constructor.

        :param href: target svg element, if **href** is not `None`; else
            the target SVG Element is the parent SVG Element.
        N�)�superr�__init__�set_href)�self�href�extra�	__class__s   ��a/builddir/build/BUILD/cloudlinux-venv-1.0.6/venv/lib/python3.11/site-packages/svgwrite/animate.pyr
zSet.__init__sN���	"��c�4���!�*�*�E�*�*�*����M�M�$��������c�z��|���tt|�����S�N)�	update_idrr�get_xml)rrs �rrzSet.get_xml!s/����������S�$���'�'�)�)�)rc�"�||d<|�||d<dSdS)zY
        Set animation attributes :ref:`attributeName` and :ref:`attributeType`.
        �
attributeNameN�
attributeTyper)rrrs   r�
set_targetzSet.set_target%s,��!.��_���$�$1�D��!�!�!�%�$rc�B�|�||d<|�||d<|�||d<|�||d<dSdS)zs
        Set animation attributes :ref:`onbegin`, :ref:`onend`, :ref:`onrepeat`
        and :ref:`onload`.
        N�onbegin�onend�onrepeat�onloadr)rrrr r!s     r�	set_eventz
Set.set_event.sM��
��%�D��O���!�D��M���'�D�����#�D��N�N�N��rc	�z�|�||d<|�||d<|�||d<|�||d<|�||d<|�||d<|�||d<|�||d	<dSdS)
z�
        Set animation attributes :ref:`begin`, :ref:`end`, :ref:`dur`,
        :ref:`min`, :ref:`max`, :ref:`restart`, :ref:`repeatCount` and
        :ref:`repeatDur`.
        N�begin�end�dur�min�max�restart�repeatCount�	repeatDurr)	rr$r%r&r'r(r)r*r+s	         r�
set_timingzSet.set_timing<s�����!�D��M��?��D��K��?��D��K��?��D��K��?��D��K���%�D��O��"�"-�D���� � )�D�����!� rc��d|d<dS)zK Freeze the animation effect. (see also :ref:`fill <animateFill>`)
        �freeze�fillNr)rs rr.z
Set.freezeTs�� ��V���rr�NNNN)NNNNNNNN)�__name__�
__module__�__qualname__�__doc__�elementnamer
rrr"r,r.�
__classcell__�rs@rrrs�����������K� � � � � � �*�*�*�*�*�2�2�2�2�$�$�$�$�HL�=A�*�*�*�*�0 � � � � � � rrc�0��eZdZdZdZd�fd�	Zdd�Z�xZS)�
AnimateMotionz` The **animateMotion** element causes a referenced element to move
    along a motion path.
    �
animateMotionNc�^��tt|��jdd|i|��|�||d<dSdS)z�
        :param path: the motion path
        :param href: target svg element, if **href** is not `None`; else
          the target SVG Element is the parent SVG Element.
        rN�pathr)rr9r
)rr<rrrs    �rr
zAnimateMotion.__init___sH���	,��m�T�"�"�+�?�?��?��?�?�?����D��L�L�L��rc�B�|�||d<|�||d<|�||d<|�||d<dSdS)zX
        Set animation attributes `path`, `calcMode`, `keyPoints` and `rotate`.
        Nr<�calcMode�	keyPoints�rotater)rr<r>r?r@s     r�	set_valuezAnimateMotion.set_valueisN�����D��L���'�D���� � )�D�����#�D��N�N�N��r)NNr0�r1r2r3r4r5r
rAr6r7s@rr9r9Ysb���������"�K� � � � � � �$�$�$�$�$�$�$�$rr9c�4��eZdZdZdZd�fd�	Z		dd�Z�xZS)�Animatezu The **animate** element allows scalar attributes and properties to be
    assigned different values over time .
    �animateNc���tt|��jdd|i|��|�|�|��|�|�|��dSdS)a0
        :param attributeName: name of the SVG Attribute to animate
        :param values: interpolation values, `string` as `<semicolon-list>` or a python `list`
        :param href: target svg element, if **href** is not `None`; else
          the target SVG Element is the parent SVG Element.
        rNr)rrDr
rAr)rr�valuesrrrs     �rr
zAnimate.__init__}sk���	&��g�t���%�9�9�4�9�5�9�9�9����N�N�6�"�"�"��$��O�O�M�*�*�*�*�*�%�$rc��|�$t|��st|d��}||d<|�||d<|�||d<|�||d<|�||d<|�||d<|�||d	<dSdS)
z�
        Set animation attributes :ref:`values`, :ref:`calcMode`, :ref:`keyTimes`,
        :ref:`keySplines`, :ref:`from`, :ref:`to` and :ref:`by`.
        N�;rGr>�keyTimes�
keySplines�from�to�by)rr)rrGr>rJrK�from_rMrNs        rrAzAnimate.set_value�s������V�$�$�
.� ���-�-��#�D��N���'�D�����'�D����!�!+�D����� �D��L�
�>��D��J�
�>��D��J�J�J��>r)NNN)NNNNNNrBr7s@rrDrDwsl����������K�+�+�+�+�+�+�JN�*.��������rrDc��eZdZdZdZdS)�AnimateColorzR The **animateColor** element specifies a color transformation over
    time.
    �animateColorN)r1r2r3r4r5rrrrQrQ�s��������!�K�K�KrrQc�(��eZdZdZdZd�fd�	Z�xZS)�AnimateTransformz� The **animateTransform** element animates a transformation attribute
    on a target element, thereby allowing animations to control translation,
    scaling, rotation and/or skewing.
    �animateTransformNc�T��tt|��j|fi|��||d<dS)z�
        :param element: target svg element, if element is not `None`; else
          the target svg element is the parent svg element.
        :param string transform: ``'translate | scale | rotate | skewX | skewY'``
        �typeN)rrTr
)r�	transform�elementrrs    �rr
zAnimateTransform.__init__�s8���	/����%�%�.�w�@�@�%�@�@�@� ��V���rr)r1r2r3r4r5r
r6r7s@rrTrT�sN���������%�K�!�!�!�!�!�!�!�!�!�!rrTN)�
svgwrite.baser�svgwrite.mixinsr�svgwrite.utilsrrrr9rDrQrTrrr�<module>r]s+��&�%�%�%�%�%�!�!�!�!�!�!�-�-�-�-�-�-�-�-�I �I �I �I �I �+�u�I �I �I �V$�$�$�$�$�C�$�$�$�<)�)�)�)�)�c�)�)�)�X!�!�!�!�!�7�!�!�!�
!�
!�
!�
!�
!�w�
!�
!�
!�
!�
!r

Hacked By AnonymousFox1.0, Coded By AnonymousFox