
    'j:
                    
   d dl mZ d dlmZmZ d dlZd dlmZmZm	Z	m
Z
mZmZ d dlmZmZ d dlmZ d dl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gZ# ej$        d          Z% e	d edej&                   edd            ede
j'        e           ede
j'        eej(        e           ede
j'        eej(        e          d          Z) ee)          Z*e G d de                      Z+dS )    )annotations)TYPE_CHECKINGOptionalN)DXFAttrDXFAttributesDefSubclassXTypeRETURN_DEFAULTgroup_code_mapping)DXF12SUBCLASS_MARKER)	validator)UCSNULLVECX_AXISY_AXIS)
base_classSubclassProcessor	DXFEntity)acdb_symbol_table_record   )register_entity)DXFNamespace)AbstractTagWriterUCSTableEntryezdxfAcDbUCSTableRecord   F   )default
   )xtyper       )r"   r    r   fixer   nameflagsoriginxaxisyaxisc                  Z     e Zd ZdZdZ eeee          Z		 dd fdZ
d fdZddZ xZS )r   zDXF UCS table entityr   N	processorOptional[SubclassProcessor]returnr   c                    t                                          |          }|r|                    |t                     |S N)superload_dxf_attribssimple_dxfattribs_loaderacdb_ucs_group_codes)selfr-   dxf	__class__s      L/DATA/AppData/hermes/venv/lib/python3.11/site-packages/ezdxf/entities/ucs.pyr3   zUCSTableEntry.load_dxf_attribs=   sA     gg&&y11 	J..s4HIII
    	tagwriterr   Nonec                8   t                                          |           |j        t          k    rJ|                    t
          t          j                   |                    t
          t          j                   | j	        
                    |g d           d S )Nr&   )r2   export_entity
dxfversionr   
write_tag2r   r   r'   acdb_ucsr7   export_dxf_attribs)r6   r;   r8   s     r9   r>   zUCSTableEntry.export_entityE   s    i(((%''  2J2OPPP  (-@@@##DDD	
 	
 	
 	
 	
r:   c                b    t          | j        j        | j        j        | j        j                  S )zCReturns an :class:`ezdxf.math.UCS` object for this UCS table entry.)r)   uxuy)r   r7   r)   r*   r+   )r6   s    r9   ucszUCSTableEntry.ucsO   s.    8?x~x~
 
 
 	
r:   r1   )r-   r.   r/   r   )r;   r   r/   r<   )r/   r   )__name__
__module____qualname____doc__DXFTYPEr   r   r   rA   
DXFATTRIBSr3   r>   rF   __classcell__)r8   s   @r9   r   r   6   s        Gz+CXNNJ 8<      
 
 
 
 
 

 
 
 
 
 
 
 
r:   ),
__future__r   typingr   r   loggingezdxf.lldxf.attributesr   r   r   r	   r
   r   ezdxf.lldxf.constr   r   ezdxf.lldxfr   
ezdxf.mathr   r   r   r   ezdxf.entities.dxfentityr   r   r   ezdxf.entities.layerr   factoryr   ezdxf.entitiesr   ezdxf.lldxf.tagwriterr   __all__	getLoggerloggeris_valid_table_namepoint3dis_not_null_vectorrA   r5   r    r:   r9   <module>ra      sd   # " " " " " * * * * * * * *                 5 4 4 4 4 4 4 4 ! ! ! ! ! ! 3 3 3 3 3 3 3 3 3 3 3 3 M M M M M M M M M M 9 9 9 9 9 9 $ $ $ $ $ $ 8++++++777777 
		7	#	#;Y%BCCCQ''''"EM7CCC-2 
 
 
 -2 
 
 
  , *)(33  
 
 
 
 
I 
 
 
 
 
r:   