o
    OZŽh·  ã                   @   s^   d Z ddlZddlZddlmZ ej ej e¡¡d Z	dd„ Z
dd„ Zedkr-eƒ  dS dS )	zÛ pygame.examples.arraydemo

Welcome to the arraydemo!

Use the numpy array package to manipulate pixels.

This demo will show you a few things:

* scale up, scale down, flip,
* cross fade
* soften
* put stripes on it!

é    N)Ú	surfarrayc                 C   s¬   t j | jdd… dd¡}t || ¡ t j ¡  t j |¡ 	 t j 	¡ }|j
t jkr2|jt jkr2dS |j
t jkrH|jt jkrHt j ||d ¡ n|j
t jkrUt  ¡  tƒ ‚q)z.displays a surface, waits for user to continueNé   r   é    Tz.png)ÚpgÚdisplayÚset_modeÚshaper   Z
blit_arrayÚflipZset_captionÚeventÚwaitÚtypeZMOUSEBUTTONUPZbuttonZBUTTON_LEFTZKEYDOWNÚkeyZK_sÚimageÚsaveZQUITÚquitÚ
SystemExit)Z	array_imgÚnameÚscreenÚe© r   úH/var/www/auris/lib/python3.10/site-packages/pygame/examples/arraydemo.pyÚsurfdemo_show   s   

÷r   c                  C   sü  ddl } ddl m}m} t ¡  tdƒ tdƒ tdƒ |  d|¡}t|dƒ |  d	|¡}d
|dd…< d|dd…ddd…f< t|dƒ tj	 
tdd¡}tj |¡}t |¡}t|dƒ |dd…ddd…f }t|dƒ |ddd…ddd…f }	t|	dƒ |j}
|  |
d d |
d d |
d f|¡}||ddd…ddd…dd…f< ||ddd…ddd…dd…f< |dd…ddd…f |dd…ddd…f< t|dƒ |  |¡}d|dd…dd…dd…f< t|dƒ |  d|¡}|  ||¡}|dd…dd…f  |dd…dd…f | 7  < |dd…dd…f  |dd…dd…f | 7  < |dd…dd…f  |dd…dd…f | 7  < |dd…dd…f  |dd…dd…f | 7  < |d }t|dƒ |  |¡}|  |j¡}d|dd…< || d }|| |¡ }t|dƒ t ¡  dS )zshow various surfarray effectsr   N)Úint32ÚuintzUsing Numpyz-Press the left mouse button to advance image.z,Press the "s" key to save the current image.)é€   r   Úallblack)r   r   é   )éÿ   r   r   )r   r   r   r   ÚstripedÚdatazarraydemo.bmpÚrgbarrayéÿÿÿÿÚflippedr   Ú	scaledowné   ÚscaleupÚredimg)é   é!   Úsoften)é   é2   éd   g      à?Úxfade)Únumpyr   r   r   ÚinitÚprintZzerosr   ÚosÚpathÚjoinÚmain_dirr   Úloadr   Zarray3dr   ÚarrayZastyper   )Únpr   r   r   r   Z	imagenameZ
imgsurfacer    r"   r#   r   r%   r&   Úfactorr)   ÚsrcÚdestÚdiffr-   r   r   r   Úmain+   sX   





&(


0000


r<   Ú__main__)Ú__doc__r1   Zpygamer   r   r2   ÚsplitÚabspathÚ__file__r4   r   r<   Ú__name__r   r   r   r   Ú<module>   s   L
ÿ