a
    —Æàgx  ã                   @   sn   d Z ddlT ddlmZ ddlZddlZdZdZdd	„ Zd
d„ Z	ddd„Z
dd„ Zedkrje d¡ eƒ  dS )z*Benchmark the qu2cu algorithm performance.é   )Ú*é    )Úcurve_to_quadraticNg      à?é   c                 C   sR   dd„ t dd|   ƒD ƒ}g }t | ƒD ]&}| t||d |d d … ƒ¡ q&|S )Nc                 S   s"   g | ]}t d d„ tdƒD ƒƒ‘qS )c                 s   s   | ]}t t d d¡ƒV  qdS )r   i   N)ÚfloatÚrandomÚrandint)Ú.0Zcoord© r
   úR/var/www/sistema_ama/venv/lib/python3.9/site-packages/fontTools/qu2cu/benchmark.pyÚ	<genexpr>   ó    z-generate_curves.<locals>.<listcomp>.<genexpr>é   )ÚtupleÚrange)r	   Zpointr
   r
   r   Ú
<listcomp>   s   ÿz#generate_curves.<locals>.<listcomp>r   é   é   )r   Úappendr   )ÚnZpointsÚcurvesÚir
   r
   r   Úgenerate_curves   s    þ$r   c                  C   s   t tƒ} dd„ | D ƒ}|tfS )Nc                 S   s   g | ]}t |tƒ‘qS r
   )r   ÚMAX_ERR)r	   Zcurver
   r
   r   r      r   z-setup_quadratic_to_curves.<locals>.<listcomp>)r   Ú
NUM_CURVESr   )r   Z
quadraticsr
   r
   r   Úsetup_quadratic_to_curves   s    r   Ú é   c                 C   sx   d| }|r.t d||f dd� |d| 7 }nt d| dd� dd„ }tj|||ƒ||d	�}t d
t|ƒd |  ƒ d S )NZsetup_z%s with %s:r   )ÚendÚ_z%s:c                    s&   t ƒ ˆ  ‰ t ƒ ˆ ‰‡ ‡fdd„}|S )Nc                      s
   ˆ ˆƒ Ž S )Nr
   r
   ©ÚfunctionÚ
setup_funcr
   r   Úwrapped)   s    z/run_benchmark.<locals>.wrapper.<locals>.wrapped)Úglobals)r!   r"   r#   r
   r    r   Úwrapper%   s    

zrun_benchmark.<locals>.wrapper)ÚrepeatÚnumberz	%5.1fusg    €„.A)ÚprintÚtimeitr&   Úmin)Úmoduler!   Zsetup_suffixr&   r'   r"   r%   Úresultsr
   r
   r   Úrun_benchmark   s    	r-   c                   C   s   t ddƒ d S )NÚqu2cuZquadratic_to_curves)r-   r
   r
   r
   r   Úmain2   s    r/   Ú__main__)r   r   r   )Ú__doc__r.   ZfontTools.cu2qur   r   r)   r   r   r   r   r-   r/   Ú__name__Úseedr
   r
   r
   r   Ú<module>   s   

