403Webshell
Server IP : 93.86.61.54  /  Your IP : 216.73.216.60
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 :  /usr/share/inkscape/extensions/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/share/inkscape/extensions/__pycache__/draw_from_triangle.cpython-310.pyc
o

0�a�D�@s�dZddlmZmZmZmZmZmZddlZddlm	Z	m
Z
ed�\ZZ
dd�Zdd	�Zd
d�Zdd
�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zd d!�Zd"d#�ZGd$d%�d%e�ZGd&d'�d'ej�Z e!d(kr|e ��"�dSdS))ag
This extension allows you to draw various triangle constructions
It requires a path to be selected
It will use the first three nodes of this path

Dimensions of a triangle__

       /`__
      / a_c``--__
     /           ``--__ s_a
s_b /                  ``--__
   /a_a                    a_b`--__
  /--------------------------------``B
 A              s_b
�)�acos�cos�pi�sin�sqrt�tanN)�PathElement�Circle�cCs�|dkr|j}|jt|j�|jd�}n
|}|jt|j�|jd�}t||�\}}	t|�t|	�t|�d�}
|�	t
di|
���}||_||_dS)Nr��strokezstroke-width�fill)�cx�cy�r�)
�d_rad�d_col�str�d_th�d_fill�c_col�c_th�c_fill�get_cartesian_pt�addr	�style�label)�rad�centre�paramsr�name�parentr�
circ_stylerr�circ_attribs�elemrr�4/usr/share/inkscape/extensions/draw_from_triangle.py�draw_SVG_circle.s
r'c	Cs�t||�\}}}|�t��}dt|d�dt|d�dt|d�dt|d�dt|d�dt|d�dt|d�dt|d�d|_|jt|j�|jd�|_||_	dS)N�M r�,�� L z zr)
�get_cartesian_trirrr�path�l_col�l_th�l_fillrr)	�vert_matr rr!r"�p1�p2�p3r%rrr&�draw_SVG_tri>s>�
��
��
��
��
��
��
r5c
Csp|\}}|\}}|�t��}	|jt|j�|jd�|	_dt|�dt|�dt|�dt|�|	_||	_dS)Nrr(r)r+)	rrr.rr/r0rr-�lavel)
�a�brr!r"�x1�y1�x2�y2�linerrr&�
draw_SVG_lineJs2
r>cCsJtd�D]}t|||�}t|d|d|||dt|�|�qdS)N��:)�rangerr>r)r1r �widthr!r"�i�
oppositepointrrr&�draw_vertex_linesTs,�rEcCs4|\}}|\}}t||||||||�S)zfind the pythagorean distance)r)r7r8�x0�y0r9r:rrr&�distance\s$rHcCs|t|t|t|tfS)z&get the vector from (x0,y0) to (x1,y1))�X�Y)r7r8rrr&�vector_from_tocsrKcCs�|dd|d|dd|d|dd|d}|dd|d|}|dd|d|}||ddd||ddd||ddd||dddfS)Nrr*r
r)�t�p�denom�c1�c2rrr&rhs<PrcCsV|\\}}}\}}}\}}	}
t|||f|�}t|||f|�}t||	|
f|�}
|||
fS)z7get the cartesian points from a trilinear vertex matrix)r)�argr �t11�t12�t13�t21�t22�t23�t31�t32�t33r2r3r4rrr&r,os

r,cCs,||||||d||}t|�S)Nr
)r)r7r8�c�cosxrrr&�angle_from_3_sidesxs$r]cCs�|�ddt|dd�d�}|�ddt|dd�d�}|�ddt|d	d�d�}|�d
dt|dd�d�}|�ddt|dd�d�}|�d
dt|d	d�d�}|�dd�}|�dd�}|S)N�s_az
params[0][rr?�]�s_br*�s_cr
�a_az
params[1][�a_b�a_c�areazparams[4][0]�	semiperimzparams[4][1])�replacer)�string�osrrr&�translate_string}s      rjcCsDg}td�D]}|}t||�}td|�d��}|�||��q|S)Nr?�lambda params: �")rArj�eval�strip�append)�tcfr �
trilin_ptsrC�temp�funcrrr&�pt_from_tcf�s
rtcCs(t|jj�}t|�dkrgS|dd�S)zGreturns a list of first n points (x,y) in an SVG path-representing noder?N)�listr-�control_points�len)�node�n�pointsrrr&�get_n_points_from_path�sr{cCsJ|tdks|tdks|dtdks|dtdkrdSdt|�S)Nr
r?����h�]r*)rr��xrrr&�sec�s:r�cC�8|dks|tks|dtks|dtkrdSdt|�S�Nrr
���r}r*)rrr~rrr&�csc��(r�cCr�r�)rrr~rrr&�cot�r�r�c@seZdZdd�ZdS)�StylecCsX|�d�|_|�d�|_d|_d|_|�d�|_d|_d|_|�d�|_d|_	d|_
dS)N�4px�2pxz#aaaaaaz#000000�none)�unittouurrrrr/r0r.rrr)�self�svgrrr&�__init__�s
zStyle.__init__N)�__name__�
__module__�__qualname__r�rrrr&r��sr�c@seZdZdd�Zdd�ZdS)�DrawFromTrianglecCs�|�d�|jdtjdd�|jdtjdd�|jdtjdd�|jdtjdd�|jdtjdd�|jd	tjdd�|jd
tjdd�|jdtjdd�|jdtjdd�|jd
tjdd�|jdtjdd�|jdtjdd�|jdtjdd�|jdtjdd�|jdtjdd�|jdtjdd�|jdtjdd�|jdtjdd�|jdtjdd�|jdtjdd�|jdtjdd�|jddd�|jddd�|jdtjdd�|jdtjdd�|jd dd�|jd!tjdd�|jd"tjdd�dS)#Nz--tabz--circumcircleF)�type�defaultz--circumcentrez
--incirclez
--incentrez
--contact_triz--excirclesz--excentresz
--extouch_triz--excentral_triz
--orthocentrez--orthic_triz--altitudesz--anglebisectorsz
--centroidz--ninepointcentrez--ninepointcirclez--symmediansz--sym_pointz	--sym_triz
--gergonne_ptz
--nagel_ptz--mode�trilin)r�z
--cust_strr^z	--cust_ptz
--cust_radiusz--radiusz--isogonal_conjz--isotomic_conj)�add_argument�inkex�Boolean)r��parsrrr&�
add_arguments�s:
zDrawFromTriangle.add_argumentsc#	Cs�|j}g}|jj�tj�D]}t|d�}q
t|�dk�r�t|j�}|j�	��
tj�d��}dt
|dd�dt
|dd�d|_ddg|dd|dd|dd|ddg|dd|dd|dd|ddgg}t|d|d�}t|d|d�}t|d|d�}	|||	f}
t||	|�}t||	|�}t|||	�}
|||
f}t|d|d�}t|d|d�}t|d|d�}||f}|||	d	}t|||||||	�}||f}|
||||f}|js�|j�r&|||	d
|}t|�t|�t|
�f}|j�rtd|||d|�|j�r&t||||d|�|j�s.|j�rPgd
�}|j�r?td|||d|�|j�rP||}t||||d|�|j�r�||	|||	}||	|||	}|||||	}d||f|d|f||dff}t|||d|�|j�r�|||	|}|||	|}|||	|	}d||f|d|f||dff}t|||d|�|j�r�td|�}td|||d|�|j�r�dt|�t|
�gt|�dt|
�gt|�t|�dgg}t|||d|�|j �rd|d|d|	g}td|||d|�|j!�s|j"�rIt||
�t|
|�t||�g}|j!�r2td|||d|�|j"�rI|||	d|}t||||d|�|j#�rodt|�t|
�gt|�dt|
�gt|�t|�dgg}t$|||d|�|j%�r}d}t$|||d|�|j&�s�|j'�s�|j(�r�d}|j(�r�t|||d|�t)d�D]1}|j&�r�|||
|}t|||||dt
|�|�|j'�r�td||||dt
|�|��q�|j*�s�|j+�r�d||	f|d|	f||dff}|j*�r�t|||d |�|j+�r�t$|||d!|�|j,�r
|||	f}td|||d"|�|j-�rtd#|�}td|||d$|�|j.�r1td%|�}td|||d&|�|j/�sA|j0�sA|j1�sA|j2�r�g}|j3d'k�rst)d�D]$}|j4�5d(�}t6||d�||<t7d)||�8d*��}|�9||���qMn|j4} t| |�}|j/�r�td|||d+|�|j0�r�t6|j:d�}t7d)|�8d*��}||�}t||||d,|�|j1�r�gd-�}!t)d�D]}d|||!|<�q�td|!||d.|�|j2�r�gd-�}"t)d�D]}d|d||d||||"|<�q�td|"||d/|�dSdSdSdS)0Nr?�TriangleElementsz
translate(rr)r*�)r
g@��Circumcentre�Circumcircle)r*r*r*�Incentre�Incircle�ContactTriangle�ExtouchTrianglezcos(a_b)*cos(a_c)�Orthocentre�OrthicTriangle�Centroid�NinePointCentre��NinePointCircle�Altitude))rr*r*)r*rr*)r*r*r�AngleBisectors))���r*r*)r*r�r*)r*r*r��ExcentralTrianglez	Excircle:z	Excentre:�SymmedialTriangle�	Symmedian�SymmmedianPointz1/(s_a*(s_b+s_c-s_a))�
GergonnePointz(s_b+s_c-s_a)/s_a�
NagelPointr�r@rkrl�CustomTrilinearPoint�CustomTrilinearCircle)rrr�CustomIsogonalConjugate�CustomIsotomicConjugate);�optionsr��	selection�filterr�rr{rwr��get_current_layerr�Group�newr�	transformrHr]rKr�circumcentre�circumcirclerr'�incentre�incircle�contact_trir5�extouch_tri�orthocentrert�
orthic_trir��centroid�ninepointcentre�ninepointcircle�	altitudesrE�anglebisectors�	excircles�	excentres�
excentral_trirA�sym_tri�
symmedians�	sym_point�gergonne_pt�nagel_pt�cust_pt�cust_radius�
isogonal_conj�
isotomic_conj�mode�cust_str�splitrjrmrnro�radius)#r��so�ptsrx�st�layer�vtxr^r`ra�sidesrbrcrd�angles�ab�ac�bc�vecsrfre�uvalsr r�pt�t1�t2�t3�v_matrC�stringsrsrh�isogonal�isotomicrrr&�effect�s
...�

 
4"4�


 �
,��|zDrawFromTriangle.effectN)r�r�r�r�r�rrrr&r��s!r��__main__)#�__doc__�mathrrrrrrr�rr	rArIrJr'r5r>rErHrKrr,r]rjrtr{r�r�r��objectr��EffectExtensionr�r��runrrrr&�<module>s4 
	F�

Youez - 2016 - github.com/yon3zu
LinuXploit