From 69d738f58952eaf2e69da5817f9c7ab8c81a68c1 Mon Sep 17 00:00:00 2001 From: "Maxime Chupin (Ceremade)" Date: Thu, 9 Feb 2017 18:07:39 +0100 Subject: [PATCH] =?utf8?q?meshPolygon=20avec=20TikZ=20et=20ajout=20dotpoin?= =?utf8?q?ts=20comme=20option=20=C3=A0=20tracePoints(TikZ=20et=20MP)?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- luamesh-tex.lua | 72 ++++++++++++++++++++++++++++++++++++++++++---- luamesh.sty | 4 +-- test/delaunay.pdf | Bin 87907 -> 95769 bytes test/delaunay.tex | 11 +++++-- 4 files changed, 77 insertions(+), 10 deletions(-) diff --git a/luamesh-tex.lua b/luamesh-tex.lua index 56b635c..528b6a4 100644 --- a/luamesh-tex.lua +++ b/luamesh-tex.lua @@ -209,6 +209,17 @@ function traceMeshTikZ(listPoints, triangulation,points,color,colorBbox) end end end + if(points=="dotpoints") then + j=1 + for i=1,#listPoints do + if(listPoints[i].type == "bbox") then + output = output .. "\\draw[color="..colorBbox.."] (" .. listPoints[i].x ..",".. listPoints[i].y .. ") node {$\\bullet$};" + j=j+1 + else + output = output .. "\\draw[color="..color.."] (" .. listPoints[i].x ..",".. listPoints[i].y .. ") node {$\\bullet$};" + end + end + end return output end @@ -811,11 +822,6 @@ end -- Meshing of a polygon -- -------------------------------------------------- - -function TeXMeshPolygonMP(polygon,listPoints, grid, step) - -end - function tracePolygonMP(polygon,points) output = ""; output = output .. "pair polygon[];" @@ -841,6 +847,30 @@ function tracePolygonMP(polygon,points) end +function tracePolygonTikZ(polygon,points, colorPoly) + output = ""; + for i=1,#polygon do + output = output .. "\\coordinate (polygon".. i .. ") at (" .. polygon[i].x .. "," .. polygon[i].y .. ");" + end + output = output .. "\\draw[color=".. colorPoly .. ", thick]" + for i=1,#polygon do + output = output .. "(" .. polygon[i].x .. "," .. polygon[i].y .. ") -- " + end + output = output .. "cycle;" + if(points=="points") then + for i=1,#polygon do + output = output .. "\\draw[color="..colorPoly.."] (" .. polygon[i].x ..",".. polygon[i].y .. ") node {$\\bullet$} node[anchor=north east] {$\\MeshPoint_{" .. i .. "}$};" + end + end + if(points=="dotpoints") then + for i=1,#polygon do + output = output .. "\\draw[color="..colorPoly.."] (" .. polygon[i].x ..",".. polygon[i].y .. ") node {$\\bullet$};" + end + end + return output +end + + function drawMeshPolygonMP(chaine,mode,h,step, points,scale) @@ -872,3 +902,35 @@ function drawMeshPolygonMP(chaine,mode,h,step, output = "\\leavevmode\\begin{mplibcode}beginfig(0);u:="..scale.. ";" .. output .."endfig;\\end{mplibcode}" tex.sprint(output) end + + + +function drawMeshPolygonTikZ(chaine,mode,h,step, + points,scale,color,colorPoly) + local polygon = buildList(chaine, mode) + polygon = addPointsPolygon(polygon,h) + local grid = buildGrid(polygon,h) + local listPoints = addGridPoints(polygon,grid,h) + if(step=="polygon") then + -- the polygon + output = tracePolygonTikZ(polygon,points,colorPoly) + end + if(step=="grid") then + -- polygon + grid + output = tracePointsTikZ(grid,points,color,"none") -- none for colorBbox + output = output .. tracePolygonTikZ(polygon,points,colorPoly) + end + if(step=="points") then + -- polygon + only grid points inside the polygon + output = tracePointsTikZ(listPoints,points,color,"none") + output = output .. tracePolygonTikZ(polygon,points,colorPoly) + end + if(step=="mesh") then + -- polygon + mesh + triangulation = BowyerWatson(listPoints,"none") -- no bbox + output = traceMeshTikZ(listPoints,triangulation,points,color,"none") + output = output .. tracePolygonTikZ(polygon,points,colorPoly) + end + output = "\\noindent\\begin{tikzpicture}[x=" .. scale .. ",y=" .. scale .."]" .. output .."\\end{tikzpicture}" + tex.sprint(output) +end diff --git a/luamesh.sty b/luamesh.sty index 363d085..80c0c0f 100644 --- a/luamesh.sty +++ b/luamesh.sty @@ -875,7 +875,7 @@ \define@key{meshPolygon}{colorPolygon}[red]{\def\luameshval@mp@colorPolygon{#1}}% %% the name of the color of drawing the bbox % -\presetkeys{meshPolygon}{tikz=false,scale,mode=int,step=mesh,print=none,color,colorPolygon,h}{}% +\presetkeys{meshPolygon}{tikz=false,scale,mode=int,step=mesh,print=none,color,colorPolygon,h,meshpoint}{}% % \newcommand{\meshPolygon}[2][]{% % #1 : optionnal arguments @@ -885,7 +885,7 @@ \def\MeshPoint{\luameshval@mp@meshpoint}% \ifKV@meshPolygon@tikz% if we are using tikz \directlua{% - drawMeshPolygonTikZBW("#2","\luameshval@mp@mode","\luameshval@mp@print","\luameshval@mp@bbox","\luameshval@mp@scale","\luameshval@mp@delaunay","\luameshval@mp@color","\luameshval@mp@colorbbox","\luameshval@mp@colorVoronoi","\luameshval@mp@styleDelaunay","\luameshval@mp@styleVoronoi")% + drawMeshPolygonTikZ("#2","\luameshval@mp@mode","\luameshval@mp@h","\luameshval@mp@step","\luameshval@mp@print","\luameshval@mp@scale","\luameshval@mp@color","\luameshval@mp@colorPolygon")% }% \else % we are using MP \mplibcolor{\luameshmpcolor}{\luameshval@mp@color}% diff --git a/test/delaunay.pdf b/test/delaunay.pdf index c7e805115ffdfeffaedd66fa7fdfbe74c010a45d..2f1ba3e2fc271769589ad433b2202511ad911547 100644 GIT binary patch delta 33490 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 E2fQPQRR910 delta 25558 zcmX_lb9i0f^K~2Bwr!gY8aB3##@0=4>@;bt#!onB$jnXTaz&K zF^-g7FPw&WL#o@>hfd<7_U(>$GLHCkg;E1xJ#4o?s69S$9uCLv%HfzL+ z4AO%{E-ZBnVaooG2ToUKdtV=0Jc%VjHfY~WJwNMu9*GA!Nnct7H-ruD494ne>3&Sx z7UW0vA1S#)RcFyBpj;Nk@c2A`99>>r&!msQ%|jk{=u(nfOzt2p0Pjoq5YNT$vXKY% zlbcq@Ot5IiMkn%^GtzMYBjhWX+R-TeA3|1j{=d8X%h^?i^oNLeYW38zr5=C0z_cOT z1M(Y2NTluR2uD7+{P$VI3_Nq4@H4$SYb&F<%Vbv!Xvmm4umot94igMAReUby1j7mJ z@)Czm{KupUWN%rzdS0Iw5^8Ims5mQhm)*G0SPQeC>j%rlvN@nrF#qK&x3LCBY`O7t@FQr;u1mmiSe(9kj~I?-JjuNbF~-Ii(AyT%M2 zva3U@jrq23%~;4*Sm=0&;I}myVDGg10Vk@1IW!>T4!FGosIBMr`nrsVJ1Dwsx>}L1 zjc;DBA&2R3Up+*Z(1}Vm8K>Syqlj%qmAKwu#F-M9Xg$62Pqiqr%yrvYH7#2g=j_(Q z&X}&kKG3!$*yXB|wkqB?od_}01}q3L=6{E5YfNhc%~x9>KS|4qG24|24O?IPI+TTHQLmHFDID)^ICVY*HsXkfnE2%i{rR@??=J_H-o~s0BzE z?~q7^Gv_crxl1#U<`$b9eqUwWGU_Qyc1}3X-!a|-h^7gw2rKUPCtLmH6|8IzQ<`X| z8PVR+nfX3`e5V&*2jPZztg)5frs@dq$o^1 zA3x;|3CLPi{C7+4t==bky8%%gtzFdfIVF#G_P$%wXev8l;j3oKk7WpDsobyL7Tn(5 z3J=(O0GHc&7jAesE~S@CiJVHBzo~28K*PGd419X2*8BHqgXOt^zNkS(UdhaJ{-=zm5 zkZkzud~T@zNhH=hDeY-e^}MJQ6tvPhS0aG(Dyzh7^v?+|S3T;_w~sv}WcEX%r;f0ypF>BmvafT~ ztl>fRG-omLLS#YHrR-{pW#LUtbdg22Y6@kd zCe$HS)ls`Wq|8__KXsYsFm02_#AYLm{fi8CkL zABTRm(w@*M1^rcOT6M$F_2Oi;*x`An8f(A-l-4E4{AQ zd0CwM5OYy9lUZ}1;OXs7V-Go-e$)1xMV2;%nOT%)zIG_$AIIG z$4dS|aRshJ;0=T;z`uU%BVrs-jT5b`-3yUPU^+|ARzy}&MDSQ?phTl5#d4Y!v-bxE zZ(kvbhhewUB*bJszmOA(zI-XTF`iw8tpR)D{^tLx-#h_kHho8S!9SL0H5vwdUT^+cFYn0GyZ%H;WC6^EMn8!@{l? z4QZtwz66Vn%%&GCcl0DA2V!A%u>4?K5Cw!CM{!kPsZ5^f*D8{l?JA8WkT$;Ra5YCK zirax@CT@)y%(|*w(uLVI4IXzd2Gwjr$+;jhtiJYJFC-iO0%Vq@`OZF45U%XVm(-n< zKfjS^gS|P&0QepD!7fU$)TankHWrqP9Izo4x!4eKV8|VIZ~rg3g}Z`(;IB_T8#O?uKaEq>WV{v z$EU3%k-;&BQW0IdpPcZ^CFDvIp&?ZYEA|TkG9pJ9I1y1RgX1}c6+$*#k}HuH8RCV1 z7MlmsocE5AYsG%`N<;nPA}pt^w202(I1{09+)4dV(e}%L;ygC_7vzZKQ&&Y6z1iT; zQN!_46u^|PSnDxlITj{Cimjn53AGbDN{qDxvGi02z3J_-(-n zR6nb0Y^3vpLOrHxSFmFq;rXn*|K(Y%L!wn*p@*QM_RyFgBBE5Se$nRWP%o$~^>36%IEi+GY!<7`J>Uej=i_ELmDDNPqVkdG=k1wZ=M=>3 z_fId_SkJeE1F?<%->A_Axk?r*Q{7F3Rhn8(jM}ANuX%$Cj2Zj*fFDJ5yLz?dVz#`> z7b(Y@e@4ja34SM!5kTw6uKLQcZF_IsW+V-~BxM)nBGDD%kKslTK4V0-n z%x!hhNF`-6aahkH-!4Rih>I<&l`Q+fy3}pklbf^j-7pB(~;mr1+s9``T139vZL< zv2<;kn!P^(E6=_rl>cgF*4MIy1XZ)oLAZyPYpkHKW$&ac?#tf}kxJ40a*Jj}Y)ezl z{rzUrvi1{~8u;|=bl=0dU;a&;r>alXT^*K}#CL^mlK9W)a!Of$S*8cmu=BOh=(6(Z z^-b1P7lrj-mv!@lQjY!AIOf|P_R>6|}^xBqWHE08FXF}$>Yk9!)0f0d`NN7%z8@_u-y?8#m9moE=OUTK)q_NLtOhv0O`TK)} zuFm(L*J(dRGj-ug@kzHBo1DHaNaT81IHV6c%Cf+vPNgrdShQ@cFlEc2w^+^T}tv}*{03uSJ&JZoJ-ELP~a^NNi(y~ChWuwPX<$~hnI`eb0SUv zB(8|lS;I1(y%`icCqHMBF*G%xOTOl_J&~B_6A&e=0F(F}pa405j0cx+*4;ow3E7Ok zPW(ssq$Zakky=GvrI4gKXsB*&xWs+&FrJ#Znjvv8{|)^baG0yAopV_SM<}*VOAR%NJuSP zZP3ImXVM|vzTka;bXvzXq-_t94fI0WxPYa}5We%Y+nMI1d}k=UyVmx7x;o4^@q>0( zZmFL42QHa5Ej`c^KTZb2$zQ3|X>a*L-eAlF!TrB4Spv~_J<)t7r=-1EuOt%3GXPzSFfe* zzWn2L1Nc%RZ6MqkQe^~dHwx^JK51mUFAok!x%hlovjO$@2wIpyU-UpzYMxLb$ZS-j zn8t#1yzLAAF<)^{c27>BZu;PNZV)L75QmXl06$d5sx}GF)I6!DzcIvSpau`}|8$s3 z4ZFxQ$-z*S0pNvB4e$Lm@WhjGN$u48M81=NqNWwlC0G|!`@G0zKb$9samw>Axrpw5 zmgZeq70`8mGsJz4Z+P#`i+-cceC1ioq%$xV)hsF7)~bP;-2k>*v$6<(!G*g<7K~OC zKQ0XJS=ub`Cfo)Fi5G-V-Tsv5HSiG z3;4JX*VPwr1*_&rbtiR;EdG9srV?76FO_|~4 z7VfE!40tGS?fXgaEyroI<$PmpRbUeFO0lFOpzhuJ=x4*b=>|sEpy|^->_N}gVp%_J z+oQ%aH)O!A?>Og;h^*AMS8tdJn^b(F{}SiTS9&CMue8Em8Mdo@9pI%ws}p%l|4DNv zev5nl)jy@n8wa+*A*z;Q|7_!^=^ zR%XQ?+3BR?5XTvw1PUn?zcrUL)x-i4Zt5`K=Rtvb%wWu5WHIv{hiwU~^pZE#rhV$thoI!2M+Prm zFT44NjKj6#&Nn^B^rlR}V?p2{p4ZRMarW!>B9m~jvuQdh`FN2vc3o3o>Csh+fKSA& zh))4A#yWz9vg2?6pc;r(C2O}mXu#dB?xw}oi)vNUPS#j9hcs*l|3MTTJL+Olm<`MkrsyIbW_9c<@A8{l|`#mjAxLOm1nNep|R*pHgoW% z64G!fA>zLcMaQ_8mOjaVrA)%|e?g|h)NWV@d9<`T`+Mnmkb5p&$zjE0K7bHe$?6$_ zbY8lkl_8y^Qe=?+=|-@}wn5kz5TZyU2F4z(CwpQzptnUF)bH&aUt%W9F# zhLHqlvW?{jjcbfk8tT1@79)6sRZ3P1UwZtuM1P$-_9kBaG>+_zkmgzm0i^4}18~XuE(5L*{9UH>rD(G~MH16k6 zga*GOvk20rRh!>*W^6(O>4i{Xy$T!CZ_!Ibq|JYkpc8JrH1^|ujI-7vOrtS4_UqA| zHOfH~29DyH=QVR=bQ~JkX%r=_;Pi&7_lx178%6k99hi$bv#gcBet_1+I4h$##}P3} z-R%J#;I<9%@W7&U@x5EFP(d=wRhz9oi%cpo%KYE&o9}{8N89&KeLs64U;pGbLn$XC zKOz5doT-RRMXrI_Dwf)+tc>^0ucBhZ{vh%LCRy(_c#xS+8>8_BgtD)OV7b3QDr;bo z*`n=2lRNr1wC7!9Dgp=>ZLD4`=Th7WRz+4CEnXSRd)^;Li&sWk8vN_MIXna!{TpmJ zqzCZ5*i|F3DaI=8Ue$t}3psC0B-z%uRgL#!?cBw^|JCNf7TeHjA|{f?Gi$_`#GY|O zb2^qebBH<`)|9;p^x?Z4s|Vuok6pLsz3zqVC@KP1P;MrLQ~*?2^LSbM5`14d>959{ z(SI&7pqnhJ)oYM)yKhmt6F}5lRAKT*a9PrcUedLLajiA6~UXjvj(`ok^-X}YuD$AjqlBj7y^RTq9V&57FSl;pkEL2XTa z%vdt-g=u0K=mQL<(do;y$j{aFU3`dFxWy}x)GR}Nv&lyYFNoS3dAT+y!+d1cEIS4i zMe3-}lRz5C@N-|&q+f9r`QbJx6I6ZDp6JM4TFd4-(Nm{-`An+bB3+t>rW7{XEGvUg zVtaqOr-`H=)4JU@Rww$J{YGKwA-l5bBwU(W%qDa^>I4v|ilnP+;`@mjr=r9Y=A-g_ zhADNIFwtcGVQYa~Z~v+~VeL_YYjLA3CVCL>S`mhNbttIb(%@;`p53s-e`mGH=8*Hq z=dhP~%T|yq!almwXl@F>EhOcOK~+~3Xrjbu0;miWf!R6AYlqXZ>>V zw7hB^+LdD-g!CS~ImC)MoPK5gt5z;i z+{jNJWP%g6AMN2Vo0;B4vN`J(?}NNS!`q_%qo?5c%425sB5!=a8}+EEtC(bBd1_~~ z03X1yHt~*6hcvKW}@*Bye+^ze9JR$+HWUKuAaw zP%(zUmKz(%N8z!Lv9qw*;kj)x)%dK%kN=hsN@i{3Y@E-KbX74LY7%rX^)O>wcS9mo zA=s8|Ernm0#KJEXc>3w=HqyNd_z+44SSFtPpAl-&H}59oFt%nX(fKfG4norb*mUSO zd;MQj9&7|#4r0|vPZKbC;&sUE+~PBRcA=&qv%B@-u6yvjPD5i+34OMeT2=0yHaFrb zWabX$YJGTyEy5NW_*pp1>9mZB*Oh|yEKQT|gs|iU+4@81Ed>@!XV@nh@DWfI z1wY}rvDAu1JAW1gr>HS=TmFy-;It$LE$Rvu(Z=*QH0kcKL)O_+273!w`YH;uJL;i8 z^3RQlB7aS{%;_ws!snVmkfZj=|L{|b-<)}9-$2M67yb>XPJXR9t~81-*3HTg*}NCD z*=Z<4E(qPzA=E28%q?SRVY2ALjc}v*Q2QP%)nx%H<`7%x`7GIbc!S^ud=UWlHKuKA zrV>7HeS92kz5C*|q6A}=s1KnzoJ_av6bf&6-lhfu4pXmxOo}Y$$ z)5G_odV4o~Fas_y`}%=^+M=F>3wb^+A3x~9?v2hjoUr6jB`7w{!>dOi#A0tvpnS&u z7f?8rb- z!88V%bfH4XtTsDpIT4wK(0SpFr5Oj-b?VtYrZ6n!cxHwikog?|jUct`J(xVl+I};5 zh^v3O$0UN~4o+{{3})V8S*PLd`a_JC34hZlrNvRbXSVTj+4G^=VzqvgwXhFI0K3H_ zb_G!U*oc=vb3s{q2}ld<*DqL~kr+?98VNS2-w$&;J~tZ&;6tBv$V&0qfPW&+XY*jV z`-5IO)QJzD{A z%{nd+>BCr(i-f2J4$_o?GT!c$2|4Jl=deV$)ICv61kq-b3|eQB7* zR&H0s0B-Z*nFMYcmQzx$pSW`&w_Fu23lx7V(f(#con;gZXmHe^NR3a^hys#S3~n;j z;Q1c0V)sj@^^SQ)?HGqyn*{I`;X!rh;Z2G4;>*RH3P!281GQo{RC7qOIqYbCWZ?`Y z8?Ue+anEB>I1|OE>t{Usq)NN(#ctz>J)fp78az5VUQn z7te39gX+cJ2{UE{M9#6#MQf={*KFFAexndfnCMnEKYITOUAt)1<$-M8Zop8R&Awyi@-?Y<&c4?j zDuNn7D3GPe7JreGUuJ)pfco>GmXloQay85|XWd4j=C$r<)58d~5(t?Mwp(QKW;T~NG$>Mxd}xop zk+VPIA=nL&M(7fVbweu~ED*|=5ESMyX9N;}G*>j8mjAt*fcBHTmy=vyKfCz~?kiUK zj(}nW1Sw|z*PQ&4^?N%BZH0hnR`{U2cJ-tXx@~U>?d1Ir*@%DT2YDM023VXjA=VBe ze5@LB!8QUl$Hq`O1!*35P^7bY(9O|qMQ2NHf!=NEFVw`wWAUT-u5REj2n-|)06t{H z=MoR4-V%D2-L@>&m{dom1yv?1?nvpfpe z2>V{h@|Pl^v@dh~qV%XxIVAwd;^`Mn5~cB^VGlh4EY2e}s?(1A4txwT^|HNjDERfR z_$g%?Su~$CGH_1P$e#Nj{iCdn0K#e^n@tEe{s2{?EYTzz26GpjN5s%vtGk4N5X!D; zTQhzv(j3@0*V{b(Ci;bJ;2|$FU&?xXt_mq@cdL3#X#3@$DY0Rm?ij$%{a~qMd+y(p zFCAES=VlU60Q0S}+%UDLQ2Ogu9!!dOibauLBnkI}VeR}fGqFlRH*&K)vi>vt12wn4 z2(id_WC_$VuxYAhSFhOIPDRUhpK*lSvzlk;M7(f*!Gubu$;*Z2;RG7A+P3N`C~bAj zh6aiKl(<`mrtNOk5`fA2fF)3L_7MmyH}rrQPtfvB8Uy2i9f#6?>w5f2RS4$!R+b&R9AHt`_Jn+)2|(IuZFI^D(0_B$hKruWAD`1Qv!v>!V|HSwX+}i z{D5!@i=a1I0Q!<1*_BF&2ZTeR4=SC6plS`BM2Afh7X3B56oD}-z1_E8^>cS|6peX2 z-+w{$NdBrX^C*nC`dNMt-WM(zd@PhKhg{-DuWJ0rJscm6uhR4n!dbajIz(X zcEuupLXMi2e)~m{*Mh#4H&0tzL@Y@Mu(3)chZeB}JA>*1311aMcauHj z)`JFLb=wn9)x|RoDY9!ln?#cCyUhsN2f>`7#}*^-htC#~D1wh{Jj`&(W9*1Z;+CPa z+4yzl9t_CQslfc1SeYcsFvTdG;P(WdIShc)nDy%uF()0QS0Vwl$e}dkK4)O~j?7eo zzf2q;5lUz@Hl|xLHWAKmKkS?e;!z?#@j}R*?%wBui&W0P$we+)^$14^(Wlj6b-Puv zESP!@`mc=%_6x3j@#g;ENE`JWu)EG2A;bDcZop?yJy%m9(<4)|Y-Mc6$A;s@HooY` z&LGP8P)Hdv&P!jxdos*0$Bv7g1!Z4mRdOr0GXj2LDr!-fqE?WR5MBC} z!TR_>+TOA+^QX3H-#UxEI4Z9RA<=Ni*}Il$U*@|OMc?{|o%q%=fcYDreUI&&2}IAk zoC4m@?)<#eQG#?hM^$bf3Iz+>X;>0!TQ0shxFvpqZy~(=1cd0tE?mdKlSkHQ=%-i! z;)oHxk?KeaKhc2&955n{bBd6Ig{{k?b zh2l`#Z|q!YUhn>GdakOorn4D?;E$ie(OL+HvxId+EGc%QS#r-L2`6GMi)gQP>#`&R z^^1+?Mzn_lZZYak+ruJ`45~*QfObIcC*jP8w%^&l(&)E}H8P}x236clV6fU0F7A)w zbu>hXnsjP8#&%{3CvwNmTLf*VVR8ta^%A=$|If+TOCiE zqp(_Yc~y<7Gh?O1))Z8P7H2V2kBm0cp1D$tiNa21*4$5vQh^taQX$j_yfVlQ%dj(O zDuU$1YfROd{wDIgADOBHw<1)W_av>oV^m`IPY33ib01{t>-O;6k6^=m>ei=cieMw! z;BKh}E5ntP=Yppt1Joz$p;lf422p=pA8*d~3pBm($)iea{Rww>8MMRV5LS;T(Gb=4 zIUhoKL#!_Ub~Rb#>&!C==-l$gjmEYw%(`OV5D%b4OjlF_un#9Vafx2Ek%?e0koq*Zj@gUhde$UYC1( zu-JF0MnbK!jrDwdWFFWv%(T%q@_U+>Lal<>Fy}|BiO(;a1ymjY$3`r%q62H2_`iPM z{pI3j*L||51R~~I-li@~SjC6UTC>dMsk-28-eqyjHA+EyN7FTvVV*kT`e2+PmJI}E z)-GqpMkbyk4FsQKbpm}yo%7X_X}KA~+LVEDYW1n=r7t-t0pcgi|^W=u?8UH4w# z`0CBuOiApen2y0PsnN)iij&hsxh-IpQL(KPX0;lWO3}up^>u9Zmlio+-s|ej7iHR3 zm!;IMt4fd7G#-&EWs^5fM3Zkac`gdrcOx}uU>I2aN+LO!Korf>IOVKM|5HzdcyFwk zrK6701E3!b+qI{4T6bfnBn&5_9*?uUH!LP{T+}riA4~4~B7RNyB96p=9F8p<=5}Xh zHu6J^=h3B%R4RXKWcX13a6fok^4U6w_{gP-M9Oh1V)#(^Z~z>wfnfb{aiPldwv;%p z1Ur12a4p6V7CvK^vq&>$pU+z*1bA|c#f5Y_0IkyWxXUhg>15K>2C)WaIK5JP&$9-% zb7vQ!a*C2BChN7}!a&gNEZ4z6l>p}MvdcfYs4C1Q zpD0YIuI`k4h$d5=7s1X{2%93q`o2K@@4S-;z^%4a2>oDpX2vPlqs$a#5-LJLSFP{* z0RP?)l&lTVmOF}c@O5e0nM24hZ}PUyhpI<^I$LKoRX@DHv(+fNmjFdhNB6nE)pH)Z zr$`}|3oFSXJOQ)=680E>ovyGP78Mu=pYotD9SWhGRX+N1lqY$Sb1z*+n^}_UvhQ7l zIs%uL2s(%P?y8H>Tr^mA+c00bQYEDUT`)o{G3hxzY2)Hf5|10-A?>xo<^PK&kst(# z?hG4JZ@4IUW~woKik#M6c6aRe6$CH5_d_C%sS+437fJNcNVeL%o-;L;!jf4AxzS1m z6Whf*uxxG?2PVH51<()Xdl`6KzYW>UFk|^G(cWMLY-{S&E<^zU{3R{m#1^E3mI;KT?4U=r2gHClZRfDw7^ANU%jBmK*3$ zHdRO$=8+zCr9A9I;lrO*Zc(9PVO~yLE(m+2gQC3~+*zco?b?<}u7G>!ZYa^)AW)b( zS5Z!tbWSHL93WAM#q;?MK?}H>-_b;*$i?&}x+q-!=VCqQB4{^W%+gUsoN5Y*#?HV` z7CyucX}4L|kM~q}Y_%eOO)jWwT#*L`VIOOSXt*70QKYw@<&s>(sKBl5@EL9RKHfJz z)(9Tv+&8)Adl+%C`oPSW4AQU4NL}Wz4w2$%oTDfbs4HN~T5opt0>I`KdZPQ6Lf8sA z=*->+3vnk%-qqv4N=#u}^$p{)x;38*O_oTN!e?k!o?MP$L?Bp(LkNl-B;rU}Zq=Ip zqjRkUOH0iJ8U9*{2O_y}?EN3og}s&`&U|IzUQ+@wM$5AEZEgl^h8rapbLL`5xrvhS z5SUWZ&xX)onCJ#*K?*HokN&Uh;TvgIq7cjVE`Qi4Wr9Sd<9EsHJ^S5yA!zRu#&8uF zo%^CGF&fsRfjo zC=b8MF|y;_0zvC0T37P5*_)~8Y<$zR`%jo&5h#NkV0Wz?-w_1x_-b{EVfD3t&jD;! z`UHuUR*(%ohk;twO5R@`r{OSVYVP{7afh=AqNNw{ny2Id`@6I`R3Pd-IKz(Fr%`=u zYVOP^N3sIY-ogUV#N%E}e2`9#hldjK0?t_uRYhfswvLAnjSug@c=2u>Bn<0XMM~A? zcn2_ZW&M9Bb9wNGwE4(D;HAzxH7@`zUaJ14`|!AqrR3rm_OQ?<8T>vL3M$V5DmakVJ;eK2oT%)5NNJDI|ca%ls8}0CFcJ2Lm(8CrZD$FY4IKu9XuYA#queTd@m%%tT?l{8*|?Megskaz>N*%NT?T{E;gsrz*&y<& z?+Yo(0DT&aXbuzO1F?j`RweT=Odm@X1&M(K1Txdeo&1uVHg>?r^6kmKQN4Rv%mo&D zvd02i3`(mB)uwdbR$V^=S-nfcIhYR+GuJ96G5M3;NCpQ37q`#{pdvQcnM4s@V1yMK z?Gym2bCNk%s{CB*ajB*!X(X9$_Mfv_DA~RbN_>?NL8z9hd~m{8apgMFd=EKB$1nrb zt4RCh3k1g&Vmpy!(yG~Z_^!*paCb739!9Z{ioxHQMm z16Hltj}C&`*-Oe^8uLkl9i=tNct3#Eci0;QXHx}d=`X%o!aEz8g&o+@KNWLW4F>4n z*1bX-fMSG(L=;zV-)_+5^7Z%sU2;1u?#hSNU0z-ZHw4W75zIeKY!xZWcItb}L+;RC z&L~id%GNM_@cw1^+}D-(%l|B{d}KJB1c!z-ghae4q1mt^zp`&>vvKg5(H=njD<+

P za6%iKssEMsBi5_n6T~orKOpIj5@_jb0gcQW0Wn{g3Ii}CmW{s#UZBS`1r%knzO@}% z&s~?%d~g0QYYobvW-5o|61~Q>jaN`U`KC3vQel@k0tgUtM!{B~PKrkT{5v&8$ zj9MHDFV6vrrcqi>?7bkcD`w!}vcU%E8c>>fVY&@sEX{ zuoqI25=w@>h)*4;3P*|cpvO-(O+>@&6@KgYS~2j=@4pdX7gR#21AsaF5DyQ(`zuPQSA8TaEKo;HY=#RB8s+Ma0$gCMDaGh( zakRDRLDzn>Wj4*iPsvP%3`sJDpn?xodZAc5W3Pwmch0dRR~`o9b-!m8=CFg-g;=U3 z%1^avsLPsC66ca=(+22q2M9ev1=AuWCcscj#?z`&P#b2MT$ao0sMmFHigpr~GfyfjskyVL*& zATQn~?lrX|15rOAmr0rZc4QK-r)oNjP4}NTMIDK2ivktQd2zlx+A_?WKd5r>*npO4 zBKOlU<@r%f*5nn;06Bta8LT>8QXKE|R(h+Q3ggDTZYMR4T{qD7{a4FA#ZmQE&H~mA zb!4Fq`bLwLSmW`4LPo&$JA7XEwW@BR=?WQ~Pv3X)_CQ*HELkQT%4rK({3#iYs^(Ba!Y!OGBE^mA$H6Ps(PvPQpc9- z9Q!cB5x5brU}b3PtG|!?c@3K`|J&rmpNNp0%S=qiO>da2YsWyGqTbbllqGqJBl(crN?vpZIm;cb%)oR7dkF z4pWYY%jfj#NzZ?JJGYH909lWGt{t<4G0lBiF2N4Vr#fx)$9d~qt#jGmM+1Xa1NGux zD62rp)9NFRa<&LBVY9M9_lNT;HcC3MiX9g(2KA3A6TMW7+x{LHM-F56#Y$d5-dyzL zzNcxk)1oHnnS&m^#Sm1hbl4nb{mp>h0(E`-M?+jt+gJpLEG>z$z9@K6}$EGFP z()xk72_F=gnj)pl6%}obw3W7RB+Z%^q>i0NYHN$RveZFPm3t=T^`BzWug2&C(2>UX z<<0)Af$t$3_yByQrCwJyd$q}d4TLyB2$&ot*EljG*5%$*)v`ldEVqN>?|*2Ak#Arll9G4gWV+1{7Q(B`CO^RvD*nf!V~f>8 zxi`?o?`;mAxwPgkPn3%7?^Jb!u?Ugsf`_Bc**4ZZ0aNcgPe}BPj@XCXj>d=JzSCtk ze1F$>AZB~+!|WGjY~2R*aR=y*0%Og*-FWw;aMWsd?q1mY0|)}qDJL-C{e|LF5f^-} zSC9&j%i$!-NLf=1wZE&^6K3U0oyfa+L3WjOK8#SCmfYlO&DqtT3zOdB?OegKisOaq z0cGX`_+(a(bN1b=8@^8oIeHAXxv6t$i#n@kZclhK08tGz5YOSKifR}nuPC*e;HR=G zD4vkDq=2s18pS2N#70s+uKgN2e|>@<6}P8q;j{VqpwwZMOZO0x0(urnjBit?%J(|G z`QTZPA-d@W1cx}%CcDc{di$K2o$5TO8(51pk1)MUji6IUh$Mraomh~MG5v*m7;gy4O))52 zsm=;hdSFI6sAJBE9Tr!xGrJfC+>stOE)BYOMp@@K(wJ`a69A@828@sdEtR)TNgo1+ zNIGi_$NnyxQ3|B-eJ7PbeOBWh$F%0%ixQiuK75y(nj-CV6I;>wz`7&;fQrzh>j*)F zjAwp)YRDA6s%Ke|WH}?ewP&%56M`a5EP;OLT;%qQ3IRxFPueK5hx?5SIrEgblPMkZ zGw1N`Hy+vqr>W=Q!S|t+p1&^pbX~{b5}$jWy>rvd+I1>}3Ds z7Q?vKsVq%Hz1DA zJ4o`flJwwhlKU6 zgBgnMA|{hG0&11ycM;skfa(gq)XEj8Bg{p6A5IxUu!cuInf%3D4$iLKb01DcqMzS% zWrzArTXl|o77iMfdrCv}MAI6hI^CgF(sP&F<*Xr$n5amdN<#PTd+T+2YbeJ%-9rV7 zL0v|&JQimRPi~>N*5v$PO5K#eG`pzbv?h)>SV>8`CQM()q^AYwSlA0SZ?D&u$b7G2 z#2fG?$9G-cs-ZfocMm0eF+|o%1h>&~8AoNdzq>+JQ6*uYtJW)4lzUyhzUmbIJsW|6 z@hekwZHvnS3n*QgMH}LkZ)s#RDvpC-oAew?vRC#)?Q^Uqn^va@KfnFtS)3R}28H{~ zLHJg-VP)OIhyrFaV|iVDB(Dj5Bs=-x;x1;2Dfzx-68bc}mdSUKCx1#ijwnx#DvF~n z6oc;H=9`uiECG2unW-6SU|;>n+%1YT-ScrMr{u}Z%+Mf&v@HM*NFpkMv5a(cg(mFNDqVh4x28ezrbE zhD4kF@;xW&l3sXWjTI!I4%1#3FX}8c>Zwq9Mv8LsWa5In#Y2J!n?m+5rfORHwy#B0 z?IpZnEBr)2&ral$#9qi)l#9}}?FC;jVsnp+Utm)W^<%(F$6p)(&bpNveG=S4k}4R7!9-F1zI3)%4eg5Gro>KOYFFV zH}$dA(}UTe#!}2l80hFgc2{3IlGxBe|1Z zZ@5UY>XBuvl0-}8n$8o=_BbC*&v98!;mmD)3jRaot33U3bNk5`5Ejvu<7k_{fB^=N z%MW~|<57q$hO>y6P}>*38i%>-QBjM`)XC#WN%lV+W1r_q3?2;7bv#PF7KYk@mu>AB zc~^RJnyCRYtY4|Hrf_cU^UUskWj<5Cpc|U}MPTU9&&)(sB3>4N11rF>QYbjCWg`2|+rQQ3xe-8`JZZ?#F-)k6 z!5GuQ#hy4q8IX-?%G~KkbT-wa%rykcEw7PWE)Uai1h>_riOVRj8>drawLKW0nCY8d z)U)k0c7mDdJ99-A)_Nhb_L$55J0}Ipk3Wml1V#kAd*%pxxAyi?$cD9bAX*jAF~TL~$u5BkgFQC3XVEk)e_ zN}SwkYZ|ZWkmm3otjO^;pSY;%!#=1NiE(DK4W}rd46U3O)%y;Rq;1=6#|&{3m}DLC z5&}cvgr$Ubf+0CXD#Iv9c!kK+z@x(4-=xkzz01JZsMl*r0PZNj6`ci}5{;-JcvL#~ zs{{7H{+ig$MYK}@q2zqhF0!=^4X3P`@BNQMOs3m`=&#-=yH>P0i@-(pL^1fR){>0( z06CzLhtTnGJ`C)(FfUj2%;h~rnV%87yaSe=8mYFD9G|i4_Hnjy4sgPWnJ`PP>PtS7 z!1vf~dk0%3C%6Dfrx8VBsNsm5Ou#AJ)M4=<_OMwxUgap|P4!41?%#TgYLJ4ESLl+g zz~`VCm(l@aw*ryjcZ2PaOFQsfh0)N8GGz>*dA})0`Tq*}>Zmw^?#n=s06~H~Bm@%N z-4Y0{!6CQ?3GUXo26r2R4(&khYsqhD4=dumgK%!L;~!qRE)b52Gc@9P zQhOzvwB5p7-HIPX^qi!5;A@p4m9-P6MnSKVFeQ-%+rw!8z*!No@wVPNW!$*tX|zE{ zejbf^JW9H9T@ImOwg-2Be*ci@J!W%XRIb_PX!<$U9T0Sm1w>Bdc--wtj`n1dEL8t3 zrQf6VdyF`>lDCw112cLE{+ylGY=`pHEy?n{_DuQ_NUf>)_YWU|@c zT@QYBkz33IxBv!bU!yP?gqBVu=?(WfDS|A6R4R(cle34 z1k8lHcmKRd`qlB(anCvI8GAYpU9ip=0%V@0H@1?7tfEuNJB1sX@H>BbGra$jDWRRc z`^vu;*F@W2b*+StWE&NFOha9bw$t*yh2o^5Dx6$AG^L;=3iQW`tL45>w$S;oJU0JT z0rfo#VS$6c?R%`zLWIL?6q*;CX(Vh7fDiQ7h)Geyv51d?WUK>|gQrz;KNyUY26hcD zyaJ88!j`n|rSHM?R$53uip(BXqb#P~t>xBC4^QmIK_V2a8@$uF52O_Z?t`A8S zfus`XbX>&1{O^(Jv|-7G8miw`tg2oWbY;Q!%Ufk zZyX=SvwL6nH-H;=acCUK|6x;+-^C>{(Is!y=@4X?X5Mj_HJs;?oxDbJRfEXoa1^>G zdNl>_;XB+Wj7RYp8oZF5%1a;yBM}PQNcE4Z$|jgSPsc^%nzXi1PCiJk>q4Li?E0e5 zPJoT$Nr+wBCa=#P77_=2d{3S~XG%xPwD$LF@|!eK4l9#)ReK0PCvQdlD^&HY;jKH5 zsBc0kJ~r*cO9<&}ohYtohsfMX>@dcLzow`yf!q!bwtlP00m`lp$$?*{(QK~GUGY|i zM!Q&%hXNca%AfZ#XYBue?N1|?F0c9H>K1{w$^LbM+Ep>(EEL2kR|F9xYqYD3ixpPl z70@D>ZOOzQs>%uQ;0hAHd;9j?3p@g>^5A5Ome@2ub~O90x3?nTp~Y%VVvSg@(X3*M zX=IeqMUs?7W}RImFGpIE8!jVjnn0nVuFkr}#)Pjf&^tYi2J+CxZAh+Rk^fLr8d}Is z1?!Y=-Ewkh|wNg1Wt7F11%@XCSkD5;Hk`}0E4$AXTJ{8yI(M}U74@i+unrH0rFo} zhITCr^P4rVb!Mo32I;nxtB1Sr-qw7Kl<4ho88_p}Vm`_ihF{ERvg%UOY!@H6))Op< zYTsBtE~cNG&Rez%5x!?3VaY)eVDDwKz=OxJ#+@Of?J_`RBPAA+dlTC)V{)cwpWSg# z9^dYtgVfk9gHiSt+va{B39pSDnwnHqpXh5H*fqgVZM1ljn!-Qn97=Re(pPfpklMV?i_044rC*){JRpD5IL}_g%3>Cw zX^XqkGO>xy#u}ko*s32HTJ=6MB?|)t==~YQebLCJ8g%TgH-xqqbmsCv$O+m*ontm$ zaN{Y?9motpul*C+P1MNbj_B;~3cm=Qyi03VaaQ1Ape>QxnJ%r&7)FkEXMjU0*E>*H zN~me+i_EZ7fAQ`-ud&G2%q8%NLA#?4FGdbRY#QwY)=OBz5M1CSgf25ImI9; zpMi1{V6pN{;R+6na?7aR*5qooo5DOq9)PL%Iz(&b0@u~D=c|S8S^y*^l|J*=mhGzY z_KFjw-d&ncIw%YA?LbX2Lg_z z*Xz9YfW%b*v@=7;HNReYZzOMaA#ew${3q>b{Op_aK1lHeU))Q|Mny9*00`5d! z&aT+ep2{}Ab{tgy{@@?uQ7wIPRGc(JAZw2UVFQxGCUnWL!&s)G9gEV|kN62AYn zYbvDCfipaR>rzpY%k6a);;wCZM{vEU?T5s-4HlkfD=jKZhIxL>XTM4eI zt9-pc+SPNVG5Lzba2UOGUT`{ZF1iQE;Y!PS!e$^|L%bxN{<#!w3}kVGcx@8IYhxs* zN)pW|g51;NX~S~Es2DWBRN;G${O=pOS^Ihne~cu>3I`)*Y|0aRFdKP@Dv9^IrYFF0 zyEQ$*8C|bM{4{gs2FV;(iaMvHa$4)O`D~^QkP4D;l4PJ{b$*a0ZN9ai==yrOT8m8f zwKB7ewYB`aRkgKgf({viL%msY43|t5->r}NJeGd9U2Lzl)&V0zHh&OgPb+Y)=Ar1x zel1O7El6zK3($tqMa)-@o*OH<5IPqO+IjO_|5Uny!74!V3}-#4$7 z)s%nPF01K{`I#m-njy25HTw{AYV|usncNRE0UURI?26>>Q4~_6;+edAV8`vfz9G%+ z9VGYSo2VWKc7iSsAqPqxl4q^skYT%Fb1+X@0NrQgftE*@A3!CTwwM}6?zb9EZvRDM z@3Ua-bPRZPHjtCuzS@~*xTnV0yyfx%?_5Eqsd%zPsY&lMMzZbi3M<^*4C1o);Oewn z`T=xU{8;?IzN0otw%b62vD|8J-o|8CcHo11Y}N)7bH0uF(ZGhns(P{UTzRyhv3My0 zJ9t}0onTPlVon&}%<-Vy;t{8QsrtiuXBXmB%y#mwO?cJpu;Wv2uVZPtUN;YKeH+TM zdIpkf(eKP}8eCL!TgJ&2Uz6LyRg11%S`6O%%vNmvL>rHsU;=SWO1E*zP=aaO-xVNh zDDBM9e)813RFI_EN^LZJgxcn7jdw?yoZYsoDD1TjsMpvrxrrJbhzds^mN%q_{*^W)Qi5z#|#5TVrgwbrAQB7@lv*UMJljV0F*s zf1;v}Kq~5bK#d`RsN|FLe#L&pKaX)VVdpY*aSW_Y6lx}PU{)2!OsxN9MtHH} zP`pC*9$ofWxs?Cxp@A#~qbgp@WuV*O^Wzi1b7zATNSOq}%DQ9AUX2{|%ME_hmF9Av zF9lk%_|=={jdyT1tcutrz!WtUOi_y*`qSkcg|bHSc^#&}DZ3xNOMp4D%{=c7{bXE5$U9q7Z9H-gL2u4*eIC>JuyLSfiOp@qZt5)bEN-+TYrTO%GaM z;<}LHGk-X-gQE{{>h~w`+AO%xi+;Bjs*8()*NNbUCBG|kI`tt^VDIv1IE>uwrR?P- zmS<*hyb!T<$Xaw#J1|m#3`TO3s7fh!u2a`U0oBfzZeve4wa4kNkC?Ken_q3^K|KtM zJ#zkvh_SzYO$%2#fWW@T&iqVt*Rod?j;J?59y}Jv@gCn(lhlvPd*c_(^nzoR4;vsdzNfaExe5%ZXJHQQgv14zil#VeyaQOCk}2S*Op_ToG&(|? zu##q%Aog3OM5i5&;i!UgkWE;@^ADy1a;9a=Dn$7dZiRA|+fBIb!Ma6=&NZfMxnI}3 zHgmY@Q_env>`soPHHHvf5oF2Hb1J{`jA`IQMJ^(_XO|N44_*NmN>60(yh9jfK@O`( zXLBE6WD@jr3Zxsa3MZc}*2Y=*yC(u4c zx69ATw|XV(#`Y13vA2Hr>=#;1MxUG~!N)|K$RBKt4Ea5?1n`t;r8y4iP@L zF+%kDH+!|=`O49Y0MAk ziNSv7Jd7g0OLY07l}=!O@2H+u%DX`6qdu{SXByk7zlH)*S2Q|_mTA-RDtHxTB)IA4xrBs;~~yp zSgVAYN-vzpi==1#t=z+LsG1+NzM3-^OYai#@ySE|8I$EejJEL{W`-Jn?4M_xOqTDN zQ}c#LSDFTlkWDkM`VLWz7GzBjkAa__4c4Mk6+8Y#rLJDGTEQU(hO8-|M?BSH(hJAC zZ%Jn8t`D-GJU6#BX-pb`*_Ft;oUB{q?!P_A&3kii)S@BRBRV)y*M!chEB916{1z3A z<5v}Wc)gZv;zz$t{}EpSubAneY30e4gcJ=~@ENFxNmIg$tFm*ja-h532dteogEFmI zQ&52+VyxH7IS-14h(X9gy11+nZ^p}Ou?UW)Su|0J^A zD#O}pIa338rkc;H=(oA4|mPs1dQ+*gYBU+k0)olHQB4?oDh=b+0~z9A2QiV{O- zqem?@PuknLg4ONTDOIoVC!;J=^pA&!xUAp4leqZw1=81%99zr?h(&ZA2 zT6&f?cZ&VCbIn4P<5g%Di!{a%$cDW|Cii{EJMzSamDJkP{6UmrIJ$BFCZQ?&sy9A7 zBn^@32wZKh-0$mt0e2<~d$Y$l!#msbHPw1mp4DUi59Bks5eo@Xe-0mFd?mnR-d@Wj z48&x33ZS%{xRPYIp?ER!<3-10B(pvAhd}lv_o8`^{3Biv9**>Mq@Rd?0)4-jIe#kiC74YKAd5j=eCoNzcsY+EGxh%4HrMAb)qTHbBob z3eA>Zsnh)>4=G;Pzqs_G^XQ6Zl8Hp`l)VI{RI#!VI2Y;Z{wL)lOmRlOGF96u<4}l+6d+KvP8Fg)eESrC`G40>q@8ZGz9P*YNngP| zSF|S9j^dlO7ajTwe6r@+80tg!g>D5&I>eLEdgK~xndS`DEU94ZD}AeK0N!$?h5rMz zTlt92+EX8_`y{-mxYOcN<3KQ^6WB@=MxNXOYXJ z5P$@Ew4MyNFxGfKg8 zV&Pawgpk7oNTN)Lo}1_PUhYoDfF<0yW-hu(6QV_r5tmkFmhv7igr-3D-a%(}LlpHP z;@T?GQr;6(KRo;FI5#%kBa5kofV9n20*Y`Fe{e@4TvC=G1(y-8D8b~gmzpOQ*R5)w z%8S`Dt*FjzFo_qN^F-h(hZ0t*sKG9pVGxmM@}}r3|4og$^|)MQZke89eo*;Hsn9%_ zb{DV;ZH)Oc=jqKaHwlH;>wl7qT%CC~E;Vpn?;P=1);DpMoHz)mG4z@XYU`ceyyDPIdS7J{t25~ji^uRr#p!SDA z9p~phhnBQ*^9C>e?n9GW4~W3*geda^*l)Z4?YD8Ww?bQD-nl{~zS~p5plTHSVyZyl z@D)%175empeXxKcGR(* zCz3a1lHG`AUaA-dlge+D4WvCmVh6b6_8^y>?CxBXWXEs2s?vjETjPz{my7f3WnBnP z4YNv2+&)l*C!NuTDwR7vhM+?RBa81s1l%m&$ba5}ekcz;tLAp)(};`Iu*o>CLV9Du zvW+(KBRxqcl%+id{MFu?ISv%R*c}nxll1-(^0Gjy}SHhaChyUQs-}Cex2DKOWZpiOM-tWclb@8 zUQHU{y`YrsV*mMg?T>;X1ZdHEUjqIk)*<)h7LAvB*S!>s>O^fO$rPAWS~mq1h}RhH z?^!TpCfX=cd|HvJjSXIYBExEYPdKp_@Ni=GdDkdG4o{MUhcs09*P-*qK){Sz0YcBd zl(g$f^&?64N2dT6Z2vDe+^$XcYnRNA`a(y-4|lVfz{6RsFtUVsB|r!F?bX8|#mSl8 zTIgCfC0zpXtNsubf(q_Yknke#qVl z?i3dGRM_6D@a>#6hG3BJc*^{{N&3%?#I`vUjsX+f-d^VduO6C%RAl4o&2_VRgT{s_ z0q6q4+v~fd2j#s2r1yZ^{h#FE9O3d-(zA-QokFgV!4zOR$%q0ot)PYM%=UWcVs;aJ zLqRLWmE+upd&GKZC(^!6pCB2RA|Q4IzDHorpagaJnemf_5Y;~mv)@k^!c_k(i2hlO z{>MW6$pVdC=tGYwM^#j?oC=T`}Z2$jY=uF(^*MLDYy?sqI-`h!3G}3t^(Y*Ol+u40$fQZ$|H`Go|SzIwQ?>>5|9X#xm;oXyH z99~;yKiU{3-U+(~U8`$9sB5o83}!{_{)r-#_^okxNXJI%Y4BhKaFOM#mU|cP@bNR3 zo;hE;%-{AyinoARC!dVSbMKgop=IXbd-AJ${??w6P@b}imK4?C5oWvnj?4J_JaR9n z9_4NRTxP@Bjr$2Df8G3bZf9=GH|?eF+V)5C+cyo*Bg2z41vi23UYHpaMxq_JvzHuJwtb{z@Wr9 zgQZ0I2~V>=@$NnT8Fo;)9Z%9a@Exen&@)PknH!79l&*l&*{PkwE7v{jyTe~B<$s>~ zj_}dQMg08hjRt`1E#ee@bEjfsOu8ESWivH%ab{`L%%c_{>>m}CV2(TPS{h{y*IypX zObI*1@f#UEkumkexf?xUkARdL5X@cETxV`lJ4q(E-wblMKawgGLtHEAf7}^IKJq^B zW2W%x=Ikj2u3PTx%u&0m+5E-BaGr3QM7IqaeVCIIwyjrDjnaCUwcaCWrQ^7%w|i$@ znJX&nY_JR9%Up|9kNEYh?d+F1c}K4PTvJyCU)4B6^8Ao#aF>2sxYy-R;_-TG@2<%R zg5IJ1W=M+XI~wpwCnFO-J=@>vR@VIlM`fMhTtbBir{JN!75mMD zbjUUR>y7e&kpJN(Cm@8Kiac;JX?O{xiJ7DU$4`&T@f~5S)vmmT_xxDKv-_$n{;V5g zQTC6w#>(vLPanQ_7xb-o6M9@u%yq4%Q>83G>=qY0+@p!|mB=Hg^>Cup(R4=awV8-s z(ICyrEvLVEdE;bL#j-o!Y~JZ)#7%<*+@3u?w+$q2uNL@YcDaQR#M3hI2la+&wO^k`;|kgeqK_~#tf+&4^CKKQ;#YUP=d8FkhO$h;hg`2oJ0d6= z-$?ytPNa&##tdlvRsCHOryXh{ZyXBKPaz;@jbK3Ah)I_A(oFmmlg!PS`6(sDn;}yy za1O%oE}Mxsn^yNzIM4AB8pP(ZOip`q)g{DcVT#(Do9m)4)kgV){N~S_4V{4BhM4wF dUBU#4L=;IUPH?0zdAK>acu}dT#T3L*{}(0{94P<* diff --git a/test/delaunay.tex b/test/delaunay.tex index 1837942..44965e4 100644 --- a/test/delaunay.tex +++ b/test/delaunay.tex @@ -14,7 +14,7 @@ %\buildMeshBW[tikz, bbox = show]{(0,0);(3.5,3);(7,0);(7.5,5);(1.61,3.14);(3,1);(6,1.5)} -\buildMeshBW[mode=ext,bbox = show, color=red,colorBbox = blue]{mesh.txt} +\buildMeshBW[mode=ext,bbox = show, color=red,colorBbox = blue,print=dotpoints]{mesh.txt} \drawPointsMesh[mode=ext,bbox = show, color=red,print=points]{mesh.txt} @@ -91,7 +91,7 @@ endfig; \buildMeshBW[tikz,print=points, meshpoint = I, color=red]{(0,0);(3.5,3);(7,0);(7.5,5);(1.61,3.14);(3,1);(6,1.5)} -\buildMeshBW[tikz,mode=ext, color=red]{mesh.txt} +\buildMeshBW[tikz,mode=ext, color=red,print=dotpoints]{mesh.txt} \drawPointsMesh[tikz,mode=ext,bbox = show, color=red,print=points]{mesh.txt} @@ -175,6 +175,11 @@ colorBbox = black \meshPolygon[step=polygon,scale=3cm]{(0,0);(1,0);(1,0.5);(0.5,1);(-0.3,0.3)} \meshPolygon[step=grid,scale=3cm]{(0,0);(1,0);(1,0.5);(0.5,1);(-0.3,0.3)} -\meshPolygon[step=points,scale=3cm]{(0,0);(1,0);(1,0.5);(0.5,1);(-0.3,0.3)} +\meshPolygon[step=points,scale=3cm,print=points]{(0,0);(1,0);(1,0.5);(0.5,1);(-0.3,0.3)} \meshPolygon[step=mesh,scale=3cm,print=dotpoints]{(0,0);(1,0);(1,0.5);(0.5,1);(-0.3,0.3)} + +\meshPolygon[tikz,step=polygon,scale=3cm]{(0,0);(1,0);(1,0.5);(0.5,1);(-0.3,0.3)} +\meshPolygon[tikz,step=grid,scale=3cm]{(0,0);(1,0);(1,0.5);(0.5,1);(-0.3,0.3)} +\meshPolygon[tikz,step=points,scale=3cm,print=points]{(0,0);(1,0);(1,0.5);(0.5,1);(-0.3,0.3)} +\meshPolygon[tikz,step=mesh,scale=3cm,print=dotpoints]{(0,0);(1,0);(1,0.5);(0.5,1);(-0.3,0.3)} \end{document} -- 2.20.1