o
    Ðùa—  ã                   @   sV   d dl mZ d dlmZmZ d dlmZmZ d dlmZmZ dgZ	G dd„ deƒZ
dS )é    )ÚBasePen)ÚCGPathCreateMutableÚCGPathMoveToPoint)ÚCGPathAddLineToPointÚCGPathAddCurveToPoint)ÚCGPathAddQuadCurveToPointÚCGPathCloseSubpathÚ	QuartzPenc                   @   sB   e Zd ZdZddd„Zdd„ Zdd„ Zd	d
„ Zdd„ Zdd„ Z	dS )r	   zŽA pen that creates a CGPath
	
	Parameters
	- path: an optional CGPath to add to
	- xform: an optional CGAffineTransform to apply to the path
	Nc                 C   s*   t  | |¡ |d u rtƒ }|| _|| _d S ©N)r   Ú__init__r   ÚpathÚxform)ÚselfZglyphSetr   r   © r   ú:/usr/lib/python3/dist-packages/fontTools/pens/quartzPen.pyr      s
   
zQuartzPen.__init__c                 C   ó   |\}}t | j| j||ƒ d S r
   )r   r   r   ©r   ÚptÚxÚyr   r   r   Ú_moveTo   ó   zQuartzPen._moveToc                 C   r   r
   )r   r   r   r   r   r   r   Ú_lineTo   r   zQuartzPen._lineToc           
   	   C   s:   |||\}}\}}\}}	t | j| j||||||	ƒ d S r
   )r   r   r   )
r   Úp1Úp2Zp3Úx1Úy1Úx2Úy2Zx3Zy3r   r   r   Ú_curveToOne#   s   zQuartzPen._curveToOnec                 C   s,   ||\}}\}}t | j| j||||ƒ d S r
   )r   r   r   )r   r   r   r   r   r   r   r   r   r   Ú_qCurveToOne'   s   zQuartzPen._qCurveToOnec                 C   s   t | jƒ d S r
   )r   r   )r   r   r   r   Ú
_closePath+   s   zQuartzPen._closePath)NN)
Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r    r!   r   r   r   r   r	      s    
N)ZfontTools.pens.basePenr   ZQuartz.CoreGraphicsr   r   r   r   r   r   Ú__all__r	   r   r   r   r   Ú<module>   s    