
    Og                        d dl mZ d dlmZ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 erd dlmZmZmZmZmZmZ d
dZy	)    )annotations)TYPE_CHECKINGIteratorcast)ARROWS)factory)BYBLOCK)Vec3fit_points_to_cad_cv)
DXFGraphicLeaderInsertSpline	DimensionLinec           	   #  4  K   | j                         dk(  sJ t        j                  | j                        }t	        |      dk  rt        d      | j                  }| j                  }|r|j                  j                  dd      }nd}d}|rdnd}d	}|j                  }|j                  }	|j                  }
d }|r| j                         }|j                  d
|      }|j                  d|      }|j                  d|      }|dk(  rd	}|j                  d|      }|j                  d|	      }	|j                  d|
      }
|j                  }t        |j                        }|j                   dk(  }|rJ|j"                  r>|j$                  dk(  r| }|dk7  r'|dkD  r"|||z  |z   z  }|j'                  |d   |z          | j)                         }||d<   |	|d<   |
|d<   |j                  d      t*        k(  r|j,                  |d<   |j.                  dk(  r\|d   |d   z
  }|d   |d   z
  }t1        |||g      }t3        dt5        j6                  d|            }|j9                  |       | nJt;        |      }|d   }|dd  D ]2  }||d<   ||d<   t3        dt5        j6                  d||             |}4 |j<                  r|r|j                  dd       }|y |j                  d!|rd"nd#      |z  }|d   |d   z
  j>                  }|rd||j@                  v rV|jC                  ||d   ||||d$       t3        d%t5        j6                  d&||'            }|jE                         E d {    y tG        jD                  ||d   |||(      E d {    y y y 7 -7 	w))NLEADER   zMore than 1 vertex required.z$MEASUREMENTr      g      ?g      ?g      ?dimtaddimgapdimscaleg        dimclrddimltypedimlwdcolorlinetype
lineweight)tangentsr   SPLINE)docstartendr   LINE)dxftype
dxfattribsr#   	dimldrblk dimaszg      @g      ?)nameinsertrotationxscaleyscalezscaler   INSERT)r(   r#   )r,   r-   sizer.   r(   )$r'   r
   listverticeslen
ValueErrordxfr#   headergetr   r   r   override
text_widthhorizontal_directionannotation_typehas_hooklinehookline_directionappendgraphic_propertiesr	   block_color	path_typer   r   r   newapply_construction_tooldicthas_arrowhead	angle_degblocksupdatevirtual_entitiesr   )leaderr5   r8   r#   measurementr   r   r   r   r   r   r;   r<   hook_line_vectorhas_text_annotation	hook_liner(   start_tangentend_tangentbsplinesplineattribsprevvertex
arrow_namer3   r.   r-   s                               X/var/www/html/public_html/myphp/venv/lib/python3.12/site-packages/ezdxf/render/leader.pyrL   rL      s     >>x'''yy)H
8}q 788
**C
**C jjnn^Q7 F!UvFHiiG||H^^FH
??$h/h/<<
H5s?H,,y'2<<
H5h/JC445--2s//!!Q& 00Q;:>(FX,=
,JKIOOHRL945**,J!Jw%Jz%J|~~g')!oo
7
}} hqk1rlXb\1&x=+:VWhH# >?&&w/z"{qrl 	F#GG#GENFwCH  D	 X\\+r2
||H[cfEPQK(1+-88:+&&qk ("""	 '++h:3OF ..000..{!%  / &* 1s$   M$N&N'%NNNNN)rM   r   returnzIterator[DXFGraphic])
__future__r   typingr   r   r   ezdxfr   ezdxf.entitiesr   ezdxf.lldxf.constr	   
ezdxf.mathr
   r   r   r   r   r   r   r   rL        rZ   <module>rd      s+    # 0 0  " % 1RRorc   