Ë
    ^ãj¤  ã                   ól   — d Z dZddlmZmZmZmZ d„ Zd„ Zd„ Z	d„ Z
d„ Zd	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zy)z'functions for 2D affine transformations)ÚnullTransformÚ	translateÚscaleÚrotateÚskewXÚskewYÚmmultÚinverseÚzTransformPointÚtransformPointÚtransformPointsÚzTransformPointsé    )ÚcosÚsinÚtanÚradiansc                   ó   — y)N)é   r   r   r   r   r   © r   ó    ú^/var/www/html/metafoliadorv2/venv/lib/python3.12/site-packages/reportlab/graphics/transform.pyr   r      s   € Ør   c                 ó   — dddd| |fS ©Nr   r   r   )ÚdxÚdys     r   r   r      s   € Øˆq�!�Q˜˜BÐÐr   c                 ó   — | dd|ddfS ©Nr   r   )ÚsxÚsys     r   r   r      s   € Ø��1�b˜!˜QÐÐr   c                 óV   — t        | «      }t        |«      }t        |«      }||| |ddfS r   )r   r   r   )ÚangleÚaÚsinaÚcosas       r   r   r      s2   € Ü�‹€AÜˆq‹6€DÜˆq‹6€DØ�$˜˜˜t Q¨Ð*Ð*r   c                 ó6   — ddt        t        | «      «      dddfS r   ©r   r   ©r!   s    r   r   r   "   s   € Øˆq”#”g˜e“nÓ% q¨!¨QÐ/Ð/r   c                 ó6   — dt        t        | «      «      ddddfS r   r&   r'   s    r   r   r   %   s   € ØŒs”7˜5“>Ó" A q¨!¨QÐ/Ð/r   c           	      ó&  — | d   |d   z  | d   |d   z  z   | d   |d   z  | d   |d   z  z   | d   |d   z  | d   |d   z  z   | d   |d   z  | d   |d   z  z   | d   |d   z  | d   |d   z  z   | d   z   | d   |d   z  | d   |d   z  z   | d   z   fS )zA postmultiplied by Br   é   r   é   é   é   r   )ÚAÚBs     r   r   r   (   sà   € ð ˆa‰D��1‘‰I˜˜!™˜Q˜q™T™	Ñ!Øˆa‰D��1‘‰I˜˜!™˜Q˜q™T™	Ñ!Øˆa‰D��1‘‰I˜˜!™˜Q˜q™T™	Ñ!Øˆa‰D��1‘‰I˜˜!™˜Q˜q™T™	Ñ!Øˆa‰D��1‘‰I˜˜!™˜Q˜q™T™	Ñ! A a¡DÑ(Øˆa‰D��1‘‰I˜˜!™˜Q˜q™T™	Ñ! A a¡DÑ(ð*ð *r   c                 óú   — t        | d   | d   z  | d   | d   z  z
  «      }| d   |z  | d    |z  | d    |z  | d   |z  g}t        ||d    | d   z  |d   | d   z  z
  |d    | d   z  |d   | d   z  z
  gz   «      S )zBFor A affine 2D represented as 6vec return 6vec version of A**(-1)r   r+   r*   r   r,   r-   )ÚfloatÚtuple)r.   ÚdetÚRs      r   r	   r	   6   s°   € ô ��!‘�Q�q‘T‘	˜A˜a™D  1¡™IÑ%Ó
&€CØ	
ˆ1‰ˆc‰�A�a‘D�5˜‘9˜q ™t˜e C™i¨¨1©¨c©Ð2€AÜ��Q�q‘T�E˜!˜A™$‘J˜q ™t A a¡D™yÑ(¨!¨A©$¨¨q°©t©°A°a±D¸¸1¹±IÑ)=Ð>Ñ>Ó?Ð?r   c                 ó^   — | d   |d   z  | d   |d   z  z   | d   |d   z  | d   |d   z  z   fS )zBApply the homogenous part of atransformation a to vector v --> A*vr   r*   r   r+   r   ©r.   Úvs     r   r
   r
   =   sG   € àˆa‰D��1‘‰I�a˜‘d˜1˜Q™4‘iÑ  !¡ Q q¡T¡	¨!¨A©$¨q°©t©)Ñ 3Ð4Ð4r   c                 óv   — | d   |d   z  | d   |d   z  z   | d   z   | d   |d   z  | d   |d   z  z   | d   z   fS )z*Apply transformation a to vector v --> A*vr   r*   r   r,   r+   r-   r   r6   s     r   r   r   A   sY   € àˆa‰D��1‘‰I�a˜‘d˜1˜Q™4‘iÑ  !¡Ñ$ Q q¡T¨!¨A©$¡Y¨q°©t°A°a±D©yÑ%8¸¸1¹Ñ%=Ð>Ð>r   c                 óx   — |D �cg c]  }t        | |«      ‘Œ }}t        |t        «      rt        |«      }|S c c}w ©N)r   Ú
isinstancer2   )ÚmatrixÚVr7   Úrs       r   r   r   E   s8   € Ø+,Ö- aŒ˜˜qÕ	!Ð-€AÐ-Ü�!”EÔ¤ a£˜AØ€Hùò 	.s   …7c                 ó2   — t        t        | fd„|«      «      S )Nc                 ó   — t        || «      S r:   )r
   )Úxr<   s     r   ú<lambda>z"zTransformPoints.<locals>.<lambda>K   s   € ¬O¸FÀ1Ó,E€ r   )ÚlistÚmap)r<   r=   s     r   r   r   J   s   € Ü” FÒEÀqÓIÓJÐJr   N)Ú__doc__Ú__all__Úmathr   r   r   r   r   r   r   r   r   r   r   r	   r
   r   r   r   r   r   r   ú<module>rH      sU   ðÙ -ð€÷ (Ó 'òò ò ò+ò0ò0ò*ò@ò5ò?òó
Kr   