Warning: session_start(): Session cannot be started after headers have already been sent in /home/tvrreohg/public_html/manga.php on line 13
3 2øªj´ã@spdZddlmZmZddlmZmZmZmZm Z m Z m Z m Z m Z mZde Zde Zdd„ZGdd „d eƒZd S) zùConvert SVG Path's elliptical arcs to Bezier curves. The code is mostly adapted from Blink's SVGPathNormalizer::DecomposeArcToCubic https://github.com/chromium/chromium/blob/93831f2/third_party/ blink/renderer/core/svg/svg_path_parser.cc#L169-L278 é)ÚIdentityÚScale) Úatan2ÚceilÚcosÚfabsÚisfiniteÚpiÚradiansÚsinÚsqrtÚtanégà?cCs&|j|j|jfƒ}|d|ddS)Nréyð?)ZtransformPointÚrealÚimag)ZmatrixÚptÚr©rú>/tmp/pip-build-_d5lkt3n/fonttools/fontTools/svgLib/path/arc.pyÚ _map_pointsrc@s,eZdZdd„Zdd„Zdd„Zdd„Zd S) Ú EllipticalArccCsP||_||_||_||_||_||_||_t|ƒ|_d|_ |_ |_ |_ dS)N) Ú current_pointÚrxÚryÚrotationÚlargeÚsweepÚ target_pointr ÚangleÚ center_pointÚtheta1Útheta2Ú theta_arc)ÚselfrrrrrrrrrrÚ__init__s zEllipticalArc.__init__cCsôt|jƒ}t|jƒ}|o|s dS|j|jkr0dS|j|jd}tj|j ƒ}t||ƒ}||}||}|j |j }|j |j } ||| |} | dkr¾|t | ƒ9}|t | ƒ9}|||_|_t d|d|ƒj|j ƒ}t||jƒ} t||jƒ} | | } | j | j | j | j }t d|ddƒ}t |ƒ}|j|jk�r@| }| |9} | | d}|t| j | j ƒ7}| |8} | |8} t| j | j ƒ}t| j | j ƒ}||}|dk�r¸|j�r¸|t7}n|dk�rÔ|j �rÔ|t8}||_|||_||_||_dS)NFgà?rgÐ?grT)rrrrrrÚrotaterrrrr rÚmaxrrÚcomplexrÚTWO_PIr!r"r#r )r$rrZmid_point_distanceÚpoint_transformZtransformed_mid_pointZ square_rxZ square_ryZsquare_xZsquare_yZ radii_scaleÚpoint1Úpoint2ÚdeltaÚdZscale_factor_squaredZ scale_factorr r!r"r#rrrÚ _parametrize'sX             zEllipticalArc._parametrizeccsL|jdkr|jƒ rdStj|jƒj|j|jƒ}tt t |j t dƒƒƒ}�xút |ƒD]î}|j||j |}|j|d|j |}dtd||ƒ}t|ƒs¦dSt|ƒ}t|ƒ}t|ƒ} t|ƒ} t||||||ƒ} | |j7} t| | ƒ} | |j7} | } | t|| | | ƒ7} t|| ƒ} t|| ƒ} t|| ƒ} | | | fVqVWdS)Ngü©ñÒMbP?réégÐ?gUUUUUUõ?)r r/rr&rZscalerrÚintrrr#Ú PI_OVER_TWOÚranger!r rr rr(r)r$r*Z num_segmentsÚiZ start_thetaZ end_thetaÚtZsin_start_thetaZcos_start_thetaZ sin_end_thetaZ cos_end_thetar+rr,rrrÚ_decompose_to_cubic_curvesms4       z(EllipticalArc._decompose_to_cubic_curvescCsBx<|jƒD]0\}}}|j|j|jf|j|jf|j|jfƒq WdS)N)r7ZcurveTorr)r$Zpenr+r,rrrrÚdraw”s   zEllipticalArc.drawN)Ú__name__Ú __module__Ú __qualname__r%r/r7r8rrrrrsF'rN)Ú__doc__ZfontTools.misc.transformrrÚmathrrrrrr r r r r r)r3rÚobjectrrrrrÚs 0