
    Og6                       d dl mZ d dlmZmZ d dlmZ d dlmZ d dl	m
Z
 d dlmZmZmZmZmZmZ d dlmZmZmZmZmZ dd	lmZmZmZ dd
lmZ ddlmZ erd dl m!Z! d dl"m#Z# d dl$m%Z% ddgZ& edi d edd      d eddd      d edd      d edd      d edd       d! ed"d#      d$ ed%d       d& ed'd#      d( ed)d*      d+ ed,d-      d. ed/d0      d1 ed2d0      d3 ed4d0      d5 ed6d0      d7 ed8d0      d9 ed:d0      d; ed<d=       ed>d=       ed?d@       edAd ejN                  d dB      eC       edDd  ejN                  d d      eC       edEdF ejN                  d d      eC       edGd       edHdI ejN                  d dJ      eC       edKd  ejN                  d d      eC       edLd ejN                  d d      eC       edMdN ejN                  dOdP       ejP                  dOdP      C       edQd=ejR                  eC       edRd        edSd        edTdU      dV      Z* ee*      Z+e G dW de             Z, edXi dY eddZ      d[ ed?d      d\ ed]d      d^ ed_ejZ                   ed d       `      da edbejZ                   ed*d-      `      dc eddej\                  e`      de edfej\                   edgdgdg      `      dh ediej\                   edjdjdj      `      dk edld0      dm ednej\                  e`      do edIej\                  eej^                  ep      dq edrej\                  eej^                  ep      ds edKd ejN                  d dG      eC      dt edu      dv edw      dx edy      dz ed{            Z0 ee0      Z1e G d| de,             Z2y})~    )annotations)TYPE_CHECKINGOptional)Self)	validator)SUBCLASS_MARKER)DXFAttrDXFAttributesDefSubclassXTypeRETURN_DEFAULTgroup_code_mapping)Vec3Vec2NULLVECX_AXISY_AXIS   )
base_classSubclassProcessor	DXFEntity)	DXFObject)register_entity)AbstractTagWriter)DXFNamespace)xrefPlotSettings	DXFLayoutAcDbPlotSettingspage_setup_name )defaultplot_configuration_file   T)r"   optional
paper_size   A3plot_view_name   left_margin(   g      @bottom_margin)      right_margin*   
top_margin+   paper_width,   i  paper_height-   i)  plot_origin_x_offset.   g        plot_origin_y_offset/   plot_window_x10   plot_window_y11   plot_window_x2   plot_window_y2   scale_numerator   g      ?   F   i  H      )r"   r   fixerI   J         K      !   L   M   N   i,  d   i            iM  r%   )scale_denominatorplot_layout_flagsplot_paper_unitsplot_rotation	plot_typecurrent_style_sheetstandard_scale_typeshade_plot_modeshade_plot_resolution_levelshade_plot_custom_dpiunit_factorpaper_image_origin_xpaper_image_origin_yshade_plot_handlec                  d     e Zd ZdZ eee      Z	 d	 	 	 d fdZd fdZ	d	 fdZ
d
 fdZ xZS )r   PLOTSETTINGSc                X    t         |   |      }|r|j                  |t        d       |S )Nr   )superload_dxf_attribsfast_load_dxfattribsacdb_plot_settings_group_codesself	processordxf	__class__s      Z/var/www/html/public_html/myphp/venv/lib/python3.12/site-packages/ezdxf/entities/layout.pyrl   zPlotSettings.load_dxf_attribs   s0     g&y1**30NPQR
    c                    t         |   |       |j                  t        t        j
                         | j                  j                  |g d       y)z(Export entity specific data as DXF tags.)r    r#   r&   r)   r+   r-   r0   r2   r4   r6   r8   r:   r<   r>   r@   rB   rD   rZ   r[   r\   r]   r^   r_   r`   ra   rb   rc   rd   re   rf   N)rk   export_entity
write_tag2r   acdb_plot_settingsnamerr   export_dxf_attribsrp   	tagwriterrs   s     rt   rw   zPlotSettings.export_entity   sA    i(_.@.E.EF##"	
ru   c                x    t         |   |       |j                  | j                  j	                  d             y )Nrg   rk   register_resources
add_handlerr   getrp   registryrs   s     rt   r   zPlotSettings.register_resources  s,    "8,DHHLL)<=>ru   c                    t         |   ||       | j                  j                  d      }|r&|dk7  r!|j	                  |      |j                  _        y |j                  j                  d       y )Nrg   0)rk   map_resourcesrr   r   
get_handlerg   discard)rp   clonemappingrg   rs   s       rt   r   zPlotSettings.map_resources  s\    eW- HHLL)<=!2c!9*1*<*<=N*OEII'II12ru   Nrq   zOptional[SubclassProcessor]returnr   r}   r   r   Noner   zxref.Registryr   r   r   r   r   zxref.ResourceMapperr   r   )__name__
__module____qualname__DXFTYPEr
   r   ry   
DXFATTRIBSrl   rw   r   r   __classcell__rs   s   @rt   r   r      sD    Gz+=>J 8<4	'
R?3 3ru   
AcDbLayoutrz   
Layoutnamelayout_flagstaborderG   limmin
   )xtyper"   limmax   insert_base   extmin   g@xDextmax   g@x	elevation   
ucs_origin   	ucs_xaxis)r   r"   r   rJ   	ucs_yaxis   ucs_typeblock_record_handleiJ  viewport_handleiK  
ucs_handleiY  base_ucs_handleiZ  c                  f     e Zd ZdZ eeee      Z	 d	 	 	 d fdZ	d fdZ
d	 fdZd
 fdZ xZS )r   LAYOUTc                X    t         |   |      }|r|j                  |t        d       |S )Nr$   )rk   rl   rm   acdb_layout_group_codesro   s      rt   rl   zDXFLayout.load_dxf_attribsZ  s/     g&y1**30GK
ru   c                   | j                  d| j                  j                  j                         dk(  d       t        |   |       |j                  t        t        j                         | j                  j                  |g d       y )Ni   MODELr[   )rz   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )
set_flag_staterr   rz   upperrk   rw   rx   r   acdb_layoutr{   r|   s     rt   rw   zDXFLayout.export_entityb  si    D$((--"5"5"77"BDWXi(_k.>.>?##	
ru   c                    t         |   |       |j                  | j                  j	                  d             |j                  | j                  j	                  d             y )Nr   r   r   r   s     rt   r   zDXFLayout.register_resources~  sG    "8,DHHLL67DHHLL):;<ru   c                    t         |   ||       |j                  | |dd       |j                  | |dd       |j                  | |dd       y )Nr   TrY   r   r   )rk   r   map_existing_handle)rp   r   r   rs   s      rt   r   zDXFLayout.map_resources  s[    eW- 	##D%#M##D%1BT#R##D%1BT#Rru   r   r   r   r   r   )r   r   r   r   r
   r   ry   r   r   rl   rw   r   r   r   r   s   @rt   r   r   U  sG    Gz+={KJ 8<4	
8=
S Sru   N)3
__future__r   typingr   r   typing_extensionsr   ezdxf.lldxfr   ezdxf.lldxf.constr   ezdxf.lldxf.attributesr	   r
   r   r   r   r   
ezdxf.mathr   r   r   r   r   	dxfentityr   r   r   dxfobjr   factoryr   ezdxf.lldxf.tagwriterr   ezdxf.entities.dxfnsr   ezdxfr   __all__is_in_integer_rangefit_into_integer_rangeis_greater_zerory   rn   r   point2dpoint3dis_not_null_vectorr   r   r    ru   rt   <module>r      ss   # * " ! -  ; : ? ?  $71;
' a71b1a
 	"71b4#Ha 	ga.a 	'!R0a 	wr3/a 	R0a 	C0a 	gb"-a 	wr3/a 	C0a 	C 8a 	C 8a  	'"c2!a" 	'"c2#a$ 	'#s3%a& 	'#s3'a* 	734+a. %S#6" %R5
 $3i33Aq9 	
 !3i33Aq9 	
 3i33Aq9 	
  'q"5F  '3i33Ar: 	 
 #3i33Aq9 	
 (/3i33Aq9 	(
 ")3i33C?2)223>	"
 // 	
 !(Q 7 'Q 7$S48Aad J "44F!G  ?39 ?3 ?3D @<0@ 	A.@ 	GB*@ 	'"EMM41:F@ 	'"EMM4S>J@" 	wrH#@& 	'"EMM4dD;QR'@* 	'"EMM4ue;TU+@, 	WS#.-@. 	gbwG/@0 	W--22 
1@> 	W--22 
?@\ 	G3i33Aq9 	
]@j 	ws|k@p 	73<q@v 	gclw@~ 	73<@CH -[9  4S 4S 4Sru   