HEX
Server: Apache
System: Linux opal14.opalstack.com 3.10.0-1160.108.1.el7.x86_64 #1 SMP Thu Jan 25 16:17:31 UTC 2024 x86_64
User: curbgloabal_opal (1234)
PHP: 8.1.29
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //usr/share/inkscape/extensions/dxf_input.pyo
�
��Yc@s�dZddlZddlZddlZddlmZddlmZd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zied6ed6ed6e	d6e
d6ed6ed6e
d6ed 6ed!6ed"6ed#6ed$6ed%6ed&6ed'6ed(6ed)6Zid*d+6d,d-6d.d/6d0d16d2d36d4d56d6d76d8d96d:d;6d<d=6d>d?6d@dA6dBdC6dDdE6dFdG6dHdI6dJdK6dLdM6dNdO6dPdQ6dRdS6dTdU6dVdW6dXdY6dZd[6d\d]6Zid^d,6d_d.6d`d06dad26dbd46dcd66ddd:6ded<6dfdB6dgdh6didj6dkdl6dmdn6dodp6dqdr6dsdt6Zejjdudvdwej �Z!e!j"dxdydzd{d|d}d~dd��e!j"d�dydzd{d|d}d�dd��e!j"d�dydzd{d|d}d�dd��e!j"d�dydzd{d|d}d�dd��e!j"d�dydzd{d�d}d�de#�e!j"d�dydzd{d|d}d�dd��e!j"d�dydzd{d|d}d�dd��e!j"d�dydzd{d|d}d�dd��e!j"d�dydzd{d|d}d�dd��e!j$ej%j&d,�\Z'Z(ej)j*ed�d�d�d�d�f��Z+ej)j,e+j-�d�i�Z.ej)j,e+j-�d�i�Z/ej)j,e/d�id�d�6d�d�6d�d�6d�d�6d�d�6�Z0ej)j,e0d�id�d�6d�d�6�ej)j,e/d�id�d�6d�d�6d3d�6d3d�6d�d�6d�d�6�Z1ej)j,e1d�id�d�6d�d�6d�d�6d�d�6�ej)j,e1d�id�d�6d�d�6d�d�6d�d�6�ej)j,e1d�id�d�6d�d�6d�d�6d�d�6�e2e(d*d��Z3d�Z4Z5Z6d�d�Z7d*Z8e�Z9d*Z:d*Z;iZ<iZ=iZ>iZ?x�e9d*r%	e9d,d�kr%	e�Z9e'j@d�kr�e9d,d�kr�edQ�Z8q�n\e'j@d�kr�e9d,d�kr�ed5�Z5ed=�Z6ne9d,d�kr�ed5�Z4q�ne;d,krje9d*d-krjeAe9d,e'jB�ZCid�ejDd�d��6d�eCejDd�d��6ZEej)j,e+j-�d�eE�e=eC<ne;d.kr�e9d*d-kr�eAe9d,e'jB�ZFge>eF<ne;d0kr�e9d*d-kr�eAe9d,e'jB�ZGne9d*d-kre9d,d�krd,Z;ne9d*d-kr0e9d,d�kr0d.Z;ne9d*d-krYe9d,d�krYd0Z;ne;d,kr�e9d*dOkr�eHe9d,�e<eC<ne;d.kr�e9d*d�kr�e>eFjIeJe9d,��ne;d0kr�e9d*d�kr�eJe9d,�e?eG<ne9d*d�kr3e9d,d�kr3d*Z;q3q3We'j@d�krS	d�ZKe8d�kr�	d�ZKq�	nbe'j@d�kr�	d�ZKe4e5kr�	d�e4e5ZKq�	n-eJe'jK�ZKeJe'j5�Z5eJe'j6�Z6d�eAe(d*e'jB�eKe5e6e'j@fe._LeKd�d�9ZKe=jMd��s\
id�ejDd�d��6d�ejDd�d��6ZEej)j,e+j-�d�eE�e=d�<d8e<d�<nx�e>jN�D]|ZFd�ZOxFe>eFD]:ZPePd*kr�
eOd�7ZOq�
eOd�ejQePeK�7ZOq�
WeOd�kr�
d�e>eF<qi
d�eOe>eF<qi
Wd�ZReZSe/aTxKe9d*rHe9d,d)kseSrHe�Z9e9d,d�krAe#ZSne9d,d�kr^e:d,7Z:neRr`
ejMe9d*�r`
eUjIe9d*�e9d*d+ks�e9d*d-ks�e9d*d/ks�e9d*d1ks�e9d*d3kr�e9d,jVd�d��ZWejXjYd�d�eW�ZWejXjYd�d�eW�ZWejXjYd�d�eW�ZWejXjYd�d�eW�ZWejXjYd�d�eW�ZWejXjYd�d�eW�ZWejXjYd�d�eW�ZWeAeWe'jB�ZWeWjZd��ZWejXjYd�d�eW�ZWeWj[d��ZWnce9d*dOks!
e9d*dQks!
e9d*dWks!
e9d*dYkr4
eHe9d,�ZWneJe9d,�ZWe\ee9d*jIeW�q�
ejMe9d,�r�
ejMeR�r�tTe/kr�
tTZ]n�e\ed3rme\ed3d*s�
d�e\ed3d*<ne=jMe\ed3d*�sTid�ejDd�d��6d�e\ed3d*ejDd�d��6ZEej)j,e+j-�d�eE�e=e\ed3d*<ne=e\ed3d*Z]nd�Z^e\ed3r�e<jMe\ed3d*�r�ejMe<e\ed3d*�r�ee<e\ed3d*Z^q�q�ne\edOr#ejMe\edOd*�r#ee\edOd*Z^q#nej_id�e^d�6d�d�6�Z`d�Zae\ed]r�e\ed]d*d*kr�d�d�e\ed]d*d�Zaead�kr�d�Zanej_id�e^d�6d�d�6d�ead�6�Z`q�ne\ed1r"e>jMe\ed1d*�r"e`d�e>e\ed1d*7Z`q"nd�Zbe\ed[rQeJe\ed[d*�Zbnxzd5d9d;gD]iZce\eecraxRedd*eee\eec��D]0ZfeKebe\eecefe5e\eecef<q�WqaqaWxzd=dAdCgD]iZge\eegr�xRedd*eee\eeg��D]0Zfe7eKe\eegefe6e\eegef<qWq�q�Webd�kr�e\edKr�e\edMr�e\edMd*Zhd�e\edKd*e\edMd*<d�ehe\edKd*<q�neeRr�eeR�q�ne9d,ZRgggggggggggggggggggggggggggZ\gZUq�
q�
We:riejiejd��e:�ne+jkej%jl�dS(�s�
dxf_input.py - input a DXF file >= (AutoCAD Release 13 == AC1012)

Copyright (C) 2008, 2009 Alvin Penner, penner@vaxxine.com
Copyright (C) 2009 Christian Mayer, inkscape@christianmayer.de
- thanks to Aaron Spike for inkex.py and simplestyle.py
- without which this would not have been possible

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
i����N(tStringIO(tquotec
Csttdsttdrttdrttdrttdd}ttdd}d}ttdr�ttddr�tttdd}nid|d	6d|d
6d|ttjfd6}d}ttd
rttd
d}|jid|||fd6�n�ttdr�ttdddkrc|jidd||fd6�q�ttdddkr�|jidd||fd6�q�n|jidtjdd�6�tj	j
td|�}d}ttdr/x>tdt
ttd��D]}|ttd|7}qWnttdrV|ttdd7}n|jd�}xe|dkr�tj	j
|didtjdd�6�}	|| |	_||d}|jd�}qhWtj	j
|didtjdd�6�}	||	_ndS( Nt1t3t10t20iit40s%ftxtys,font-size: %.1fpx; fill: %s; font-family: %ststylet50srotate (%f %f %f)t	transformt21g�?i����g�iZs125%tlinespacingtsodipodittextts\Pi����ttspantlinetrolei(tvalstgroupstscaletcolortoptionstfonttupdatetinkextaddNStetreet
SubElementtlayertrangetlentfindR(
RRtsizetattribstangletnodeRtitfoundR((s+/usr/share/inkscape/extensions/dxf_input.pytexport_MTEXTs@8 3%$' $+
+c	Cs�ttdr�ttdr�tjrMtttddttdd�q�tttddttddtddddd�ndS(NRRiigg�?(RRRtgcodetoolspointstgenerate_gcodetools_pointtgenerate_ellipsetw(((s+/usr/share/inkscape/extensions/dxf_input.pytexport_POINTBs	(cCs�ttdr�ttdr�ttdr�ttdr�dttddttddttttddtttttddtf}i|d6td6}tj	j
td	|�ndS(
NRt11RRs
M %f,%f %f,%fitdR	tpath(RRRtextrudetxmintheighttyminR	RRRR(R1R$((s+/usr/share/inkscape/extensions/dxf_input.pytexport_LINEJs8^cCs�ttdr|tttd�tttd�kr|ttdr|ttdr|ttdr|tttd�}tttd�}|dkr�||dkr�|dkr�xUt|ddd�D]=}ttd|ttd|d	kr�ttd|ttd|d	kr�ttd|ttd|d
ttd|d	ttd|d
}ttd|ttd|d	ttd|d
ttd|d	}ttdj|d	d|ttd|d
|ttd|d	�ttdj|d	d|ttd|d
|ttd|d	�d|ttd|d|ttd|d
ttd|d
<d|ttd|d|ttd|d
ttd|d
<ttdj|ttd|�q�q�Wtttd�}x�t|ddd
�D]k}ttd|ttd|d
kr3ttd|d	ttd|d	kr3ttd|d
ttd|kr3ttd|ttd|d	ttd|d
ttd|d	}ttdj|d	d|ttd|d
|ttd|d	�ttdj|d	d|ttd|d
|ttd|d	�q3q3Wntttd�}dttddttddf}x�td|d	d�D]�}|dttdd|d	ttdd|d	ttdd|d
ttdd|d
ttdd|dttdd|df7}q�Wttddd	@r�|d7}ni|d6td6}tjjt	d|�n|dkr�|dkr�dttddttddttdd	ttdd	ttdd
ttdd
f}i|d6td6}tjjt	d|�n|dkr||dkr|dttddttddttdd	ttdd	ttdd
ttdd
ttddttddttddttddf
}i|d6td6}tjjt	d|�q|ndS(Nt70RRRiiii����iig�?ii����sM %f,%fis C %f,%f %f,%f %f,%fs zR0R	R1sM %f,%f Q %f,%f %f,%fis#M %f,%f Q %f,%f %f,%f Q %f,%f %f,%f(
RRR!R tinsertR	RRRR(tknotstctrlsR'ta0ta1R1R$((s+/usr/share/inkscape/extensions/dxf_input.pyt
export_SPLINEQsH`PNNLLFF+|NLV(�
d�c
Csuttdrqttdrqttdrqtttddttddtttdddddd�ndS(NRRRigg�?(RRR,R(((s+/usr/share/inkscape/extensions/dxf_input.pyt
export_CIRCLEys*cCs�ttdr�ttdr�ttdr�ttdr�ttdr�tttddttddtttddddttddtjd	ttddtjd	�ndS(
NRRRR
t51igg�?g�f@(RRR,Rtmathtpi(((s+/usr/share/inkscape/extensions/dxf_input.pyt
export_ARC~sFcCs�ttdr�ttdr�ttdr�ttdr�ttdr�ttdr�ttdr�tttddttddtttddtttddttddttddttdd�ndS(	NRR/RRRt41t42i(RRR,R(((s+/usr/share/inkscape/extensions/dxf_input.pytexport_ELLIPSE�sbc	Csttdr
ttdr
tttd�dkr
tttd�tttd�kr
dttddttddf}xQtdtttd��D]2}|dttd|ttd|f7}q�Wi|d6td6}tjjtd	|�q
ndS(
NRRisM %f,%fis %f,%fR0R	R1(	RRR!R R	RRRR(R1R'R$((s+/usr/share/inkscape/extensions/dxf_input.pyt
export_LEADER�sB($0cCsCttdr?ttdr?ttdr?tttd�dkr?tttd�tttd�kr?d}d}ttddr�tjd�ttdjttdd�ttdjttdd�nxt|dkr�|d7}q�Wdttddttddf}ttdd}ttdd}x�tdtttd��D]�}d}|d7}xMt|dkr�t|dkr�ttd|}|d7}n|d7}q�W|r�d}|dkr�d}|}nd}|dkrd}ntjttd||dttd||d�}	d	|	|d
|}	|d|	|	||ttd|ttd|f7}n,|dttd|ttd|f7}ttd|}ttd|}qgWttddr|d
7}ni|d6td6}
t	j
jtd|
�q?ndS(NRRR7iisM %f,%fRDig�?g�?s A %f,%f 0.0 %d %d %f,%fs L %f,%fs zR0R	R1(
RRR!tseqstappendR R@tsqrtR	RRRR(tiseqstibulgeR1txoldtyoldR'tbulgetsweeptlargetrR$((s+/usr/share/inkscape/extensions/dxf_input.pytexport_LWPOLYLINE�sN*B
!$($


	;;,
cCsttdrttdrttdrttdrttdrttdrtttd�dkrtttd�tttd�krd}d}d}d}d	}x�tdtttd��D]�}ttd|}ttd|}ttd|d
kr�tttd|}ttd|}	|d
||tj|	tjd�||tj|	tjd�f7}nd}	|d
||f7}x�tdttd|�D]�}
ttd|d
@rD|
dkr|dttd|ttd|f7}n|
ttd|dkry|d7}qyn5ttd|d
krttd|}ttd|}tttd|}ttd|}||	dd}dttd|}
d}|r7|d||||
||tj|tjd�||tj|tjd�f7}n�|d||||
||tj|	dtjd�||tj|	dtjd�f7}|d||||
||tj|	tjd�||tj|	tjd�f7}|d7}|d7}nsttd|dkry|dtt	ttd|t
ttttd|tf7}|d7}|d7}n|d7}q�W|d7}q�Wttddr�t
jidtd6�}nt
jidd6dd6�}i|d6|d6}tjjtd|�qndS(NRRR7t72t92t93iiRiRR
sM %f,%f g�f@sL %f,%f R?iht73sA %f,%f 0.0 %d %d %f,%f R/Rsz s%stfillsurl(#Hatch)s1.0sfill-opacityR0R	R1(RRR!R RR@tcosRAtsinR2R3R4R5tsimplestyletformatStyleRRRRR(ti10ti11ti40ti72R1R'txctyctrmR<tjta2tdiffRORPR	R$((s+/usr/share/inkscape/extensions/dxf_input.pytexport_HATCH�s^TB$O"/[`X

D

c
Csjttdrfttdrfttdrfttdrfttdrfttdrfttdrfttdrftttdd	ttdd	�}tttdd	ttdd	�}ttdd	ttdd	krI|d
krI|t}d	}dttdd	ttdd	ttdd	ttdd	f}n�ttdd	ttdd	kr�|d
kr�|t}d	}dttdd	ttdd	ttdd	ttdd	f}ndSi|d6td
d6}tjjtd|�tt	ttdd	t
}ttttdd	t}d}ttdr�t
jttdd	�r�tt
ttdd	}|dkr�d}q�q�nid|d6d|d6d|ttjfd6}|d	kr|jidd||fd6�ntjjtd|�}tjj|didtjdd�6�}	ttd|��|	_ndS( NRR/t13t14RRt23t24ig�h㈵��>s
M %f,%f %f,%fR0sR; marker-start: url(#DistanceX); marker-end: url(#DistanceX); stroke-width: 0.25pxR	R1iRis%fRRsUfont-size: %.1fpx; fill: %s; font-family: %s; text-anchor: middle; text-align: centersrotate (%f %f %f)i����RRRRRRs%.2f(RRtabsRR	RRRRR2R3R4R5tDIMTXTthas_keyRRRRRtstrtfloatR(
tdxtdyR0R1R$RRR#R&R((s+/usr/share/inkscape/extensions/dxf_input.pytexport_DIMENSION�s8p((0
I0
I3$+c	Cs2ttdr.ttdr.ttdr.ttddtt}ttddttt}idtttddjdd�jd��t	j
d	d
�6}d||f}ttdrttd
r|dttddttd
df7}n|ji|d6�t	jj
td|�ndS(Nt2RRit#t t_sutf-8threftxlinkstranslate(%f, %f)RCRDs scale(%f, %f)Rtuse(RRRR3R5R4RtreplacetencodeRRRRRR(RRR$ttform((s+/usr/share/inkscape/extensions/dxf_input.pyt
export_INSERTs*D/cCsLttdrHtjjtdittddjdd�d6�andS(NRstsymboliRuRvtid(RRRRRtdefsRztblock(((s+/usr/share/inkscape/extensions/dxf_input.pytexport_BLOCK scCs
tadS(N(R�R�(((s+/usr/share/inkscape/extensions/dxf_input.pyt
export_ENDBLK&scCsHttdrDttdrDttddttdd<t�ndS(NRRsi(RRR)(((s+/usr/share/inkscape/extensions/dxf_input.pyt
export_ATTDEF*scCsTtj||||�}tj||�}||dtjdtj}	t|	�dkr�t|	dtj�dkr�d}
|	tjkr�d}
n|tj|�}||tj|�}|tj|�|tj|�}
|tj|�|tj|�}|tj|�}||tj|�}|tj|�|tj|�}|tj|�|tj|�}d||
|||||d|tj|
||||f}ndd|||||||d|tj|||||||d|tj||||f}i|d6td	6}tj	j
td
|�dS(NigH�����z>iisM %f,%f A %f,%f %f %d 0 %f,%fg�f�s1M %f,%f A %f,%f %f 1 0 %f,%f %f,%f %f 1 0 %f,%f zR0R	R1(R@RItatan2RARkRXRYR	RRRR(R`RatxmtymR-R<RdRbtaReRPtxttyttx1ty1tx2ty2R1R$((s+/usr/share/inkscape/extensions/dxf_input.pyR,0s& /	$$$$DdcCsQd||f}i|d6dtjdd�6dd6}tjjtd|�dS(	Nskm %s,%s 2.9375,-6.34375 0.8125,1.90625 6.84375,-6.84375 0,0 0.6875,0.6875 -6.84375,6.84375 1.90625,0.8125 zR0Rtdxfpointtinkscapesstroke:none;fill:#ff0000R	R1(RRRRR(R`RaR1R$((s+/usr/share/inkscape/extensions/dxf_input.pyR+Fs'cCs"tj�j�tj�j�fS(N(tstreamtreadlinetstrip(((s+/usr/share/inkscape/extensions/dxf_input.pytget_lineKscCs/t�}|d|kr't|d�SdSdS(Niig(R�Ro(tgroupR((s+/usr/share/inkscape/extensions/dxf_input.pyt	get_groupNs	tMTEXTtTEXTtPOINTtLINEtSPLINEtCIRCLEtARCtELLIPSEtLEADERt
LWPOLYLINEtHATCHt	DIMENSIONtINSERTtBLOCKtENDBLKtATTDEFtVIEWPORTtENDSECiRiRsiRit6it8iRiR/iRgiRhi	Ri
RiRiiRji
RiRCiRDiR
iR?it62iR7iRSiRViRTiRUit230it370s#FF0000s#FFFF00s#00FF00s#00FFFFs#0000FFs#FF00FFs#414141s#808080s#BD0000s#FF7F00is#333333i�s#505050i�s#696969i�s#828282i�s#BEBEBEi�s#FFFFFFi�tusagesusage: %prog [options] SVGfiletoption_classs
--scalemethodtactiontstorettypetstringtdesttscalemethodtdefaulttmanuals--scaleRs1.0s--xminR3s0.0s--yminR5s--gcodetoolspointstinkboolR*s
--encodingtinput_encodetlatin_1s--fontRtArials--tabttabtOptionss--inputhelpt	inputhelpRsf<svg xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" width="%s" height="%s"></svg>i�i`gffffff9@i)tdescR�tmarkert	DistanceXRtautotorienttrefXtrefYsoverflow:visibleR	R1sM 3,-3 L -3,3 M 0,-5 L  0,5R0s stroke:#000000; stroke-width:0.5tpatterntHatchtuserSpaceOnUsetpatternUnitstwidthR4t0RRs
M8 4 l-4,4s#000000tstrokes0.25sstroke-widthtsquaretlinecaps
M6 2 l-4,4s
M4 0 l-4,4RQgg�r@gX@tBLOCKStfiles$MEASUREMENTs$EXTMINs$EXTMAXRt	groupmodeR�s%stlabeltgtLAYERtLTYPEtDIMSTYLEt49t140tENDTABg�?g@j@s/%s - scale = %f, origin = (%f, %f), method = %ss 0.5,s%.4f,sstroke-linecap: roundsstroke-dasharray:tENTITIEStPOLYLINEs\~Rus\\A.*;s\\H.*;s\^Is{\\Lt}s\\S.*;s\\W.*;tunicode_escapes\\\\U\+([0-9A-Fa-f]{4})s\u\1tnoneRWg�?gY@s%.1ft;g�g�f@sl%d ENTITIES of type POLYLINE encountered and ignored. Please try to convert to Release 13 format using QCad.i�Ni`og��@(mt__doc__RRZR@RturllibRR)R.R6R=R>RBRERFRRRfRrR}R�R�R�R,R+R�R�tFalsetentitiesRtcolorstoptparsetOptionParsert	InkOptiontparsert
add_optiontTruet
parse_argstsystargvRtargsRtparsetdocRtgetrootR�R�R�R�topenR�txmaxR3R5R4tmeasurementRt	polylinestflagtlayer_colorstlayer_nodest	linetypesRlR�tunicodeR�t	layernameRR$tlinenamet	stylenametintRHRoRRRmtkeystlinetypetlengthtfabstentityt
inENTITIESR�RGRztvaltretsubR{tdecodeRRRR[R	R-R2txgrpR R!R'tygrpttempterrormsgRvtwritetstdout(((s+/usr/share/inkscape/extensions/dxf_input.pyt<module>s�$	$			(				
	,	6	 									��&#-%%%%%%%%%*;$B222
		0%
 	 	 	 
/,"


$		
P@	<1#!	2$$5$5"

T