403Webshell
Server IP : 93.86.61.54  /  Your IP : 216.73.216.206
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__/dxf_outlines.cpython-310.pyc
o

0�aW;�@s�dZddlmZddlZddlmZmZmZmZmZm	Z	m
Z
mZmZm
Z
mZdd�Zdd�ZGd	d
�d
ej�ZedkrBe���dSdS)a'
This file output script for Inkscape creates a AutoCAD R14 DXF file.
The spec can be found here: http://www.autodesk.com/techpubs/autocad/acadr14/dxf/index.htm.

 File history:
 - template dxf_outlines.dxf added Feb 2008 by Alvin Penner
- ROBO-Master output option added Aug 2008
- ROBO-Master multispline output added Sept 2008
- LWPOLYLINE output modification added Dec 2008
- toggle between LINE/LWPOLYLINE added Jan 2010
- support for transform elements added July 2010
- support for layers added July 2010
- support for rectangle added Dec 2010
�)�print_functionN)�colors�bezier�	Transform�Group�Layer�Use�PathElement�	Rectangle�Line�Circle�EllipsecCsl||dkr2||||d||||d||d||d||d||dS||dkr�||||d||d||||d||d||d||||||d||d||d||d||dS||kr�||d||||d||||d||d||d||dSdS)N��r�)�u�i�jrr�./usr/share/inkscape/extensions/dxf_outlines.py�
get_matrix+sX>>��XrcCsld|d|d|dd|d||d|dd||d|d||d|d|S)Nr�rrr)r�csp�colrrr�get_fit6s
6��rc@steZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�ZdS)�DxfOutlinescCs�|�d�|jddtjdd�|jddtjdd�|jdd	d
�|jddd
d�|jddd
�|�d�g|_d|_dg|_d|_g|_ddggd|_dg|_	ddgg|_
dS)Nz--tabz-Rz--ROBOF)�type�defaultz-Pz--POLYz--unitsz72./96)rz
--encoding�char_encode�latin_1)�destrz--layer_option�allz--layer_name��0��)�add_argument�inkex�Boolean�dxf�handle�layers�layer�
layernames�csp_old�d�poly)�self�parsrrr�
add_arguments;s

zDxfOutlines.add_argumentscCs|�d�|j��dS)N�)�write�joinr()r0�streamrrr�saveMszDxfOutlines.savecCs|j�|�|jj��dS)N)r(�append�encode�optionsr)r0�strrrr�dxf_addPszDxfOutlines.dxf_addcCsb|jd7_|�d|j|j|jf�|�d|dd|dd|dd|ddf�dS)zDraw a line in the DXF formatrz:  0
LINE
  5
%x
100
AcDbEntity
  8
%s
 62
%d
100
AcDbLine
z, 10
%f
 20
%f
 30
0.0
 11
%f
 21
%f
 31
0.0
rN)r)r<r+�color�r0rrrr�dxf_lineSs:zDxfOutlines.dxf_linecCs�t|dd|jdd�dks(t|dd|jdd�dks(|j|jkr:|��|dg|_|j|_|j|_|j�|d�dS)Nr����-C��6?r)�absr/�color_LWPOLYr=�
LWPOLY_outputr+�layer_LWPOLYr8r>rrr�LWPOLY_lineYs""zDxfOutlines.LWPOLY_linecCs�t|j�dkr	dS|jd7_d}t|jdd|jdd�dks6t|jdd|jdd�dkr8d}|�d|j|j|jt|j�||f�tt|j�|�D]}|�d|j|d|j|df�qUdS)Nrrr@rAzR  0
LWPOLYLINE
  5
%x
100
AcDbEntity
  8
%s
 62
%d
100
AcDbPolyline
 90
%d
 70
%d
� 10
%f
 20
%f
 30
0.0
)�lenr/r)rBr<rErC�range)r0�closedrrrrrDcs$$((�zDxfOutlines.LWPOLY_outputcCs�d}d}|jd7_|�d|j|j|jf�|�d||f�td�D]}td�D]	}|�d|�q+q%|D]}|�d|d	|df�q8dS)
N�r$r�>  0
SPLINE
  5
%x
100
AcDbEntity
  8
%s
 62
%d
100
AcDbSpline
z  70
8
 71
3
 72
%d
 73
%d
 74
0
rz 40
%d
rGr)r)r<r+r=rI)r0r�knots�ctrlsrrrrr�
dxf_splineos��zDxfOutlines.dxf_splinecCs�t|dd|jdd�dksZt|dd|jdd�dksZt|dd|dd|jdd|jdd|dd|dd|jdd|jdd�dkrz|��|ddg|_|ddg|_dg|_|j|_|j|_	|jddg7_|jddg7_|jddg7_t
dd�D]E}t|j�|d}t|d	|d�|j|<t|d	|d�|j|<|j|dt
�|j|d|j|df|j||j|f�|j|<q�||_d
S)zBthis spline has zero curvature at the endpoints, as in ROBO-MasterrrrArrg����MbP?r#r$g@N)rBr-�ROBO_output�xfit�yfitr.r=�
color_ROBOr+�
layer_ROBOrIrHrr�
pointdistance)r0rrrrrr�ROBO_spline{s$""pJ
zDxfOutlines.ROBO_splinec
CsBzddl}ddlm}Wntyt�d�YdSwt|j�dkr%dSt|j�}|d}|d}|jddg7_|j	ddg7_	|jddg7_|j|d|j|d<|j|d<|j|<|j
||ftd	�}t|�D]+}t
|j||�|||f<t
|j||d�|||df<t
|j||d�|||df<qu|jd|j|d||df<|jd|jd|j|d||df<|jd|j|d||df<|j|d|j|d|j|d||d|df<|j|d
|j|dd|j|d|j|d||d|f<|j|d|j|d
|j|d||d|df<|||j�}|||j	�}	|jd7_|�d|j|j|jf�|�d|||f�t|�D]}|�d
|j|d
��qct|�D]}|�d|||	|f��qwt|�D]}|�d|j||j	|f��q�dS)Nr)�solvez�Failed to import the numpy or numpy.linalg modules. These modules are required by the ROBO option. Please install them and try again.rrr$r#�)�dtyperrLz! 70
0
 71
3
 72
%d
 73
%d
 74
%d
z 40
%f
rGz 11
%f
 21
%f
 31
0.0
)�numpy�numpy.linalgrW�ImportErrorr&�errormsgrHr.rQrR�zeros�floatrIrr)r<rTrS)
r0rZrW�fitsrNrM�	solmatrixr�xctrl�yctrlrrrrP�sN
�
0  , :H:"�zDxfOutlines.ROBO_outputc
	Cs�d}|�d�}|r2ttj�|��}d|vr2|dr2|ddkr2|ddd�dkr2t�|d���}t�|dd|d	d|d
d�}d|_	|d
r[d	t
d|dd
�d|_	t|tt
tttf�sgdS|j���t|�|j�D]j}tt|�d	�D]_}||}||d	}	|d	|d
kr�|	d|	d	kr�|jjr�|�|d	|	d	g�q~|�|d	|	d	g�q~|jjr�|�|d	|d
|	d|	d	g�q~|�|d	|d
|	d|	d	g�q~qtdS)N)rrr�style�stroke�nonerr�urlg�o@rr�rXg�?)�get�dictr&�Style�	parse_str�Color�to_rgbr�
rgb_to_hslr=�int�
isinstancer	r
rrr
�path�to_superpath�	transformrrIrHr:�POLYrFr?�ROBOrVrO)
r0�node�mat�rgbrd�hsl�subr�s�errr�
process_shape�s4
(& $$��zDxfOutlines.process_shapecCs.|�d�}|�d�}|�d�}tgd�gd�g�}|r!|t|�9}|r2|tddt|�ggd�g�9}|rC|tgd�ddt|�gg�9}|sI|sI|rV|j�t|jd�|�|�d	�}|j�|d
d��}|dur�t|t�rt|�	|�nt|t
�r|�|�n	|�||jd�|s�|s�|r�|j�
�dSdS)z0Process a clone node, looking for internal pathsrt�x�y)��?r#r#)r#r�r#r�r#r@z
xlink:hrefrN)rirr_�groupmatr8�svg�getElementByIdrqr�
process_groupr�
process_cloner~�pop)r0rw�transrr�rx�refid�refnoderrrr��s.





�zDxfOutlines.process_clonecCst|t�rA|j}|�dd�dkr|jjr|jjdkrdS|j}|jjr3|jjdkr3|��|jjvr3dS|�	dd�}||j
vrA||_|�d	�}|rW|j�
t|jd
�t|��|D]!}t|t�rf|�|�qYt|t�rq|�|�qY|�||jd
�qY|r�|j��dSdS)zProcess group elements�display�rf�visibleN�name� �_rtr@)rqrrdrir:�layer_option�label�
layer_name�lower�replacer*r+r�r8rrr�rr�r~r�)r0�grouprdr+r�rwrrrr��s.
$



�zDxfOutlines.process_groupc
Cs�|jjr|jjdkr|jjst�d�S|jjr"|jj���d�|j_t|�d�d��}|�	|�
��Wd�n1s<wY|j�d�D]<}t
|t�r�|j}|j�|���|jjrp|jjrp|jjdkrp|��|jjvrpqG|�dd�}|r�||jvr�|j�|�qG|�	d	t|j��tt|j��D]}|�	d
|d|j|f�q�t|�d�d��}|�	|�
��Wd�n1s�wYt|jj�}|s�d
}||j�d�}|jj}|j��}|�d�}|�r|�d�}	t|	�dkr�|�d�}	|||j�|j�|	d��9}|ddgd|||ggg|_|�|�|jj �r%|�!�|jj"�r.|�#�t|�d�d��}|�	|�
��Wd�n	1�sIwY|jj�rt|jj�rv|jjdk�rx|jjD]}||jv�rrt�d|��qcdSdSdSdS)Nr�zPError: Field 'Layer match name' must be filled when using 'By name match' option�,zdxf14_header.txt�rz//svg:gr�r�z+  2
LAYER
  5
2
100
AcDbSymbolTable
 70
%s
z`  0
LAYER
  5
%x
100
AcDbSymbolTableRecord
100
AcDbLayerTableRecord
  2
%s
 70
0
  6
CONTINUOUS
�Pzdxf14_style.txtg�������?�1px�viewBoxr$rr#zdxf14_footer.txtzWarning: Layer '%s' not found!)$r:r�r�r&r]r��split�open�get_resourcer<�readr��xpathrqrr�r,r8r�r*rHrI�eval�units�unittouu�height�document�getrootri�add_unitr�r�rvrPrurD)
r0�fhlrwr+r�scale�h�docr��viewBox2rrr�effectsf
�
,��



 


�"��zDxfOutlines.effectN)�__name__�
__module__�__qualname__r2r7r<r?rFrDrOrVrPr~r�r�r�rrrrr:s
) r�__main__)�__doc__�
__future__rr&rrrrrrr	r
rrr
rr�OutputExtensionrr��runrrrr�<module>s4�

Youez - 2016 - github.com/yon3zu
LinuXploit