;ō
É@c           @   s{  d  Z  d Z d Z y& d k Z d k Z d k Z d k TWn@ e j
 o4 y e i i	 d e  Wn e GHn Xe  n Xe i
 d i e i  d i d  d a e i   d Z d	   Z d
   Z h  Z d a d a e i t  a e i t h  d t <d t < a e a d   Z d   Z d   Z e d j o= y e d t  Wqwe i i	 d e e f    qwXn d S(   s   optimized to plot graph of function that varies with time

   x scale always starts at zero, y varies positive and negative with
   screenheight / 2 as y axiss2  
    dydtplot - show graph of any time-varying function
    Copyright (C) 2004  John Comeau <jc@jcomeau.com>

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
    s5   Not all needed libraries found, upgrade or check pathN(   s   *s   %s
i    iĸĸĸĸs   .c          G   s   t  i i d t |    d  S(   Ns   %s
(   s   syss   stderrs   writes   reprs   whatever(   s   whatever(    (    s   ./dydtplot.pys   dbgprint,   s    c         K   s2   | i |   o | |  Sn | | |  <| |  Sd  S(   N(   s   optionss   has_keys   names   default(   s   names   defaults   options(    (    s   ./dydtplot.pys   setvalue/   s    
i   s   heights   widthc          O   sķ   t  i h  d t <d d < t i d t  t |  d  t j o |  d a	 n2 t |  d  t
 j o |  d i   a	 n |  a	 t t t	  a	 t d t	  t   t i   d  S(   Ns   expands   fills   boths   <Configure>i    s   wave(   s   canvass   packs   Trues   tks   binds   redraws   types   argss   ListTypes   waves	   TupleTypes   tolists   maps   floats   dbgprints   draws   mainloop(   s   argss   options(    (    s   ./dydtplot.pys   dydtplot?   s     c         C   s)   t  i   t  i   f \ a a t   d S(   są   set xmax and ymax after resize, then draw the graph anew

    do it this way, two functions, because otherwise draw() will think
    height and width are 1 pixel for some reasonN(   s   canvass   winfo_widths   winfo_heights   xmaxs   ymaxs   draw(   s   this(    (    s   ./dydtplot.pys   redrawN   s      c       	   C   sĄ   t  t  d j  o d Sn t d }  t |   } t t |  | t  xV t d t d  D]A } y1 t
 i | d | | d | |  t | f  WqX qX XqX Wd S(   s^   display the global array 'wave' as a graph

    scaling assumes that y varies between -1 and 1i   Nf2.0i    i   i   (   s   lens   waves   ymaxs   yscales   ints	   ymidpoints   dbgprints   xmaxs   ranges   is   canvass   create_line(   s   yscales   is	   ymidpoint(    (    s   ./dydtplot.pys   drawW   s       
 1s   __main__s   %s(sys.argv[1:])sX   Usage: %s [OPTIONS] INFILE[...]
  or for more detailed help, read source or:
  pydoc %s (   s   __doc__s	   Copyrights   errormessages   syss   oss   Tkinters   typess	   exceptions   stderrs   writes   argvs   splits   seps   selfs   originalselfs   dbgprints   setvalues   globalss   xmaxs   ymaxs   Tks   tks   Canvass   canvass   Nones   waves   dydtplots   redraws   draws   __name__s   eval(   s	   Copyrights   globalss   draws   Tkinters   originalselfs   dydtplots   dbgprints   syss   setvalues   errormessages   redraws   os(    (    s   ./dydtplot.pys   ?   s>   		*		$				