Warning: session_start(): Session cannot be started after headers have already been sent in /home/tvrreohg/public_html/manga.php on line 13
3 2j9@sdZddlmZmZddlmZddlmZddlm Z ddl m Z ddl Z ddl Z ddlZe jeZdd d Zd d Zdd dZddZddZddZdddZedkrddlZejedS)z;Visualize DesignSpaceDocument and resulting VariationModel.)VariationModel supportScalar)DesignSpaceDocument)pyplot)axes3d)cycleN csD|\fddtDfddtDgS)Ncs g|]}|qSr ).0i)abcountr :/tmp/pip-build-_d5lkt3n/fonttools/fontTools/varLib/plot.py szstops..cs g|]}|qSr r )r r )r crr rrs)range)supportrr )r r rrrstopss 2rcKsxt|ttjjjD]\}}t|dkrV|j|j|ddgdgdfd|i|qt|dkr|j|j|ddg|j|ddgdgdfd|i|qt t|qWdS)Nrg?ocolor) ziprrcmSet1colorslenplotgetAssertionError) locationsaxessubplotkwargslocrr r r_plotLocationsDotss"    r&c st|}tj|d}tj||}dkr:dgt|t|fddttDt|dj}t|dkrt|d|||fdi|n2t|dkrt||||fdi|nt ddS) Ng?csg|]}j|qSr )ZreverseMapping)r r )modelnamesr rr7sz!plotLocations..rrr(rzOnly 1 or 2 axes are supported) rmathceilrrsortedkeys_plotLocations2D_plotLocations3D ValueError)r!figr(r$ncolsrowsr"r )r'r(r plotLocations.s   r4cKs|jd}xtt|jttjjjt|D]\}\} } } | dk rL|j | |j |tj dd| j |d } gg} }x2t | D]&}t||i| }| j||j|qW|j| |fd| i|t|j|g|q,WdS) No?rgr6r6)r8r7r6) add_subplot enumeratersupportsrrrrr set_title set_xlabelxlimrrrappendrr&r!)r'Zaxisr0r2r3r(r$r#r rrnameXsXYxyr r rr-Fs ,      r-cKs|\}}|jddd} xtt|jttjjjt|D]n\} \} } } | dk r\| j | | j || j |tj ddtj d d | j|d }| j|d}xxt|D]l}ggg}}}x<|D]4}t||||i| }|j||j||j|qW| j|||fd| i|qWx|t|D]p}ggg}}}x>|D]6}t||||i| }|j||j||j|q>W| j|||fd| i|q$Wt|j||g| q:WdS)Nr5Z3d)Z projection?rgrFgrFrF)rHrGrFrF)rIrGrF)r9r:rr;rrrrrr<r=Z set_ylabelr>Zylimrrrr?rr&r!)r'r"r0r3r2r(r$Zax1Zax2Zaxis3Dr rrr@rAZYsrDrBrCZrEzr r rr.[s:.              r.cKs<|jdd|jD}dd|jD}t|||f|dS)NcSsg|] }|jqSr )location)r sr r rrsz plotDocument..cSsg|] }|jqSr )r@)r rMr r rrs) normalizesourcesr4)docr0r$r!r(r r r plotDocumentsrQcsddlm}|dkr"tjdd}|t|dkrbtdtjdtdtdtjdtjdtj }|j dt|dkr|dj d rt }|j |dt||n.ArJcs*g|]"}ttdd|jdDqS)css|]}t|VqdS)N)float)r vr r r sz"main...,)dictrsplit)r rM)r"r rrs)Z fontToolsrRsysargvrprintstderrexitrfigureZset_tight_layoutendswithrreadrQrordr4show)argsrRr0rPZlocsr )r"rmains&       rg__main__)r)N)N)__doc__ZfontTools.varLib.modelsrrZfontTools.designspaceLibrZ matplotlibrZmpl_toolkits.mplot3dr itertoolsrr)loggingr\ getLogger__name__logrr&r4r-r.rQrgr`r r r rs&       $