a
    èÝEbß$  ã                
   @   sŒ   d Z ddlmZ dgZG dd„ deƒZG dd„ deƒZedkrˆddlm	Z	m
Z
mZ edd	d
e	fde
fde	d fde	e
 fde
d fgƒ dS )zƒPen calculating 0th, 1st, and 2nd moments of area of glyph shapes.
This is low-level, autogenerated pen. Use statisticsPen instead.é    )ÚBasePenÚ
MomentsPenc                   @   s   e Zd ZdS )ÚOpenContourErrorN)Ú__name__Ú
__module__Ú__qualname__© r   r   úY/home/ja/django-apps/lartica_env/lib/python3.9/site-packages/fontTools/pens/momentsPen.pyr   	   s   r   c                   @   sF   e Zd Zddd„Zdd„ Zdd„ Zdd	„ Zd
d„ Zdd„ Zdd„ Z	dS )r   Nc                 C   s4   t  | |¡ d| _d| _d| _d| _d| _d| _d S )Nr   )r   Ú__init__ÚareaÚmomentXÚmomentYÚmomentXXÚmomentXYÚmomentYY)ÚselfZglyphsetr   r   r	   r
      s    zMomentsPen.__init__c                 C   s
   || _ d S ©N)Ú_MomentsPen__startPoint©r   Úp0r   r   r	   Ú_moveTo   s    zMomentsPen._moveToc                 C   s"   |   ¡ }|| jkr|  | j¡ d S r   )Ú_getCurrentPointr   Ú_lineTor   r   r   r	   Ú
_closePath   s    
zMomentsPen._closePathc                 C   s   |   ¡ }|| jkrtdƒ‚d S )Nz.Green theorem is not defined on open contours.)r   r   r   r   r   r   r	   Ú_endPath!   s
    
ÿzMomentsPen._endPathc                 C   sD  |   ¡ \}}|\}}|| }|| }|d }|d }	d| }
|| }|| }|d }|d }|d }|
| }|d }|d }|  j| d |d  |||  d  7  _|  j| | d || d  |	|
|  d  || d  7  _|  j| | d || d  || d  ||| ||   d  7  _|  j| | d |	| | d  || d  || d  |d d| |  d  7  _|  j| | d || d  || d  |	|d|  |  d  || ||  d  7  _|  j| | d || d  || d  || d  ||| ||  ||   d  7  _d S )Né   é   é   é   é   é   é   ©r   r   r   r   r   r   r   )r   Úp1Úx0Úy0Úx1Úy1Úr0Úr1Úr2Úr3Úr4Úr5Úr6Úr7Úr8Úr9Úr10Úr11Úr12r   r   r	   r   (   s*    ,@HX\zMomentsPen._lineToc           A      C   sN  |   ¡ \}}|\}}|\}}d| }	|	| }
d| }|| }d| }|| }d| }|d }d| }|d }d| }d| }|	| }|d }d| }|| }|	| | }d| }|| }|| }|d }d| }|d }|| } d|  }!|d }"|| }#d|" }$d|d  }%|d }&d| }'d| }(d| | })d| }*d| }+d	| },|d
| |  }-d| }.d	| }/d
| }0d| | }1|+| }2d| }3d
| }4d| }5d| }6|/| }7|| }8d| | |! }9d| }:d|d  };|d }<|d }=d| }>d	| }?d	| }@|  j|
d |d  |d  ||| |  d  ||	|  d  7  _|  j| | d || d  || |  d  ||| |  d  || d  ||
| ||  |  d  ||d|  |  d  7  _|  j|
||  d |d  || d  |!d  |"||  d  ||| ||  | | |# |$  d  |||  d  7  _|  j||| d|  | |- |.|   d |%| d  |&|' d  |&| d  |)||  d  |*| ||+  d  |d |(d|  |  d  || |/ ||/  ||  |,|  |0|  |1 |2 ||   d  ||%d|&  |) |,|   d  7  _|  j||| d|  d|"  |3|  |4 d	|8   d || |5|6  d  || d  |"|0|7 d|   d  |*| ||+  d  |3| | d  |4| d  || | ||#  | ||:  |"|.  |$|  |/|8  |9  d  ||| |(|  |1 |2 |7|   d  7  _|  j|
|| |5 |6  d ||4 d  | |' d  |"|
|- |>|   d  |;| d  |<| d	  |=|:|  d  |||> ||  |"|'  |"|+  |#|?  |4|  |; d|<  d|=  |@|   d  ||	 | ||?  |9 |@|   d  7  _d S )Nr   r   r   é
   é   r!   é   r   r   é   é<   é   i¤  é   éT   éi   éH  é#   r"   )Ar   r#   Úp2r$   r%   r&   r'   Úx2Úy2r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   Úr13Úr14Úr15Úr16Úr17Úr18Úr19Úr20Úr21Úr22Úr23Úr24Úr25Úr26Úr27Úr28Úr29Úr30Úr31Úr32Úr33Úr34Úr35Úr36Úr37Úr38Úr39Úr40Úr41Úr42Úr43Úr44Úr45Úr46Úr47Úr48Úr49Úr50Úr51Úr52Úr53Úr54Úr55r   r   r	   Ú_qCurveToOneA   s„    FŠ~øÿ zMomentsPen._qCurveToOnec           ˜      C   s   |   ¡ \}}|\}}|\}}	|\}
}d| }|| }d|	 }d| }||
 }d| }d| }d| }d| }d| }d|	 }|d }|| }d| }|
d }||	 }|| }||
 }d| }d| }|d } d|  }!|d }"d	| }#d| }$d| }%|| }&d|& }'|% | |' }(|%|	 })||
 }*d| }+||
 },d|  }-d
| }.||	 }/d|/ }0d
|
 }1|1| }2|+| |0 |2 }3|| }4|| }5|| }6|
| }7||
 }8|
|	 | }9|	d }:d|: };|;|
 }<|d }=|=|
 }>|d }?d|? }@|d }Ad	| }B|
|	 }Cd|C }Dd|	 }E|	| }Fd|F }Gd|: }Hd| }Id| }J|| }K|| }L||	 }Md|M }Nd
| }O|| }Pd|? }Qd
|= }R|d }S|
d }Td|
 }U|d }V|| }Wd| }X|X|
 }Yd|/ }Z||
 }[|| }\d|/ }]|2d|\  |] }^||	 }_|| }`|
| }a||
 | }b||
 | }c||	 }dd|d }ed| }f||f }gd| | }hd| }id| |
 }jd| d|  |  d|d  |j|	  }k|| }ld|l }m|| |	 }nd|, }o||
 | }pd| }qd| }rd|  }sd|	 }t| | }u|| }v|| }wd|: }xd|	 }y||	 }z||
 |	 }{|| }|d|? }}d|: }~d| }||: d|>  }€|| | }�|
| |	 }‚|=| }ƒ|?|
 }„|
| }…d|
 }†d|� |†|=  |;|  d|? |  }‡|| | }ˆ||	 | }‰|| |	 }Šd| }‹d	|C }Œd|A }�|:| }Ž|=| }�d|A }�|	d }‘|d }’d|= }“|d }”|d }•|~| |#|=  }–|=|	 }—|  j|d ||
 d  |d  ||	|  d  |||
  d  ||| d|  |  d  ||| |
  d  7  _|  j|d |d  |d  |||  d  |!|d|   d  |"||# d|  |  d  ||(|) |* |  d  |d| | |$  d  |d|& |+|	  |1|  |3 d|4  d|5  d|6  d|7  |8  d  |d| | |+|  d|,  |- |.  d  7  _|  j|'||  d |9d  |<d  |d|= |E|  |G |H ||   d  |>d  |@|d|
   d  |A||B |
  d  ||)| |D  d  |d|: d|A  |G |J|	  d|L  |N |O|  d|P  |Q |R  d  ||3d|7  d|C  |I|  |J|  |K  d  7  _|  j| |U |I |	  d  |!|(|1|  |8 |Z |[  d   |"d	|& d|4  d|5  d|6  |E|
  |^ d!|_  d|`  d|a   d   |||J ||#  d|  |X|  d|b  d"|c  |e |g  d   |d|S d|T  d#|W  |Y  d   d|S | d$  d|T |	 d%  |T| d&  d|V |E|O  d'  |Wd|	 d|   d   |d |E|J d(|  |  d)  |d*|p |q|  |q|  |r|	  |s|  |t|   d|u  d|v  d|w  | |.|  |X|  d|c  |h|  |j|  |k |m|  d+|n  |o|   d   |d,| | ||B  | |i  |-|
  d|S  d|T  d|V  d|W  |Y |h|
   d   7  _|  j|x | d- ||yd|   d-  ||= d  d| |F d%  |d|: d.|=   d-  |!d|z ||  d|:  d|=  d|F   d-  |"d|z d/||  |} |~ d0|A  d|F  d.|L  d|M  d|P  |R  d-  |@|rd|  d|   d-  |A|q|s |. |X |m |o  d-  || |? |€ d|�  d|‚  d|ƒ  d|„  d/|9  |]|   d-  |d|{ d|  d/|c  |e |g  d-  ||| |t|\  |||B  d	|ƒ  d|„  |†|A  |‡ d|ˆ  d1|‰  d|Š  |‹|/  |Œ|  |�|  d2|Ž  d|�  |�|  ||a  |#|a  |*|  d"|4 |	  d"|6 |  |H|
   d   |d|p d|u  d2|v  d|w  d|{  |…|  d	|  |$|  d1|b  d	|c  |k d|l |  d|n   d   7  _|  j|x |… d  |‘|U d   |’|
 d  |“|C d   d|” |%|1  d'  |•|%|+ |
  d)  |&|“d|:  d|	 |   d   ||z|‹ d|‘  d|’  |– d#|—  |:|J  d|? |	  d|? |   d   |@|D|K |Z |[  d   |A|Œ|%|  d|7  |^ d|_  d!|`   d   ||~|
 |€ d|ƒ  d"|9   d   ||t|? |y|L  d|z |  |}|  |~|  |�|  |�|	  d|‘  d|’  d|”  d3|•  |– d|—  d,|: |  d|A |  |L|f  |N|  |Q|  |R|   d   |d|‚ d|„  |‡ d|ˆ  d|‰  d+|Š  d|Ž  d|�  |0|  d|7 |  d|9  |< |?|i   d   7  _d S )4Nr   r5   r   r   é-   r:   é   é	   r;   r6   é   r7   é~   é?   iz  é   é*   éZ   é½   é   éü   é6   iv  r8   r>   r!   é8   é¨   r   r=   éŒ   i$  éÒ   r<   éF   éÜ   é,   r   i  é¥   i”  iîÿÿÿé¢   é‡   i0H  iì  é   i	  r9   éQ   i  r"   )˜r   r#   r@   Zp3r$   r%   r&   r'   rA   rB   Zx3Zy3r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   rV   rW   rX   rY   rZ   r[   r\   r]   r^   r_   r`   ra   rb   rc   rd   re   rf   rg   rh   ri   rj   rk   rl   rm   Zr56Zr57Zr58Zr59Zr60Zr61Zr62Zr63Zr64Zr65Zr66Zr67Zr68Zr69Zr70Zr71Zr72Zr73Zr74Zr75Zr76Zr77Zr78Zr79Zr80Zr81Zr82Zr83Zr84Zr85Zr86Zr87Zr88Zr89Zr90Zr91Zr92Zr93Zr94Zr95Zr96Zr97Zr98Zr99Zr100Zr101Zr102Zr103Zr104Zr105Zr106Zr107Zr108Zr109Zr110Zr111Zr112Zr113Zr114Zr115Zr116Zr117Zr118Zr119Zr120Zr121Zr122Zr123Zr124Zr125Zr126Zr127Zr128Zr129Zr130Zr131Zr132Zr133Zr134Zr135Zr136Zr137Zr138Zr139r   r   r	   Ú_curveToOne†   s8   $$vÿ ÿ ÿ ÿ \ÿ ÿ ´zMomentsPen._curveToOne)N)
r   r   r   r
   r   r   r   r   rn   rˆ   r   r   r   r	   r      s   

EÚ__main__)ÚxÚyÚprintGreenPen)r   é   r   r   r   r   r   r   N)Ú__doc__ZfontTools.pens.basePenr   Ú__all__ÚNotImplementedErrorr   r   r   ZfontTools.misc.symfontrŠ   r‹   rŒ   r   r   r   r	   Ú<module>   s      


ú