;ò ¤ tDc@s÷dkZdkZdkZdkZdkZdkZdfd„ƒYZdefd„ƒYZdfd„ƒYZ d„Z d„Z d „Z d „Z d „Zd „Zd „Zde fd„ƒYZde fd„ƒYZdefd„ƒYZdS(Ns_markercBstZRS(N(s__name__s __module__(((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pys_markerss BoxCrossErrorcBstZRS(N(s__name__s __module__(((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pys BoxCrossErrorss polygon_ptcBstZeed„Zd„Zeeed„Zd„Zd„Zd„Zd„Z dd „Z dd „Z dd „Z d „Z d „Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zdd„Zd„Zd„ZRS(NcCs4||_||_|itjo|iƒndS(N(scornerssselfscentersNones _ensurecenter(sselfscornersscenter((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pys__init__"s  cCsŸ|itjo‹ddf|_x>|iD]3}|id|d|id|df|_q)W|idt|iƒ|idt|iƒf|_ndS(Nii(sselfscentersNonescornersscornslen(sselfscorn((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pys _ensurecenter(s  1cCs-g}|tj o |itj oVti|ƒ}|it i |id|id|ddƒƒ|it i ƒƒn|tj p |tj otdƒ‚n|it i|idd|iddƒƒx4|idD]%\}}|it i||ƒƒqàW|it i ƒƒt i |ŒSdS(Niiihs;smooth functionality removed; apply smooth deformer on path(s pathitemss centerradiussNonesselfscentersunitstoptsrsappendspathsarc_pts closepaths bezierradiussbeziersoftnesss ValueErrors moveto_ptscornerssxsys lineto_pt(sselfs centerradiuss bezierradiussbeziersoftnesssrsxsys pathitems((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pyspath/s0/ cGstxm|D]e}|itj o|i|iŒ|_ngi}|iD]}||i|ŒƒqG~|_qWdS(N( strafosstrafosselfscentersNonesapply_ptsappends_[1]scornersspoint(sselfstrafosspoints_[1]strafo((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pys transform=s cGsu|itj oTti|id |id ƒgt|ƒti|id|idƒg}n|i|ŒdS(Nii(sselfscentersNonestrafos translate_ptsliststrafoss transform(sselfstrafos((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pys reltransformCsTcCscgi}tt|iƒƒD];}||o|d|fpt|iƒddfƒq~SdS(Nii(sappends_[1]srangeslensselfscornerssi(sselfs_[1]si((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pyssuccessivepointnumbersJscCsIgi}|iƒD]*\}}||i||i|fƒq~SdS(N(sappends_[1]sselfssuccessivepointnumberssisjscorners(sselfs_[1]sisj((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pyssuccessivepointsMsf1e-10c Csâ|i\}}||||f\} } | | | | |jot Sn|| || d| | | | }|| ||| |f\} }| | |||jot Sn| | || djot Snti||||| | ||ƒ} || | ||| f\} }| |||||||d| || |}|d|jo|d|joL|| || |||| d| || |} | || |fSn|djodSndSdS(Nf1.0ii(sselfscenterscxscysexsfxseysfysgxsgysepsilonsNonesdxsdysrsplitsbxsbysmathssqrtssfactorsasalphasbeta(sselfsasdxsdysexseysfxsfysepsilonsgysbxssfactorsbetasgxscyscxsalphasrsplitsby((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pyscirclealignlinevector_ptPs&&"+"6"6 c Cs™|i\} } ||||f\} } | | | | |jot Sn| || || jot Sn|| || |jp|| || | jo)|| || djodSndSn||| ||||| ||d| || |}|d|jo|d|joT|||| | |||| | d| || |} | || |fSn|djodSndSdS(Niif1.0(sselfscenterscxscysexsfxseysfysgxsgysepsilonsNonesdxsdysasalphasbeta(sselfsasdxsdysexseysfxsfysepsilonsgysbetasgxscyscxsalpha((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pyslinealignlinevector_ptfs"3>"> c Cs|||jotSn|i\} } d|| ||| |}|| || || || ||}||d|djotSn|djo(| dt i||d|ƒ} n%| dt i||d|ƒ} | || |fSdS(Niii(sasepsilonsNonesselfscenterscxscyspxsdxspysdyspsqsmathssqrtsalpha( sselfsasdxsdyspxspysepsilonsqspscyscxsalpha((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pyscirclealignpointvector_pt{s* ($c Cso|i\}}||||||||||}||||||||||||fSdS(N( sselfscenterscxscysasdxspxsdyspysbeta( sselfsasdxsdyspxspysbetascyscx((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pyslinealignpointvector_pt‰s*c CsBti||ƒ} || || f\}}t|||||d„|i ƒƒ} x,| D]$}t |ƒt ijo|SqZqZWx§|iƒD]™\}}| || |f\} } | tj p | tj o1| djp | tjo| djp | tjo%|||||i ƒ|dŒSqqW||||fSdS(NcCs#|\}}||||||ŒS(N(sp1sp2salignlinevectorsasdxsdy(s.0sselfsasdxsdysalignlinevectorsp1sp2((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pys‘sii(smathshypotsdxsdysnsmapsselfsasalignlinevectorssuccessivepointss linevectorss linevectorstypestypess TupleTypessuccessivepointnumberssisjsl1sl2sNonesalignpointvector( sselfsasdxsdysalignlinevectorsalignpointvectorsjs linevectorsisl1snsl2s linevectors((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pysalignvector_ptŽs  N)cCs#|i||||i|iƒSdS(N(sselfsalignvector_ptsasdxsdyscirclealignlinevector_ptscirclealignpointvector_pt(sselfsasdxsdy((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pyscirclealignvector_ptœscCs#|i||||i|iƒSdS(N(sselfsalignvector_ptsasdxsdyslinealignlinevector_ptslinealignpointvector_pt(sselfsasdxsdy((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pyslinealignvector_ptŸscCs@|iti|ƒ||ƒ\}}|ti |ti fSdS(N( sselfscirclealignvector_ptsunitstoptsasdxsdysndxsndyst_pt(sselfsasdxsdysndysndx((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pyscirclealignvector¢s$cCs@|iti|ƒ||ƒ\}}|ti |ti fSdS(N( sselfslinealignvector_ptsunitstoptsasdxsdysndxsndyst_pt(sselfsasdxsdysndysndx((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pyslinealignvector¦s$cGs'|iti|i|ŒŒƒ|SdS(N(sselfs transformstrafos translate_ptscirclealignvector_ptsargs(sselfsargs((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pyscirclealign_ptªscGs'|iti|i|ŒŒƒ|SdS(N(sselfs transformstrafos translate_ptslinealignvector_ptsargs(sselfsargs((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pys linealign_pt®scGs'|iti|i|ŒŒƒ|SdS(N(sselfs transformstrafos translatescirclealignvectorsargs(sselfsargs((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pys circlealign²scGs'|iti|i|ŒŒƒ|SdS(N(sselfs transformstrafos translateslinealignvectorsargs(sselfsargs((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pys linealign¶sc Csµti||ƒ}||||f\}}|i}|itjoddf|_n|i d||ƒ\}}|i d| | ƒ\}}||_||||||SdS(Ni(smathshypotsdxsdysnsselfscenters oldcentersNoneslinealignvector_ptsx1sy1sx2sy2( sselfsdxsdysy2s oldcentersnsx2sy1sx1((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pys extent_ptºs  cCs|i||ƒtiSdS(N(sselfs extent_ptsdxsdysunitst_pt(sselfsdxsdy((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pysextentÅsc Cs”t}xƒ|iƒD]u\}}|d|d|d|df\}}||||djo&|d||d|f\} } nË|||d|||d||||}|djo&|d||d|f\} } nf|djo&|d||d|f\} } n3||d||||d||f\} } t i| | ƒ} |tjp | |jo | }qqW|SdS(Niif1e-10(sNonesresultsselfssuccessivepointssp1sp2sgxsgysxsysdxsdysasmathshypotsnew( sselfsxsysp2sasp1sgysgxsresultsdxsdysnew((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pyspointdistance_ptÈs  *&2 & &2cCs-|iti|ƒti|ƒƒtiSdS(N(sselfspointdistance_ptsunitstoptsxsyst_pt(sselfsxsy((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pys pointdistanceÛscCsxh|iƒD]Z\}}xK|iƒD]=\}}|d|d|d|d|d|d|d|d} |d|d|d|d|d|d|d|d} |d|d|d|d|d|d|d|d}t |ƒdjoK| || jo9| |d|jo$| || jo| |d|jo t ‚q&q&Wq Wt } xM|iD]B\} }|i| |ƒ} | t jp | | jo | } q{q{WxM|iD]B\} }|i| |ƒ} | t jp | | jo | } qËqËW| SdS(Niif1e-10(sselfssuccessivepointssp1sp2sothersp3sp4sasbscsabssepsilons BoxCrossErrorsNonesresultscornerssxsyspointdistance_ptsnew(sselfsothersepsilonsp2sp3scsp1sp4sysasnewsxsbsresult((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pysboxdistance_ptÞs*  BBBa  cCs|i|ƒtiSdS(N(sselfsboxdistance_ptsothersunitst_pt(sselfsother((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pys boxdistanceôsc CsÒtitgi}|iD]}||dƒq~ƒtgi}|iD]}||dƒqK~ƒtgi}|iD]}||dƒq|~ƒtgi}|iD]}||dƒq­~ƒƒSdS(Nii( sbboxsbbox_ptsminsappends_[1]sselfscornerssxsmax(sselfs_[1]sx((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pysbbox÷s711(s__name__s __module__sNones__init__s _ensurecenterspaths transforms reltransformssuccessivepointnumbersssuccessivepointsscirclealignlinevector_ptslinealignlinevector_ptscirclealignpointvector_ptslinealignpointvector_ptsalignvector_ptscirclealignvector_ptslinealignvector_ptscirclealignvectorslinealignvectorscirclealign_pts linealign_pts circlealigns linealigns extent_ptsextentspointdistance_pts pointdistancesboxdistance_pts boxdistancesbbox(((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pys polygon_pt s6                       cCs£t}xo|D]g}|||||ƒ}|tjp2|d||d||d||d|jo |}q q Wx$|D]}|i t i |ŒƒqWdS(Nii( sNonesvecspolygonsspsmethodsasdxsdysvs transformstrafos translate_pt(smethodspolygonssasdxsdysvspsvec((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pysgenericalignequal_ptþsBcGstti||ŒdS(N(sgenericalignequal_pts polygon_ptscirclealignvector_ptspolygonssargs(spolygonssargs((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pyscirclealignequal_ptscGstti||ŒdS(N(sgenericalignequal_pts polygon_ptslinealignvector_ptspolygonssargs(spolygonssargs((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pyslinealignequal_pt scGst|ti|ƒ|ŒdS(N(scirclealignequal_ptspolygonssunitstoptsasargs(spolygonssasargs((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pyscirclealignequalscGst|ti|ƒ|ŒdS(N(slinealignequal_ptspolygonssunitstoptsasargs(spolygonssasargs((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pyslinealignequalsc Cs¨|di||ƒ}x;|dD]/}|i||ƒ}||jo |}q!q!W||}d}x9|D]1}|i t i ||||ƒƒ||7}qkW|SdS(Nii( spolygonss extent_ptsdxsdys maxextentspsextentsasdeltasds transformstrafos translate_pt( spolygonssasdxsdysextentsdeltasdsps maxextent((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pystile_pts   !cCs't|ti|ƒ||ƒtiSdS(N(stile_ptspolygonssunitstoptsasdxsdyst_pt(spolygonssasdxsdy((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pystile#sspolygoncBstZeed„ZRS(NcKs¨gi}|D]:}|gi}|D]}|ti|ƒƒq%~ƒq~}|t j o*ti|dƒti|dƒf}nt i |d|d||dS(Niiscornersscenter(sappends_[1]scornersscorners_[2]sxsunitstoptscentersNones polygon_pts__init__sselfsargs(sselfscornersscentersargssxs_[1]s_[2]scorner((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pys__init__)sQ *(s__name__s __module__sNones__init__(((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pyspolygon'ssrect_ptcBs)tZddfddfeed„ZRS(Nic Ks¦|tjp |tjo t‚nti|d||f|||f||||f|||ffd||d||d||d||df| dS(Nscornersscenterii(scornerss_markerscenters ValueErrors polygon_pts__init__sselfsxsyswidthsheights relcenters abscentersargs( sselfsxsyswidthsheights relcenters abscenterscornersscentersargs((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pys__init__2s C(s__name__s __module__s_markers__init__(((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pysrect_pt0ssrectcBs#tZddfddfd„ZRS(Nic Kspti|ti|ƒti|ƒti|ƒti|ƒd|dti|dƒti|dƒf|dS(Ns relcenters abscenterii( srect_pts__init__sselfsunitstoptsxsyswidthsheights relcenters abscentersargs(sselfsxsyswidthsheights relcenters abscentersargs((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pys__init__As9(s__name__s __module__s__init__(((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pysrect?s(stypessmathsbboxspathsunitstrafos_markers Exceptions BoxCrossErrors polygon_ptsgenericalignequal_ptscirclealignequal_ptslinealignequal_ptscirclealignequalslinealignequalstile_ptstilespolygonsrect_ptsrect(stile_pts_markerscirclealignequal_ptstileslinealignequalscirclealignequalspolygonsbboxs polygon_ptsrects BoxCrossErrorsmathstypesspathsrect_ptslinealignequal_ptsgenericalignequal_ptsunitstrafo((s;/mnt/gmirror/ports/graphics/py-PyX/work/PyX-0.10/pyx/box.pys?s$Þ