
    BPc6                         d Z ddlZddlmZ  G d dej                  Zedk    r e                                             dS dS )z;Straintens path segments (but doesn't turn them into lines)    N)percent_pointc                       e Zd ZdZd Zd ZdS )SegmentStraightenerzMake segments straiterc                     |                     ddt          dd           |                     ddt          dd	           d S )
Nz-pz	--percentg      I@z<move curve handles PERCENT percent closer to a straight line)typedefaulthelpz-bz
--behavior   z)straightening behavior for cubic segments)add_argumentfloatint)selfparss     -/usr/share/inkscape/extensions/straightseg.pyadd_argumentsz!SegmentStraightener.add_arguments   sf    O 	 	
 	
 	
 	< 	 	
 	
 	
 	
 	
    c                    | j         j                            t          j                  D ]}|j                                        }g }g }|D ]\  }}|dk    r| j        j        dk    rat          |d d         |d d          | j        j
                  |d d<   t          |dd         |dd          | j        j
                  |dd<   nt          |d d          |dd          d          }t          |dd          |d d          d          }t          |d d         |d d          | j        j
                  |d d<   t          |dd         |d d          | j        j
                  |dd<   nO|dk    rIt          |d d          |dd          d          }	t          |d d         |	| j        j
                  |d d<   |d	k    r
|dd          }|d
k    r|d d          }|dd          }||_        d S )NCr
         gfffff@@Q2   MZ)svg	selectiongetinkexPathElementpath	to_arraysoptionsbehaviorr   percent)
r   noder!   last	sub_startcmdparamsdest1dest2dests
             r   effectzSegmentStraightener.effect-   s+   H&**5+<== !	 !	D9&&((DDI# ' 'V#::|,11%2"2A2JQQQ1E& &rr
 '4"1Q3Kdl6J' 'qs
 !.d111gvbcc{D I I -fRSSk47D I I%2"2A2Jaaa$,2F& &rr
 '4"1Q3Kqqq4<3G' 'qs CZZ(aaa&+rBBD!.vbqbz4AU!V!VF2A2J#:: &rssI#::$QQQ<DD!"##;DDDIIC!	 !	r   N)__name__
__module____qualname____doc__r   r.    r   r   r   r      s8          
 
 
 " " " " "r   r   __main__)r2   r   inkex.bezierr   EffectExtensionr   r/   runr3   r   r   <module>r8      s   ( B A  & & & & & &5 5 5 5 5%/ 5 5 5p z r   