
    e{
                     D   d Z ddlZddlZddlmZ ddlmZ	 ddl
mZ  ej                  d      Z ej                         Zej!                          ej#                  d       ej%                  d        ej&                         Zej+                  e        ej,                  d	      Z ej,                  d
      Z ej,                  d      Zded<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   dZdZ edd
      D ]!  Zddefee<   dez  ee<   dee<   edz  Zedz  Z#  ej<                  eeed      ZejA                  ddd       ej+                  e       ejB                  jC                  d      Zeg dz  Zd ed<    ejD                  ejF                  d   d!f      Zedz  jI                  d"      dz  a%ejB                  jC                  ejF                  d         d#z  Z ej<                  ed$e%      a&d&a'ej+                  tL                ejP                  d'      a)ejT                  dd(dd(f   jW                  ddd      d)d*gz  tR        ddddddf<   tR        jY                  d+d      a)tR        dz  jI                  d"      dz  a- ej<                  tR        d,d*d-      a.ej+                  t\               d. Z/ ej`                         Z1e1jd                  jg                  e/       e1ji                  d/       e5d0k(  r ejl                          yy)1zD
Demonstrates use of GLScatterPlotItem with rapidly-updating plots.
    N)	functions)QtCorezGLScatterPlotItem Examplez$pyqtgraph example: GLScatterPlotItem   )distance)5      r   )r      )   r   r         ?)      ?        r   r   )r   r
   r   r
   g?)r   r   r   r   )r   r   r
      gUUUUUU?)r   r   r   r   g      @r   g       @F)possizecolorpxMode   )i r   )r   )
   ir   )r   r   r   r	   )axisr   )r
   r
   r
   r
   )r   r   r   r   )d   r   r   r   g皙?i'  )r
   r
   r
   333333?)r   r   r   r   c                     t        j                  t        dz  t        z          } t        j                  t        t              dft         j                        }t        j                  | dz  dd      |d d df<   t        j                  | dz  dd      |d d d	f<   t        j                  | dz  dd      |d d d
f<   t        j                  | dz  dd      |d d df<   t        j                  |       t        dz  at        j                  t        dz  t        z          }|t        d d df<   t        j                  t        t              dft         j                        }d|d d df<   t        j                  |dz  d	d
      |d d d	f<   t        j                  |dz  d	d
      |d d d
f<   t        j                  |dz  d	d
      |d d df<   t        j                  t        |       y )Nr   r	   )dtyper   r   r   r   g      @r   r
   )r   r   )r   r   )npcosd2phaseemptylenfloat32fn
clip_arraysp2setDatad3pos3clipsp3)sr   zs      F/usr/lib/python3/dist-packages/pyqtgraph/examples/GLScatterPlotItem.pyupdater-   O   s    
1U
	AHHc"ga[

3Eq3wB/E!A#Jq3wB/E!A#Jq3wB/E!A#JqAvr2.E!A#JKKeK	SLE 
1U
	AD1IHHc"ga[

3EE!A#JS!Q'E!A#JS!Q'E!A#JaA&E!A#JKKDK&    2   __main__)7__doc__numpyr   	pyqtgraphpgpyqtgraph.openglopenglglr   r"   pyqtgraph.Qtr   mkQAppappGLViewWidgetwshowsetWindowTitlesetCameraPosition
GLGridItemgaddItemr   r   r   r   r+   drangeiGLScatterPlotItemsp1	translaterandomonesshapesumr   r$   r   zerosr'   mgrid	transposereshaper&   r)   r-   QTimerttimeoutconnectstart__name__exec r.   r,   <module>rY      s      % bii+,BOO    7 8   R   BMMO 		! bhhwrxx~	AC$q'.B58	AC$q'.B58	AE$q'.B58	q A!WCFdDG#E!HHAHA bsU5I a!  		# 	iiJ' { 	A1q!"	1f\\q\3	yySYYq\*2-bs)$?
 		# rxxxxdsd
#--a!4SzAQq!V||E!
Ag]]]Cbt:CN 		#'. FMMO 		  &  zBGGI r.   