
    (j                     &    S SK Jr   " S S\5      rg)    )ContourFilterPenc                       \ rS rSrSrS rSrg)ExplicitClosingLinePen   aA	  A filter pen that adds an explicit lineTo to the first point of each closed
contour if the end point of the last segment is not already the same as the first point.
Otherwise, it passes the contour through unchanged.

>>> from pprint import pprint
>>> from fontTools.pens.recordingPen import RecordingPen
>>> rec = RecordingPen()
>>> pen = ExplicitClosingLinePen(rec)
>>> pen.moveTo((0, 0))
>>> pen.lineTo((100, 0))
>>> pen.lineTo((100, 100))
>>> pen.closePath()
>>> pprint(rec.value)
[('moveTo', ((0, 0),)),
 ('lineTo', ((100, 0),)),
 ('lineTo', ((100, 100),)),
 ('lineTo', ((0, 0),)),
 ('closePath', ())]
>>> rec = RecordingPen()
>>> pen = ExplicitClosingLinePen(rec)
>>> pen.moveTo((0, 0))
>>> pen.lineTo((100, 0))
>>> pen.lineTo((100, 100))
>>> pen.lineTo((0, 0))
>>> pen.closePath()
>>> pprint(rec.value)
[('moveTo', ((0, 0),)),
 ('lineTo', ((100, 0),)),
 ('lineTo', ((100, 100),)),
 ('lineTo', ((0, 0),)),
 ('closePath', ())]
>>> rec = RecordingPen()
>>> pen = ExplicitClosingLinePen(rec)
>>> pen.moveTo((0, 0))
>>> pen.curveTo((100, 0), (0, 100), (100, 100))
>>> pen.closePath()
>>> pprint(rec.value)
[('moveTo', ((0, 0),)),
 ('curveTo', ((100, 0), (0, 100), (100, 100))),
 ('lineTo', ((0, 0),)),
 ('closePath', ())]
>>> rec = RecordingPen()
>>> pen = ExplicitClosingLinePen(rec)
>>> pen.moveTo((0, 0))
>>> pen.curveTo((100, 0), (0, 100), (100, 100))
>>> pen.lineTo((0, 0))
>>> pen.closePath()
>>> pprint(rec.value)
[('moveTo', ((0, 0),)),
 ('curveTo', ((100, 0), (0, 100), (100, 100))),
 ('lineTo', ((0, 0),)),
 ('closePath', ())]
>>> rec = RecordingPen()
>>> pen = ExplicitClosingLinePen(rec)
>>> pen.moveTo((0, 0))
>>> pen.curveTo((100, 0), (0, 100), (0, 0))
>>> pen.closePath()
>>> pprint(rec.value)
[('moveTo', ((0, 0),)),
 ('curveTo', ((100, 0), (0, 100), (0, 0))),
 ('closePath', ())]
>>> rec = RecordingPen()
>>> pen = ExplicitClosingLinePen(rec)
>>> pen.moveTo((0, 0))
>>> pen.closePath()
>>> pprint(rec.value)
[('moveTo', ((0, 0),)), ('closePath', ())]
>>> rec = RecordingPen()
>>> pen = ExplicitClosingLinePen(rec)
>>> pen.closePath()
>>> pprint(rec.value)
[('closePath', ())]
>>> rec = RecordingPen()
>>> pen = ExplicitClosingLinePen(rec)
>>> pen.moveTo((0, 0))
>>> pen.lineTo((100, 0))
>>> pen.lineTo((100, 100))
>>> pen.endPath()
>>> pprint(rec.value)
[('moveTo', ((0, 0),)),
 ('lineTo', ((100, 0),)),
 ('lineTo', ((100, 100),)),
 ('endPath', ())]
c                     U(       a'  US   S   S:w  d  US   S   S:w  d  [        U5      S:  a  g US   S   S   nUS   S   nU(       a  X#S   :w  a  SU44S	/USS & g g g )
Nr   moveTo	closePath      lineTo)r
    )len)selfcontourmovePtlastSegs       yC:\Users\13-19lat\Documents\Emilia Obwojska\Lekcja 28\giga_env\Lib\site-packages\fontTools/pens/explicitClosingLinePen.pyfilterContour$ExplicitClosingLinePen.filterContourZ   s~    qz!}(r{1~,7|aAq!"+a.v,%y13DEGBCL -7    r   N)__name__
__module____qualname____firstlineno____doc__r   __static_attributes__r   r   r   r   r      s    SjFr   r   N)fontTools.pens.filterPenr   r   r   r   r   <module>r       s    5aF- aFr   