o
    nĎi3                     @   sT   d dl mZ dd ZddddddZdd	d
Zedkr(d dlZee  dS dS )    normalizeValuec                 C   s@   | dkr|d | |d |d    S |d | |d |d    S )Nr          )vtripletr   r   U/home/jeff/fluffinator/venv/lib/python3.10/site-packages/fontTools/varLib/avar/map.py_denormalize   s   r
   FinputNormalizedoutputNormalized
dropZeroesc                   sv   d| vrd S | d }dd |j D  |s fdd| D }d| v r,| d || |}|s9 fdd| D }|S )Nfvarc                 S   s    i | ]}|j |j|j|jfqS r   )axisTagminValuedefaultValuemaxValue).0ar   r   r	   
<dictcomp>   s     zmap.<locals>.<dictcomp>c                        i | ]\}}|t | | qS r   r   r   tagvalueaxesr   r	   r          avarc                    r   r   )r
   r   r   r   r	   r      r   )r   itemsrenormalizeLocation)fontlocationr   r   r   r   r   r   r	   map   s   

r#   Nc                 C   s  ddl m} ddl}| du rddl}|jdd } |jdd d}|jddd	d
 |jdddddd |jdddd |jdddd |jdddd || }|jsW|	d |j
drmddlm} | }|||j
 n||j
}d|vr|	d|j
 d dd d d! |jD D }t|||j|j|j d"}	|	dusJ |	D ]}
|	|
 }|t|krt|n|}t|
 d#|d$ qdS )%z3Map variation coordinates through the `avar` table.r   )TTFontNr   zfonttools varLib.avar.map)descriptionr!   zvarfont.ttfzVariable-font file.)metavarhelpcoordsz[AXIS=value...]z,Coordinates to map, e.g. 'wght=700 wdth=75'.*)r&   r'   nargsdefaultz-f
store_truez%Do not omit axes at default location.)actionr'   z-iz)Input coordinates are normalized (-1..1).z-oz)Output coordinates as normalized (-1..1).zUNo coordinates provided. Please specify at least one axis coordinate (e.g., wght=500)z.designspace)buildr   zFont 'z#' does not contain an 'fvar' table.c                 S   s   i | ]	\}}|t |qS r   )floatr   r   r   r	   r   V   s    zmain.<locals>.<dictcomp>c                 s   s    | ]}| d V  qdS )=N)split)r   itemr   r   r	   	<genexpr>W   s    zmain.<locals>.<genexpr>r   r0   g)fontTools.ttLibr$   argparsesysargvArgumentParseradd_argument
parse_argsr(   errorr!   endswithr.   r#   iofintprint)argsr$   r6   r7   parseroptionsr.   r!   r"   mappedr   r   r   r   r	   main$   sl   

rG   __main__)N)fontTools.varLib.modelsr   r
   r#   rG   __name__r7   exitr   r   r   r	   <module>   s    
E