;ò
Ó
À>c           @   s4  d  k  Z  d  k Z e  Z d k l Z d „  Z d „  Z d „  Z d f  d „  ƒ  YZ d d „ Z d	 „  Z	 d
 „  Z
 d „  Z h  d d <d d <d d <Z d „  Z d f  d „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ e a d d d d „ Z d „  Z d e f d „  ƒ  YZ d e f d „  ƒ  YZ d  S(    N(   s   tex2libplotc         C   s   | |  | | | j Sd  S(   N(   s   sides   ps   dims   boundary(   s   ps   dims   boundarys   side(    (    s   ../biggles/libplot/renderer.pys	   sh_inside   s    c         C   s’   | } d } | | |  | j o" | |  | | | |  | } n d d g } | | | <|  | | | | |  | | | <| d | d f Sd  S(   Nf0.0i    i   (   s   dims   mids   gs   ps   ss   boundarys   q(   s   ss   ps   dims   boundarys   gs   mids   q(    (    s   ../biggles/libplot/renderer.pys   sh_intersection    s    "
"c   
      C   s»   g  }	 |  d } t | | | | ƒ } x‹ |  D]ƒ } t | | | | ƒ } | o | p | o | } | o  |	 i t | | | | ƒ ƒ n | o |	 i | ƒ n | } | } q, W|	 Sd  S(   Niÿÿÿÿ(   s   outs   polygons   ss	   sh_insides   dims   boundarys   sides   s_insides   ps   p_insides   crossess   appends   sh_intersection(
   s   polygons   dims   boundarys   sides   crossess   s_insides   ps   ss   p_insides   out(    (    s   ../biggles/libplot/renderer.pys   sutherland_hodgman*   s    
  
s   RendererStatec           B   s8   t  Z d „  Z d „  Z e d „ Z d „  Z d „  Z RS(   Nc         C   s   h  |  _ g  |  _ d  S(   N(   s   selfs   currents   saved(   s   self(    (    s   ../biggles/libplot/renderer.pys   __init__@   s    	c         C   s   | |  i | <d  S(   N(   s   values   selfs   currents   name(   s   selfs   names   value(    (    s   ../biggles/libplot/renderer.pys   setD   s    c         C   ss   |  i i | ƒ o |  i | Sn xF t t |  i ƒ ƒ D]/ } |  i | } | i | ƒ o | | Sq8 q8 W| Sd  S(   N(
   s   selfs   currents   has_keys   names   ranges   lens   saveds   is   ds   notfound(   s   selfs   names   notfounds   is   d(    (    s   ../biggles/libplot/renderer.pys   getG   s     c         C   s#   |  i i d |  i ƒ h  |  _ d  S(   Ni    (   s   selfs   saveds   inserts   current(   s   self(    (    s   ../biggles/libplot/renderer.pys   saveP   s    c         C   s   |  i i d ƒ |  _ d  S(   Ni    (   s   selfs   saveds   pops   current(   s   self(    (    s   ../biggles/libplot/renderer.pys   restoreT   s    (   s   __name__s
   __module__s   __init__s   sets   Nones   gets   saves   restore(    (    (    s   ../biggles/libplot/renderer.pys   RendererState>   s
   				i   c         C   sW   t  | ƒ d } | |  d ?d @} | |  d ?d @} | |  d ?d @} | | | f Sd  S(   Niÿ   i   i   i    (   s   floats   scales   ss
   hextriplets   rs   gs   b(   s
   hextriplets   scales   gs   ss   rs   b(    (    s   ../biggles/libplot/renderer.pys	   _hexcolorW   s
    c         C   s\   t  | ƒ t  d ƒ j o t i |  | ƒ n, t | ƒ \ } } } t i	 |  | | | ƒ d  S(   Ns    (
   s   types   colors   raws   set_colorname_fgs   pls	   _hexcolors   rs   gs   bs   set_color_fg(   s   pls   colors   bs   gs   r(    (    s   ../biggles/libplot/renderer.pys
   _set_color^   s    c         C   s\   t  | ƒ t  d ƒ j o t i |  | ƒ n, t | ƒ \ } } } t i	 |  | | | ƒ d  S(   Ns    (
   s   types   colors   raws   set_colorname_pens   pls	   _hexcolors   rs   gs   bs   set_color_pen(   s   pls   colors   bs   gs   r(    (    s   ../biggles/libplot/renderer.pys   _set_pen_colore   s    c         C   s\   t  | ƒ t  d ƒ j o t i |  | ƒ n, t | ƒ \ } } } t i	 |  | | | ƒ d  S(   Ns    (
   s   types   colors   raws   set_colorname_fills   pls	   _hexcolors   rs   gs   bs   set_color_fill(   s   pls   colors   bs   gs   r(    (    s   ../biggles/libplot/renderer.pys   _set_fill_colorl   s    s   dots   dotteds   dashs   shortdasheds   dashedc         C   s&   t  i | | ƒ } t i |  | ƒ d  S(   N(   s   _pl_line_types   gets   types   pl_types   raws   set_line_types   pl(   s   pls   types   pl_type(    (    s   ../biggles/libplot/renderer.pys   _set_line_typey   s    s   LibplotRendererc           B   s  t  Z d e e d „ Z d „  Z d „  Z d „  Z d „  Z d „  Z h  d e	 <d	 e
 <d
 e <d e <d e i <d e i <d e i <d e i <d e i <d e i <Z d „  Z e d „ Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d d „ Z d „  Z  h  d d  <d! d" <d# d$ <d% d& <d' d( <d) d* <d+ d, <d- d. <d/ d0 <d1 d2 <d3 d4 <d5 d6 <d7 d8 <d9 d: <d; d< <d= d> <d? d@ <dA dB <dC dD <dE dF <dG dH <dI dJ <dK dL <dM dN <dO dP <dQ dR <dS dT <dU dV <dW dX <dY dZ <d[ d\ <d] d^ <Z! d_ „  Z" d` „  Z# da „  Z$ db „  Z% dc „  Z& dd „  Z' de „  Z( h  df e) dg ƒ <dh e) di ƒ <dj e) dk ƒ <dl e) dm ƒ <dn e) do ƒ <dp e) dq ƒ <Z* dr „  Z+ ds „  Z, dt „  Z- RS(u   Ns   Xc         C   s.   | |  _ | |  _ t i | | | ƒ |  _
 d  S(   N(   s   lls   selfs	   lowerlefts   urs
   upperrights   raws   news   types
   parameterss   files   pl(   s   selfs   lls   urs   types
   parameterss   file(    (    s   ../biggles/libplot/renderer.pys   __init__   s    		c         C   sT   t  ƒ  |  _ t i |  i ƒ t t i |  i f |  i |  i	 ƒ t i
 |  i ƒ d  S(   N(   s   RendererStates   selfs   states   raws
   begin_pages   pls   applys   spaces	   lowerlefts
   upperrights   clear(   s   self(    (    s   ../biggles/libplot/renderer.pys   open„   s
    	c         C   s   t  i |  i ƒ d  S(   N(   s   raws   clears   selfs   pl(   s   self(    (    s   ../biggles/libplot/renderer.pys   clear‹   s    c         C   s(   |  i t j	 o t i |  i ƒ n d  S(   N(   s   selfs   pls   Nones   raws   end_page(   s   self(    (    s   ../biggles/libplot/renderer.pys   closeŽ   s    c         C   s1   |  i t j	 o t i |  i ƒ t |  _ n d  S(   N(   s   selfs   pls   Nones   raws   delete(   s   self(    (    s   ../biggles/libplot/renderer.pys   delete’   s    c         C   s   |  i ƒ  d  S(   N(   s   selfs   delete(   s   self(    (    s   ../biggles/libplot/renderer.pys   __del__—   s    s   colors	   linecolors	   fillcolors   linetypes	   linewidths   filltypes   fillmodes   fontfaces   fontsizes	   textanglec         C   sQ   |  i i | | ƒ t i i | ƒ o' t i | } t	 | |  i
 | f ƒ n d  S(   N(   s   selfs   states   sets   keys   values   LibplotRenderers   _LibplotRenderer__pl_style_funcs   has_keys   methods   applys   pl(   s   selfs   keys   values   method(    (    s   ../biggles/libplot/renderer.pys   set©   s    c         C   s   |  i i | | ƒ Sd  S(   N(   s   selfs   states   gets	   parameters   notfound(   s   selfs	   parameters   notfound(    (    s   ../biggles/libplot/renderer.pys   get¯   s    c         C   s!   |  i i ƒ  t i |  i ƒ d  S(   N(   s   selfs   states   saves   raws   gsaves   pl(   s   self(    (    s   ../biggles/libplot/renderer.pys
   save_state²   s    c         C   s!   |  i i ƒ  t i |  i ƒ d  S(   N(   s   selfs   states   restores   raws   grestores   pl(   s   self(    (    s   ../biggles/libplot/renderer.pys   restore_state¶   s    c         C   s"   t  i |  i | d | d ƒ d  S(   Ni    i   (   s   raws   moves   selfs   pls   p(   s   selfs   p(    (    s   ../biggles/libplot/renderer.pys   move¼   s    c         C   s"   t  i |  i | d | d ƒ d  S(   Ni    i   (   s   raws   linetos   selfs   pls   p(   s   selfs   p(    (    s   ../biggles/libplot/renderer.pys   lineto¿   s    c         C   s"   t  i |  i | d | d ƒ d  S(   Ni    i   (   s   raws	   linetorels   selfs   pls   p(   s   selfs   p(    (    s   ../biggles/libplot/renderer.pys	   linetorelÂ   s    c         C   s˜   |  i d ƒ } | t j o0 t i |  i | d | d | d | d ƒ nI t i	 |  i | d | d | d | d | d | d | d | d ƒ	 d  S(   Ns   cliprecti    i   i   i   (
   s   selfs   gets   crs   Nones   raws   lines   pls   ps   qs   clipped_line(   s   selfs   ps   qs   cr(    (    s   ../biggles/libplot/renderer.pys   lineÅ   s    0c         C   s0   t  i |  i | d | d | d | d ƒ d  S(   Ni    i   (   s   raws   rects   selfs   pls   ps   q(   s   selfs   ps   q(    (    s   ../biggles/libplot/renderer.pys   rectÎ   s    c         C   s%   t  i |  i | d | d | ƒ d  S(   Ni    i   (   s   raws   circles   selfs   pls   ps   r(   s   selfs   ps   r(    (    s   ../biggles/libplot/renderer.pys   circleÑ   s    f0.0c         C   s+   t  i |  i | d | d | | | ƒ d  S(   Ni    i   (   s   raws   ellipses   selfs   pls   ps   rxs   rys   angle(   s   selfs   ps   rxs   rys   angle(    (    s   ../biggles/libplot/renderer.pys   ellipseÔ   s    c      	   C   s>   t  i |  i | d | d | d | d | d | d ƒ d  S(   Ni    i   (   s   raws   arcs   selfs   pls   cs   ps   q(   s   selfs   cs   ps   q(    (    s   ../biggles/libplot/renderer.pys   arc×   s    s   nonei    s   doti   s   plusi   s   asteriski   s   circlei   s   crossi   s   squarei   s   trianglei   s   diamondi   s   stari	   s   inverted trianglei
   s	   starbursti   s
   fancy plusi   s   fancy crossi   s   fancy squarei   s   fancy diamondi   s   filled circlei   s   filled squarei   s   filled trianglei   s   filled diamondi   s   filled inverted trianglei   s   filled fancy squarei   s   filled fancy diamondi   s   half filled circlei   s   half filled squarei   s   half filled trianglei   s   half filled diamondi   s   half filled inverted trianglei   s   half filled fancy squarei   s   half filled fancy diamondi   s   octagoni   s   filled octagoni   c         C   s"   |  i | d g | d g ƒ d  S(   Ni    i   (   s   selfs   symbolss   p(   s   selfs   p(    (    s   ../biggles/libplot/renderer.pys   symbolý   s    c   	      C   sç   d } d } |  i i d | ƒ } |  i i d | ƒ } t | ƒ d j o t | d ƒ } n t
 i i | ƒ } |  i d ƒ } | t j o  t i |  i | | | | ƒ n9 t i |  i | | | | | d | d | d | d	 ƒ	 d  S(
   Ns   squaref0.01s
   symboltypes
   symbolsizei   i    s   cliprecti   i   (   s   DEFAULT_SYMBOL_TYPEs   DEFAULT_SYMBOL_SIZEs   selfs   states   gets   type_strs   sizes   lens   ords   types   LibplotRenderers    _LibplotRenderer__pl_symbol_types   crs   Nones   raws   symbolss   pls   xs   ys   clipped_symbols(	   s   selfs   xs   ys   DEFAULT_SYMBOL_SIZEs   type_strs   crs   DEFAULT_SYMBOL_TYPEs   types   size(    (    s   ../biggles/libplot/renderer.pys   symbols   s     c   
      C   sê   d } d } |  i i d | ƒ } |  i i d | ƒ }	 t | ƒ d j o t | d ƒ } n t
 i i | ƒ } |  i d ƒ } | t j o  t i |  i | | | |	 ƒ n< t i |  i | | | | |	 | d | d | d | d	 ƒ
 d  S(
   Ns   squaref0.01s
   symboltypes
   symbolsizei   i    s   cliprecti   i   (   s   DEFAULT_SYMBOL_TYPEs   DEFAULT_SYMBOL_SIZEs   selfs   states   gets   type_strs   sizes   lens   ords   types   LibplotRenderers    _LibplotRenderer__pl_symbol_types   crs   Nones   raws   colored_symbolss   pls   xs   ys   clipped_colored_symbolss   c(
   s   selfs   xs   ys   cs   DEFAULT_SYMBOL_SIZEs   type_strs   crs   DEFAULT_SYMBOL_TYPEs   types   size(    (    s   ../biggles/libplot/renderer.pys   colored_symbols  s     c         C   s;   | \ \ } } \ } } t i |  i | | | | | ƒ d  S(   N(	   s   xmins   ymins   xmaxs   ymaxs   raws   density_plots   selfs   pls   densgrid(   s   selfs   densgrids   .4s   xmins   ymins   xmaxs   ymax(    (    s   ../biggles/libplot/renderer.pys   density_plot#  s   c         C   s;   | \ \ } } \ } } t i |  i | | | | | ƒ d  S(   N(	   s   xmins   ymins   xmaxs   ymaxs   raws   color_density_plots   selfs   pls   densgrid(   s   selfs   densgrids   .4s   xmins   ymins   xmaxs   ymax(    (    s   ../biggles/libplot/renderer.pys   color_density_plot'  s   c      	   C   sl   |  i d ƒ } | t j o t i |  i | | ƒ n3 t i	 |  i | | | d | d | d | d ƒ d  S(   Ns   cliprecti    i   i   i   (
   s   selfs   gets   crs   Nones   raws   curves   pls   xs   ys   clipped_curve(   s   selfs   xs   ys   cr(    (    s   ../biggles/libplot/renderer.pys   curve,  s
    c         C   s³   | } |  i d ƒ } | t j	 oh t | d | d d ƒ } t | d | d d ƒ } t | d | d d ƒ } t | d | d d ƒ } n |  i | d ƒ t |  i	 | d ƒ d  S(   Ns   cliprecti    i   iÿÿÿÿi   i   (
   s   pointss   ptss   selfs   gets   crs   Nones   sutherland_hodgmans   moves   maps   lineto(   s   selfs   pointss   crs   pts(    (    s   ../biggles/libplot/renderer.pys   polygon4  s    s   centers   cs   baselines   xs   lefts   ls   rights   rs   tops   ts   bottoms   bc         C   s•   t  | ƒ } |  i i d d ƒ } |  i i d d ƒ } t i	 i | ƒ } t i	 i | ƒ } t i |  i | d | d ƒ t i |  i | | | ƒ d  S(   Ns
   texthaligns   centers
   textvaligni    i   (   s   tex2libplots   strs   plstrs   selfs   states   gets   hstrs   vstrs   LibplotRenderers   _LibplotRenderer__pl_text_aligns   hnums   vnums   raws   moves   pls   ps   string(   s   selfs   ps   strs   vstrs   hstrs   hnums   plstrs   vnum(    (    s   ../biggles/libplot/renderer.pys   textJ  s    c         C   s#   t  | ƒ } t i |  i | ƒ Sd  S(   N(   s   tex2libplots   strs   plstrs   raws   get_string_widths   selfs   pl(   s   selfs   strs   plstr(    (    s   ../biggles/libplot/renderer.pys	   textwidthS  s    c         C   s   |  i i d ƒ Sd  S(   Ns   fontsize(   s   selfs   states   get(   s   selfs   str(    (    s   ../biggles/libplot/renderer.pys
   textheightW  s    (.   s   __name__s
   __module__s   Nones   __init__s   opens   clears   closes   deletes   __del__s
   _set_colors   _set_pen_colors   _set_fill_colors   _set_line_types   raws   set_line_sizes   set_fill_levels   set_fill_types   set_font_types   set_font_sizes   set_string_angles   _LibplotRenderer__pl_style_funcs   sets   gets
   save_states   restore_states   moves   linetos	   linetorels   lines   rects   circles   ellipses   arcs    _LibplotRenderer__pl_symbol_types   symbols   symbolss   colored_symbolss   density_plots   color_density_plots   curves   polygons   ords   _LibplotRenderer__pl_text_aligns   texts	   textwidths
   textheight(    (    (    s   ../biggles/libplot/renderer.pys   LibplotRenderer}   s@   					r											ÿ '#							`				s   NonInteractiveScreenRendererc           B   s   t  Z d „  Z RS(   Nc         C   sW   d d f } | | f } h  d d | | f <d d <} t i |  | | d | ƒ d  S(   Ni    s
   BITMAPSIZEs   %dx%ds   VANISH_ON_DELETEs   nos   X(   s   lls   widths   heights   urs
   parameterss   LibplotRenderers   __init__s   self(   s   selfs   widths   heights
   parameterss   urs   ll(    (    s   ../biggles/libplot/renderer.pys   __init__\  s    "(   s   __name__s
   __module__s   __init__(    (    (    s   ../biggles/libplot/renderer.pys   NonInteractiveScreenRendererZ  s   s   InteractiveScreenRendererc           B   s#   t  Z d „  Z d „  Z d „  Z RS(   Nc         C   sW   d d f } | | f } h  d d | | f <d d <} t i |  | | d | ƒ d  S(   Ni    s
   BITMAPSIZEs   %dx%ds   VANISH_ON_DELETEs   yess   X(   s   lls   widths   heights   urs
   parameterss   LibplotRenderers   __init__s   self(   s   selfs   widths   heights
   parameterss   urs   ll(    (    s   ../biggles/libplot/renderer.pys   __init__g  s    "c         C   s   t  i |  i ƒ d  S(   N(   s   raws   flushs   selfs   pl(   s   self(    (    s   ../biggles/libplot/renderer.pys   closep  s    c         C   s   t  i |  i ƒ d  S(   N(   s   raws   flushs   selfs   pl(   s   self(    (    s   ../biggles/libplot/renderer.pys   deletes  s    (   s   __name__s
   __module__s   __init__s   closes   delete(    (    (    s   ../biggles/libplot/renderer.pys   InteractiveScreenRenderere  s   			i    i   c         C   sP   |  d j o2 t t j o t | | ƒ a n t i ƒ  t Sn t | | ƒ Sd  S(   Ni   (   s
   persistents   _saved_screen_renderers   Nones   InteractiveScreenRenderers   widths   heights   clears   NonInteractiveScreenRenderer(   s
   persistents   widths   height(    (    s   ../biggles/libplot/renderer.pys   ScreenRendererx  s     
c         C   s…   d  k  } | i d ƒ i |  ƒ } t | i d ƒ ƒ } | i d ƒ } h  d d <d d <d d <d	 d
 <} | | | } | Sd  S(   Ns   ([\d.]+)([^\s]+)i   i   s   iniH   s   pts   mmf2.835s   cmf28.350000000000001(   s   res   compiles   matchs   strs   ms   floats   groups   num_xxs   unitss   xx2pts   num_pt(   s   strs   num_xxs   num_pts   ms   res   xx2pts   units(    (    s   ../biggles/libplot/renderer.pys   _str_size_to_pts„  s    	*s
   PSRendererc           B   s   t  Z d d d d „ Z RS(   Ns    c         K   s™   d d f }
 t | ƒ t | ƒ f }	 d | | | f } x0 | i ƒ  D]" \ } } | d | d | } qD Wh  d | <} t i |  |
 |	 d | | ƒ d  S(   Ni    s   %s,xsize=%s,ysize=%ss   ,s   =s   PAGESIZEs   ps(   s   lls   _str_size_to_ptss   widths   heights   urs   papers   pagesizes   kws   itemss   keys   vals
   parameterss   LibplotRenderers   __init__s   selfs   file(   s   selfs   files   papers   widths   heights   kws   keys   pagesizes
   parameterss   urs   lls   val(    (    s   ../biggles/libplot/renderer.pys   __init__  s     (   s   __name__s
   __module__s   __init__(    (    (    s   ../biggles/libplot/renderer.pys
   PSRendererŽ  s   s   ImageRendererc           B   s   t  Z d „  Z RS(   Nc         C   sQ   d d f } | | f } h  d d | | f <} t i |  | | | | | ƒ d  S(   Ni    s
   BITMAPSIZEs   %dx%d(
   s   lls   widths   heights   urs
   parameterss   LibplotRenderers   __init__s   selfs   types   file(   s   selfs   types   widths   heights   files
   parameterss   urs   ll(    (    s   ../biggles/libplot/renderer.pys   __init__›  s    (   s   __name__s
   __module__s   __init__(    (    (    s   ../biggles/libplot/renderer.pys   ImageRenderer™  s   (   s   libplots   maths   raws   tex2libplots	   sh_insides   sh_intersections   sutherland_hodgmans   RendererStates	   _hexcolors
   _set_colors   _set_pen_colors   _set_fill_colors   _pl_line_types   _set_line_types   LibplotRenderers   NonInteractiveScreenRenderers   InteractiveScreenRenderers   Nones   _saved_screen_renderers   ScreenRenderers   _str_size_to_ptss
   PSRenderers   ImageRenderer(   s   RendererStates   tex2libplots   raws   _pl_line_types   sh_intersections
   _set_colors	   _hexcolors   ScreenRenderers   _set_fill_colors   maths   libplots   _set_pen_colors   InteractiveScreenRenderers   sutherland_hodgmans   ImageRenderers   _str_size_to_ptss   _set_line_types	   sh_insides   LibplotRenderers
   PSRenderers   NonInteractiveScreenRenderer(    (    s   ../biggles/libplot/renderer.pys   ?   s(   		
				!	Ý	
