
    g                         d Z ddl ddlZddlZdZd Zd Zd Zdd	Zd
 Z	e
dk(  r ej                  d        e	        yy)z*Benchmark the cu2qu algorithm performance.   )*    Ng?c            	      p    t        d      D  cg c]  } t        d t        d      D               c} S c c} w )N   c              3   Z   K   | ]#  }t        t        j                  d d             % yw)r   i   N)floatrandomrandint).0coords     q/home/viktor/gitlab-persoonlijk/factuur-applicatie/venv/lib/python3.12/site-packages/fontTools/cu2qu/benchmark.py	<genexpr>z!generate_curve.<locals>.<genexpr>   s      CeFNN1d+,Cs   )+   )rangetuple)points    r   generate_curver   
   s7     1X 	C%(CC  s   "3c                  "    t               t        fS N)r   MAX_ERR     r   setup_curve_to_quadraticr      s    W$$r   c                  f    d} t        |       D cg c]  }t                c}t        g| z  fS c c}w )N   )r   r   r   )
num_curvescurves     r   setup_curves_to_quadraticr      s/    J+0+<=%^=y:?UVV=s   .c                     d|z   }|rt        |d|dd       |d|z   z  }nt        d|z  d       d }t        j                   |||      ||	      }t        d
t        |      dz  |z  z         y )Nsetup_z with : )end_z%s:c                 J     t                    t                   fd}|S )Nc                                 S r   r   )function
setup_funcs   r   wrappedz/run_benchmark.<locals>.wrapper.<locals>.wrapped&   s    Z\**r   )globals)r'   r(   r)   s   `` r   wrapperzrun_benchmark.<locals>.wrapper"   s'    9X&Yz*
	+ r   )repeatnumberz	%5.1fusg    .A)printtimeitr,   min)moduler'   setup_suffixr,   r-   r(   r+   resultss           r   run_benchmarkr4      sx    H$Jx6B?cL((
ehB' mmGHj9&QWXG	+W	1F:
;<r   c                  4    t        dd       t        dd       y )Ncu2qucurve_to_quadraticcurves_to_quadratic)r4   r   r   r   mainr9   /   s    '/0'01r   __main__)r"      i  )__doc__r6   r	   r/   r   r   r   r   r4   r9   __name__seedr   r   r   <module>r?      sQ    0   
%W
=*2
 zFKKNF r   