o
    -h                     @   sX   d dl Zd dlmZ d dlmZ d dlmZm	Z	m
Z
 dd Zdd Zdd	 Zd
d ZdS )    N)
MouseEvent)Line3DCollectionPoly3DCollection_all_points_on_planec                  C   s   t  } | jdd}d|_d|_d|_d|_g d}||||}| j	  |
 }|j|}dD ]E}||_d|_| j	  tdD ]3}td	| jg||d d f R  }||\}	}
|	du sbJ t|
d
 dkslJ |
d
 d |ksvJ qCq2d S )N3d
projectionr   iT)r               )ii   button_press_eventindr	   )pltfigureadd_subplotrollelevazimstalescattercanvas	draw_idleget_offsets	transData	transformranger   containslen)figaxxscatter_collectionscatter_offsetscatter_locationr   ieventr   r    r(   Y/var/www/vscode/kcb/lib/python3.10/site-packages/mpl_toolkits/mplot3d/tests/test_art3d.py'test_scatter_3d_projection_conservation   s2   


r*   c                  C   s   t jg dddt jg dddfg} t jddgddt jddgddt jddgddg}t }|jdd}|t|  |j|d	d
i t  d S )N)        r+   r+   float)dtype)      ?r.   r.   r+   r.   r   r   visibleF)	npfromiterr   r   r   add_collectionr   r   draw)lcpcr    r!   r(   r(   r)   test_zordered_error0   s   r6   c               	   C   sd  t g dg dg dg dg} t| j rJ t g dg dg dg dg} t| j s0J t g dg dg dddt jgg} t| j sJJ t g dg dg dg} t| j s_J t g dg dg dg dg} t| j swJ t g dg d	g d
g dg dg dg} t| j sJ t g dg dg dg dg dg} t| j sJ d S )Nr   r   r   )r	   r   r   )r   r	   r   )r   r   r	   r   )r   r
   r   )r   r   r   )r
   r   )r	   r   )r	   r9   r   )r
   r   r   )r	   r	   r   )r	   r
   r   )r0   arrayr   Tnan)pointsr(   r(   r)   test_all_points_on_plane?   s    ""&"(r>   c                  C   s>   d} t | gddd}t }|jdd}|| t  d S )N)r7   )r   r   r   )r   r   r   )r   r   r   rT)
edgecolorsshader   r   )r   r   r   r   add_collection3dr3   )verticesshaper    r!   r(   r(   r)   test_generate_normals^   s   
rE   )numpyr0   matplotlib.pyplotpyplotr   matplotlib.backend_basesr   mpl_toolkits.mplot3d.art3dr   r   r   r*   r6   r>   rE   r(   r(   r(   r)   <module>   s    #