
     #eV                        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 d dlmZ erd dlmZ  G d	 d
e      Zy)    )annotations)TYPE_CHECKINGAny)	Transform)AbstractPointPen)	Component)Contour)Point)Glyphc                  x    e Zd ZdZdZd	dZd
ddZddZ	 	 	 	 d	 	 	 	 	 	 	 	 	 	 	 	 	 ddZ	 d
	 	 	 	 	 	 	 	 	 ddZ	y)GlyphPointPenz|A point pen.

    See :mod:`fontTools.pens.basePen` and :mod:`fontTools.pens.pointPen` for an
    introduction to pens.
    _glyph_contourc                     || _         d | _        y Nr   )selfglyphs     A/usr/lib/python3/dist-packages/ufoLib2/pointPens/glyphPointPen.py__init__zGlyphPointPen.__init__   s    "(,    Nc                &    t        |      | _        y N)
identifier)r	   r   )r   r   kwargss      r   	beginPathzGlyphPointPen.beginPath   s    :6r   c                    | j                   t        d      | j                  j                  j	                  | j                          d | _         y )NCall beginPath first.)r   
ValueErrorr   contoursappend)r   s    r   endPathzGlyphPointPen.endPath    s;    == 455##DMM2r   c           
         | j                   t        d      |\  }}| j                   j                  t        ||||||             y )Nr   )typesmoothnamer   )r   r   r!   r
   )	r   ptsegmentTyper%   r&   r   r   xys	            r   addPointzGlyphPointPen.addPoint&   sJ     == 45511;vDZ	
r   c                j    t        |||      }| j                  j                  j                  |       y r   )r   r   
componentsr!   )r   	baseGlyphtransformationr   r   	components         r   addComponentzGlyphPointPen.addComponent8   s*     iJO	%%i0r   )r   r   returnNoner   )r   
str | Noner   r   r2   r3   )r2   r3   )NFNN)r'   ztuple[float, float]r(   r4   r%   boolr&   r4   r   r4   r   r   r2   r3   )
r.   strr/   r   r   r4   r   r   r2   r3   )
__name__
__module____qualname____doc__	__slots__r   r   r"   r+   r1    r   r   r   r      s     %I-7 #'!%

  
 	

 
 
 
 

, "&	11 "1 	1
 1 
1r   r   N)
__future__r   typingr   r   fontTools.misc.transformr   fontTools.pens.pointPenr   ufoLib2.objects.componentr   ufoLib2.objects.contourr	   ufoLib2.objects.pointr
   ufoLib2.objects.glyphr   r   r<   r   r   <module>rE      s-    " % . 4 / + '+01$ 01r   