403Webshell
Server IP : 93.86.61.54  /  Your IP : 216.73.216.156
Web Server : Apache/2.4.62 (Ubuntu)
System : Linux rasin.ddns.net 6.8.0-124-generic #124~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Tue May 26 21:05:19 UTC x86_64
User : www-data ( 33)
PHP Version : 8.4.22
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /lib/python3/dist-packages/mpl_toolkits/mplot3d/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/python3/dist-packages/mpl_toolkits/mplot3d/__pycache__/proj3d.cpython-310.pyc
o

�:�a��@s�dZddlZddlmZdd�Z	ddd�Zdd�Zd	d
�Zdd�Z	d
d�Z
dd�Zdd�Zdd�Z
dd�ZeZdd�Zdd�Zdd�Zdd�ZdS) z,
Various transforms used for by the 3D code
�Nc	Cs�|d|d}|d|d}t�|d�|d}t�|d�|d}|||||d|d}t�|dd�}t�||||||�}|S)z�
    Return the distance(s) from line defined by p1 - p2 to point(s) p0.

    p0[0] = x(s)
    p0[1] = y(s)

    intersection point p = p1 + u*(p2-p1)
    and intersection point lies within segment if u is between 0 and 1
    r��)�np�asarray�clip�hypot)	�p1�p2�p0�x21�y21�x01�y01�u�d�r�=/usr/lib/python3/dist-packages/mpl_toolkits/mplot3d/proj3d.py�_line2d_seg_dist	s rc
	Cs�||}||}||}	|dur!|\}
}}||
}||}|	|}	t�d|dd||gdd|d||gddd|	||	ggd�g�S)z�
    Produce a matrix that scales homogeneous coords in the specified ranges
    to [0, 1], or [0, pb_aspect[i]] if the plotbox aspect ratio is specified.
    Nrr�rrrr�r�array)
�xmin�xmax�ymin�ymax�zmin�zmax�	pb_aspect�dx�dy�dz�ax�ay�azrrr�world_transformation s
�r$cCs�||}|tj�|�}t�||�}|tj�|�}t�||�}|d|d|ddg|d|d|ddg|d|d|ddggd�g}ddd|dgddd|dgddd|dggd�g}t�||�S)Nrrrr)r�linalg�norm�cross�dot)�E�R�V�nr�v�Mr�Mtrrr�view_transformation6s 
��r0cCsJ||||}d||||}t�gd�gd�dd||ggd�g�S)N����rrrr)rrrrr)rr���rr��zfront�zback�a�brrr�persp_transformationVs

�r9c	Cs:||}||}t�gd�gd�gd�dd||gg�S)N)rrrr)rrrr)rrr1rrrr4rrr�ortho_transformation_s



�r:cCsFt�||�}|d}|d||d||d|}}}|||fS�N�rrr)rr()�vec�M�vecw�w�txs�tys�tzsrrr�_proj_transform_vecis(
rDcCs�t�||�}|d}|d||d||d|}}}d|dk|ddk@d|dk@|ddk@}t�|�rA|ddk}||||fSr;)rr(�any)r=r>r?r@rArBrC�tisrrr�_proj_transform_vec_clipqs(0
rGcCs\t�|�}t|||�}t�||�}z||d}Wn	ty"Ynw|d|d|dfSr;)r%�inv�
_vec_pad_onesrr(�
OverflowError)�xs�ys�zsr>�iMr=�vecrrrr�
inv_transform|s
�rPcCst�|||t�|�g�S�N)rr�	ones_like)rKrLrMrrrrI�srIcC�t|||�}t||�S)z7
    Transform the points by the projection matrix
    )rIrD�rKrLrMr>r=rrr�proj_transform�s
rUcCrS)zy
    Transform the points by the projection matrix
    and return the clipping result
    returns txs, tys, tzs, tis
    )rIrGrTrrr�proj_transform_clip�s
rVcCst�t||��SrQ)r�column_stack�proj_trans_points)�pointsr>rrr�proj_points�srZcCst|�\}}}t||||�SrQ)�ziprU)rYr>rKrLrMrrrrX�srXcCsNt�|�t�|�}}t�gd�d||dgd||dggd�g�}t�||�S)Nr2rr)r�cos�sinrr()r+�alpha�cosa�sina�M1rrr�rot_x�s

�rbrQ)�__doc__�numpyr�numpy.linalgr%rr$r0r9r:rDrGrPrIrU�	transformrVrZrXrbrrrr�<module>s&
� 	



Youez - 2016 - github.com/yon3zu
LinuXploit