
    hS                        S SK Jr  S SKJrJr  S SKJr  S SKJr  S SK	J
r
  SSKJr  SSKJrJrJr  SS	KJr  SS
KJr  SSKJr  SSKJr  \(       a  S SKJr   " S S5      rg)    )annotations)TYPE_CHECKINGOptional)UCS)DXFValueError)DimStyleOverride   )BaseDimensionRenderer)AngularDimensionAngular3PDimensionArcLengthDimensionDiameterDimensionLinearDimensionOrdinateDimensionRadiusDimension)	Dimensionc                     \ rS rSr S     SS jjr  S     SS jjr  S     SS jjr  S     SS jjr  S     SS jjr  S     SS jjr	  S     SS	 jjr
  S     SS
 jjr  S     SS jjrSrg)DimensionRenderer   Nc                   UR                   nUR                  nUR                  5       nUS:X  a  U R                  X2U5      $ US:X  a  U R	                  X2U5      $ US;   a  U R                  X2U5      $ US:X  a  U R                  X2U5      $ US:X  a  U R                  X2U5      $ US:X  a  U R                  X2U5      $ US:X  a  U R                  X2U5      $ US:X  a  U R                  X2U5      $ [        S	U 35      e)
NARC_DIMENSIONLARGE_RADIAL_DIMENSION)r   r	                  zUnknown DIMENSION type: )	dimensiondimtypedxftype
arc_lengthlarge_radiallinearangulardiameterradius	angular3pordinater   )selfoverrideucsr"   dim_typedxf_types         H/var/www/html/env/lib/python3.13/site-packages/ezdxf/render/dimension.pydispatchDimensionRenderer.dispatch   s    &&	$$$$&&??98<<11$$YX>>;;yx88]<<	99]==::];;yx88]>>)(;;]==::":8* EFF    c                    [        XU5      $ )zJCall renderer for linear dimension lines: horizontal, vertical and rotatedr   r-   r"   r/   r.   s       r2   r'   DimensionRenderer.linear0        yx88r5   c                    [        XU5      $ )z9Call renderer for angular dimension defined by two lines.)r   r7   s       r2   r(   DimensionRenderer.angular9   s      	99r5   c                    [        XU5      $ )z$Call renderer for diameter dimensionr   r7   s       r2   r)   DimensionRenderer.diameterB        !::r5   c                    [        XU5      $ )z"Call renderer for radius dimensionr   r7   s       r2   r*   DimensionRenderer.radiusK   r9   r5   c                    [        5       e)z(Call renderer for large radial dimension)NotImplementedErrorr7   s       r2   r&   DimensionRenderer.large_radialT   s     "##r5   c                    [        XU5      $ )z<Call renderer for angular dimension defined by three points.)r   r7   s       r2   r+   DimensionRenderer.angular3p]        ")(;;r5   c                    [        XU5      $ )z%Call renderer for ordinate dimension.r   r7   s       r2   r,   DimensionRenderer.ordinatef   r>   r5   c                    [        XU5      $ )z'Call renderer for arc length dimension.)r   r7   s       r2   r%   DimensionRenderer.arc_lengtho   rF   r5    )N)r.   r   r/   Optional[UCS]returnr
   )NN)r"   r   r/   rL   r.   zOptional[DimStyleOverride])__name__
__module____qualname____firstlineno__r3   r'   r(   r)   r*   r&   r+   r,   r%   __static_attributes__rK   r5   r2   r   r      ss   ?CG(G/<G	G8 "/3	99 9 -	9 "/3	:: : -	: "/3	;; ; -	; "/3	99 9 -	9 "/3	$$ $ -	$ "/3	<< < -	< "/3	;; ; -	; "/3	<< < -	< <r5   r   N)
__future__r   typingr   r   
ezdxf.mathr   ezdxf.lldxf.constr   ezdxf.entities.dimstyleoverrider   dim_baser
   
dim_curvedr   r   r   dim_diameterr   
dim_linearr   dim_ordinater   
dim_radiusr   ezdxf.entitiesr   r   rK   r5   r2   <module>r_      s?    # *  + < + P P + ' + ' (`< `<r5   