From e4bc0322a108679274cbc78c13dffe7b6619cf3c Mon Sep 17 00:00:00 2001 From: Martin Thoma Date: Mon, 18 Nov 2013 22:28:32 +0100 Subject: [PATCH] point inside polygon --- tikz/polygon-is-point-inside/Makefile | 31 ++++++++++++++++++ tikz/polygon-is-point-inside/Readme.md | 3 ++ .../polygon-is-point-inside.png | Bin 0 -> 25177 bytes .../polygon-is-point-inside.tex | 31 ++++++++++++++++++ 4 files changed, 65 insertions(+) create mode 100644 tikz/polygon-is-point-inside/Makefile create mode 100644 tikz/polygon-is-point-inside/Readme.md create mode 100644 tikz/polygon-is-point-inside/polygon-is-point-inside.png create mode 100644 tikz/polygon-is-point-inside/polygon-is-point-inside.tex diff --git a/tikz/polygon-is-point-inside/Makefile b/tikz/polygon-is-point-inside/Makefile new file mode 100644 index 0000000..606af87 --- /dev/null +++ b/tikz/polygon-is-point-inside/Makefile @@ -0,0 +1,31 @@ +SOURCE = polygon-is-point-inside +DELAY = 80 +DENSITY = 300 +WIDTH = 512 + +make: + pdflatex $(SOURCE).tex -output-format=pdf + make clean + +clean: + rm -rf $(TARGET) *.class *.html *.log *.aux *.data *.gnuplot + +gif: + pdfcrop $(SOURCE).pdf + convert -verbose -delay $(DELAY) -loop 0 -density $(DENSITY) $(SOURCE)-crop.pdf $(SOURCE).gif + make clean + +png: + make + make svg + inkscape $(SOURCE).svg -w $(WIDTH) --export-png=$(SOURCE).png + +transparentGif: + convert $(SOURCE).pdf -transparent white result.gif + make clean + +svg: + #inkscape $(SOURCE).pdf --export-plain-svg=$(SOURCE).svg + pdf2svg $(SOURCE).pdf $(SOURCE).svg + # Necessary, as pdf2svg does not always create valid svgs: + inkscape $(SOURCE).svg --export-plain-svg=$(SOURCE).svg diff --git a/tikz/polygon-is-point-inside/Readme.md b/tikz/polygon-is-point-inside/Readme.md new file mode 100644 index 0000000..4b7366b --- /dev/null +++ b/tikz/polygon-is-point-inside/Readme.md @@ -0,0 +1,3 @@ +Compiled example +---------------- +![Example](polygon-is-point-inside.png) diff --git a/tikz/polygon-is-point-inside/polygon-is-point-inside.png b/tikz/polygon-is-point-inside/polygon-is-point-inside.png new file mode 100644 index 0000000000000000000000000000000000000000..e9b0fc3a041f7406bf027ba6e2cca6516635d716 GIT binary patch literal 25177 zcmce;c|4Tg`#*l}8T(j<6lEP!rmUsxnW!u+gpehoBHP%P!ixQ49hN$o7FsRZ&is%OsG8@f zbAuBX=cM$X=d$PIW;~~WD^@~o7hZuclq}+QbDP`z%jE5Hd8Jt$cf;Pr#=XT^dTW#- z$<54l{|nRUX=$BlJ!uD8mKO$U(_ikb8ud+C4)0w^m(QWe#^4Q2-sJIJ2Jj6JuQb=j zs|nv(K;j|9$FL3?9yw+pZUbH%3-AgMoQb zUKbT=Ir8~GOEdb1Bj0$jU{LHW;OA`RVw?eZMTI3B$x-j)S(hV}@sgEriFGoskCm?b$VOtobM-~)`!#6qa=mW+Va0&ZBz$KG5 zFNGSL-W41LiLxC|RqHOLS957zIW!?4elaL=xFM5=_rJHdQ9Admz4#1-=p?6G6M8p&X#W2*86@xdq7OIko~gPYv;V}k9zRf2&3z&GEF$#-@pH{j;8p4e1Pd7wDLqprX0 zV5RxGy0FNOS07LV%t~fm;39AdZOG>FN8ko%zWOzVc1p>{c<}a{rc~J=74J8`%x4&v z27>lHDy9v@6@K%b8TpcDVh<;dsJ)9i%jUAW2U=@DO=*Z3QPYIzbCt``)l6Z@08Bpb zncg1bSCxk+gsTDBsH{=cXNp3o+X0SXJ$O8h#l)BvhE$~j7qO`&ks?8pUD3M{5rb## zzI25c5BKgOt`Z{cnl_(jcv~#V_=t&C+cp%%^uOKH{8I|pG$h{G&_Iq&RpiaNmOCxE zG#pDtkT5`q>EQHy=tUYv3y+?yIv5Jf(nuyIg2xcNbIEU%9&5kc&H5?Lhyq8%my=&; z;R*h^HdRh9*2&h5W3SKzTOHZEzGDDSZ(TsY=g?Lshfjeg*as>xTATQRiB4X-Z}L6V zK$80K$QmbuvP%kYsu=|0oZCFhaqAuJqLmqmITl_lx+F2~0)1C6BX}VfK5Ez<1(a@K z#=O?!e}wn@vuJ@^iL)Dz9}08g&b;lv7HZk(yh~cxR3AQH=J#*3R+5Jx{CJX+8iRj} zq@LG63Axo>1qc5N+IaNA!jKeZq#@Pl7Ak>M4=-&e)FpvwtStBp{GykQ}T+5$x=I^&44y%gskyxIjZ50x>2K zz^Iuh`W{f>XHx?I|Hns@Odi524}mLIU(hfs2Jf1Q&ob{AlKpdK0wj`z4fU|E#yit3 z8wJiLTu&?!Hnc`o@ScyK57kNwnF<8~6Bi!BC7>n9mNyp2LgmYKj?K#rv)Gd;hGMJ!15Y%L;7A$KdIh*%Nz75nL|Z zK!Un>im?ugqG=0;QnG}Da)-o#tq*7}!sOFAN_JC&J)No3mW|8rC8bTdp#&Cf2>$A0 z6*jQQeJvo(*N@}zFQ3acF$oaP!o^fbFvLLYwmxJM4BtBFBWo@8ZOo(*dSFC@1-cVq zM1Z{uLKg+OFxx-bsjw_Em^&^QMr!h(*i*ANW`z$6L^y)gULT3vN>T+4SEGR`qN2iT zFpAuH=0`Ke35bAHEGeS?^Lp)B^4}q#2R?W5k9h_z+XEDg@>s{<2T8z|5im!ja?DD# z9i9jTRyj1Uh;3)~s0Xk>bIg|sw!Ye^Qs%_V<^)D1s0)RA=nQp^WEOY!Mtlz$>v$}6 zAbp>?!Q{PtjLl!}kN>&2pvKR!i^NkZK&=I3S42`9#6y+2{czN9@Oj@>4yqt{&Dq+w zf*u8KxwHf>&G83WDl9tIZ_6aM=%H8i>TT-8V>1+ho{;e?3I?p0`lFO@36Yj&oh|ft zcgr?hE;enI?mx*n_To#D*7>jxmsVtn!?pN9EwEJ$Kg&s|`vZ1}e{smAC2!Gs&Bq7^ zAHYv6 zerq6nz!7wePOrPaW4}kYP%oJrjN&9P~hO9I-rc~fR(-+=9ETD*xX zR}L)no%PJK;Q8v1wJgsWer|?f}FUFQj^UKK0KB zR2fJPFH&9O@o9uQCvX7~k7eCN9l)LIw6|Yw(%%tVp|NdDg*VK6QvX3buvd0sZ>b!0 zg=>Qg9N&u~xop*K-RHRae`gDQNU!?+Wle&tn4`qcp=ZSNRhXoit!-u2IX2&R=hu|} zTd7l@718(Pe01(oUwTzg{U>9Y?zS2aKWFcni&d%L88^Tn4B>I3qL%0{^?D~DwH(cG z;^&Zrcw??Spyw3bJbOV=-N^JEx%u6fG)~NCB#>(Z|&|`tJV? z>dOIF8+z6C&lya5Lvz>A)zRr!0sv(C4|@h_d*G8;8yb;;;Njj;fJWaDqYO#5-PZg5 zYpR*E^^*>!A^Hwg3ethBB|1K9CzWz={m5qyKi4c(_OvMKub>!}rnl&IL6T1_Wd=A*&iX*d~oag+EPdO<*sh}{hM6NhZ_V_ zaU|AN2v!_B7yDjZ*rYl7s}l48e#OhAX-xEKA|D4NKM z<3XDNxD$vR;3}~-4MbA8!<5=YYOjs(IAV#TUEMNXF?a`zor{J6;z#{*R)nFt=Z^tT ze*U}9bL4Y@bq*Fsmuv#QYNngPXb+@tQWrJ7 z^K-^#-7Dd&t+2&IT;@Gr<9__qk~MMId_Nj>;%~h{!HPSgCBqb>6pPYNq_2iPV$Q@| z#kD5Gh=73+0rw&M7Ss~bAnB?pmO1+dM5Jqh2|;&QOXVH6?euOj_%Wg z!hK1AUmf&|-76S~e9)CV5$E+k#GJg%*G^xuW4{49yYORIgE%nI3ND@%khAD^URetZ zANZMPx1J*Ehb*a3!eaac!LvlOK-7lsGiS$l+ne@Zg!8biT_e4(!1Q%{V_BO(4yYnz zrP-r7$#PnBBrL*sc%=cO#l57>-f9udigNsWn_!*3R{kD_Z6TRc z0uVC?u}te5x|q>}+L+J}pM|08?fl8My@7@()>Duxwk)0WXaBa(<*(WsQ0D-bVD_NZ=G<7r?@rXvTjDX!;8siCPWac_mj3@6@?zEqDqiXi)Oso@ z)21p-l3VujK*ntz$CZ62q8rBhVxW$j%sikW;0ML?f;n9G8bb)dQCn_} z{IqPGdM}xmlEP(qKy0j{HHU2wa~(bn+HG}=ARulvfZCNDr~*2c2i&zV z4RV8bsCZW#;gAgYd9i2W8eW%&FsbtBYeU+g!4C^ov@=T}!V291y(_sDkyUUzg{HhB z-wZE4Hm?DI+!$u;P^&QBunf#9Q&aU`=?C=c)28}wkhGwb%~jU-&=rh~>Lvq}-h58w$jk}Yja ziJD24HWF_6NGsRUQN$RRyMhXt%{j+;?23}=gJIEL%q8&^1SR5D9gwsAiY2C@Yx#W&% zQSq980?69bna@ph-Q%Pe~RX()@_4& zQH;$Rd%ApEdcRu9O}cvQN+r-~6z&jfzQbTz++j$?2XW8_QC->~ou~N*rBBO|C141* zywKCWqY|u-Vep!8=MVEbtfy#I02!oX_ZFzuv&Jq0FHT|SLO5RBKplZZm!z-+RB|3F z1SZceaTcBNfeZ>RG*0ZSFg3J+#wv5$)kW5#&=HLTl7)lx|44Fkwcgn}HU zMHK$2j<&Ipad=l%yEZiM?9oFe3 z@ZtMD4rLy57-~9*ZEJ7Ww{HCY^XE^YM9UMRhSfs-vv1zK$?z7kzJZ$MonDW(X6c+5 zMvz zd&a-MWu)F#D0^> z@Xwtq=WLp}E`JI}g7~yB68ZT*=snrSi!`@{Ym0}~QmNl3#>b_D;^TX)^sUV6j1;l%n(jg@=EO85GIu!IIfD9k`j1pO`09j8uVhK#pIK&-F4!w6b0 z$`_ExFL$h%wW{JVF*~iCn`&We`?D;?_3=#u5M*C5>y~m84chKJH}QLvZG1?6nS4zJ z_~T#-YUJ2PH_e9}ZJ4KRqprdQdiDedk7C59{66Rq>MjC{u|c8!mWQjWRUm>dbKCfP z=Zw2I4^YFNQ8qz=1fW2hUhhS(A8{L@Z+aGj1kvP6WN7kg(w0$4pU!>YA@~MpWj~|^ zKuPHM!6(Od?B%j-#;8e~&CMh~xk*3h4If|dXp8th+GZq2ZDTh7e=(TP%Gnu(Tq4i1 zS=g}K+SYdTw{%XdR{q9QbHsxH4>c^Gau1^dC}TieY(C|v*6@WhtQ4)S>i>qDsKd$v zOeY8XT2&tSpWKM*H{gtvm$dm8h7C}vX9WdSdU@)HA8Hj)HgSvfs}s+^u{>9|MF-Sb zqw9+`6?q#^DuN}Z0dfAV%WtLo!?I3z!!QhaK!yrH;PjBpRes-*72Na)Z+uE82uUT{ zj6W?s!Q*f5n!0enTTyp;4Zfml{S>a9)eywhS56tzFtNxA3HuV z@jc2v?(M4P#hw?jDxmb5AgR&x#;WFHT;kDqF-lsS4q^&}J%lBxAYge5<~pqIjkV|R ziuM=lnifvf5zFkTcjocer%p(oFn_rz@hQ8(NwRPsdNeni{6>L={3N)3%5)uFca4_dYoy;Nh_mdtj?0nY?Q!!vdYbc6^__S@pjaYHOvIVS2*j2n^D6qiX=HZ>bpvh(gVhKC?q_kc4^=QuHoMb=PdgG9LbS#g_6GOeBx z@vi)BoO?c{@=py4)j6-HWd6 zOwY+Z6H_DX=TzIu5O7eo^E+0aU=ZTiMK3CvF8|SNc#s4?`@U|!!r1^S5XQNoN|Ebx zo#MsIQ?K3JH)bK+{&@LFYNrsK{72P1`@&smagc*2)TNu`t!kd!jKDw=(;>sC0(bUS zok-Q&T9~X_E_vbk)C|=L-+GA|kg65_qBmHQ8hU&5*tYO-3M=kh-iFOF(nA{VovYOb z#O==@-`MbU|G%9pK_P~t7{z*>ZH$b}&UMSUeX7#_b@`f0UB$OU{(gZTWQ(+cFk#YB z;C^x0K)^*4+gT6$K>({iKaUde{yeMqe)zBD8|m}0?HB0nWI(RsIP9w2ji9o z1L(4WNE|OTq5rrR$#*@(NO6K{N|fIttD`)`<%}AX9SM}IuitRk^YF7Ga6|NXT!g9I znXiTRqhBk)hCk8)0c zu!NmeqxvW>vm_W6Cd|E{?dQ*#H)m^OqZi>1K1<%3`Gw zb*kM821}W(EnQm}`XBo|nO*=(7?zM`1xMf8@ejcOKd`(eJU|!nneUS^PP#0})FM zmijl*Y>_V3$AVZRgpu1O+(mMAvi=u(}5uB0O<5`2IW2iqm(@3uU^J5xm{9kPK+v7z2T?=HH9nYCE zw-jz9c7K@s_`DkzJu7_)U3_vW1nljo^t3LC*IXru?gj9(jT^G>ojx^n=SvkzDMn@$qsDuwmK0E2NoJg2wss zlws%e;f%Eoo6UWIXsaz5h`Upk3U1V)VriebS27XtQI$k53+bNh+jAE+Elj zG7$Y^gYNjx4~g**BBaN@9j1^tljtW@LCVD`!zFr;ddj=w+AivCeF0$75@V<*K=@_L zlAM0L8k%{$;9oGOYP3SP479SLoby5Q+vesz*vwRV8ifQjS z_3}G1j4Vw9-pmZg|AsRXQs(K7ZR*3x*ey|$8HC|aekXVxr#k~Xzsrp4`?|6e{@5+H zCxh|!SrsVKmd=_bs{sIS(}4Qa-1=imaLe-KG~iRVGNUouYmuU7yj+*?%IM z_XV8*Ap?p%M`N5nueYn6@(}9k06(~kZKrTrPhy}w zn*vRFk0t||bys}}%Vrg(aGUmOIGY=Ej)s`=cJmX`gHl8?SBoXzfKRaq2?O7zVpK@< ztex)4=sl%nJ%lW_M7*=B^SkX#;LDYSO{glR#!d*w|`y@0Pfl=tkJpI{by&u*bCk5^J7wx6vzFA_dQE51eKNE+i zh=V$re2S3&Fox%=1Vh*FHLGtvIPpYBGFlj{4O%~jaY7r=P$7LIEsMu*;7<^b(< z8K|Qj{J?dCDgE`%N6i$+F+Bc6sx1=qb=n!*|1D98BBk1hKId?Np6YGZZ~6NP#~TpV z9!3WFl$ML%^SP2oaJV->{W?Ob{&W(Z`c?M+lR~K_bzjDTDLx~`1LPg7bdiLZ9D{vR! zS|u3AV7sR#$*A@fYvEZntHtcWF!dVru)k@%K@)|+7VDRdx_&78cWVEmOL34c4dUAA z3H&;2waIV64js((xI4oc3UpQrZjrof_bv&$T*W@@a|d5rbl{o3TKJ<*HTvSotV&Jip}$3s_~_jj{9yo9JiLas1Jp}8PC&K;g=01 z?7wB=5|!XKY|5t?F#GrRubk~zs%;5;lflut)lQDuzh%kaT%iixoQ<4RE`8{YOTzUVGc)dw z-N#<|!@ZcU@ip|XMgPO9_RDz-g9XQU!$@$KDpg1r7l2otZ$opLM}zKKmXxx-KHuuM z=+}S80QlGslx>Q-?exaiOMkDK3ZwLw4;h-^?_{j>M36^f$J9#s(Vss4zj*0fzsf9U z2HI=eFMGbHQFl6CYKDp5hAAGy8wO$9>7lF_k`;c{g~JKPWNaCu@oX@|qXHOu^PzA) zyCy_)ajvra?o;-{IJ;$QX0KHhjd5-0p@<^nt)z0b4@PEis)#%|k!Hl~R=@Y*3|#T= zC5a@1rQUrrG@dGOW}0n#%P*9>%)(;bq4Tos8V!CUuLWa;IS<{kORH(K1$_%aVgoR|`(;>)LQJn3t#n#cR$fp|=9SNA z#yK=>?Y2$+FjtFnJM>NaaJe>%wd;@gAI#Q zQ|7$=+J!B`VcQsCg@N;*&lfWLp4?yM@5trga{Npq@xt(#4#THf$T;P9=T58js0L-21%eY$fQOfjj3hDfr+iySQeBe|fy`hShz>4B0B<@%iqf znc_YUddmDNxLjc;QB`@V!vHp|YP zUGCE(vT){M9bm+t-%ag1lL4)u7qjB<#I>D#etlJ-WBudax%zJM-|7Bcn3$EFV6Rvy zAL;tt{a{x)A1SR1!w>@d)i1F*i3@Ua#ic3C4T<~jiJ=3>LFUHJ*Kh6bI$XJKEXC37 z$H~x0RW?|EA-R#-W(0oU@th}4F$l=6j^1wy*X~D;1aDuihxl@KaYKL?yFd1Y-E(ZFa07D^(<$^irmFz zI(yS&XfGooR4%s#Mm<|x*#cs+*o7=lP3Xo8-`m{hvQ@809Nhp{At*FY)jrf1f>b-b z*&qX)ke0qNOg8RUAyq(BxU!3z-+X;S)QmS(&oOd8FBryjJjXHgF&pmhp)URF^0(K) zM;*6N?@Qs1H5n}YY*nJ{goyw>gs&_KUL_!0e$rTF-H_($wknLR@CstRYB| z&@T!>HyL&dp4#8>+eDJrdmhue{cHke%i9N+)ys`A54Pt@7U);h==Qq;hfA+?Gas}2 zqPKt*n`LL-M$q>H3-#GK~Smt>O5tp%~eXVwbfzCqb=UQ6+EEY?unXlWH4LRe>drnO#I zyACTcV<0o(ht&yY9~&8b5j*_yMfD=c_}bqw<_+YEU|NuvKoKgcE04@*<=yB zmo|~Fue-Oo>z{`)@{ts`g?7Dx% zPKwGZ4Ld0)Zm>wswJ?Kx=Gjr+GOzD^$*G6MWIgM~B<`C8v{6!Q_EjiRc)y(6MdWTF0(TCM|EjvG(7Bga>~zkXNN9Ol`p^2Z6p3z5Hl%qa*lgzVd-W0cLE8Og62cD}S)xT4}f-~3FO_Uvq7X(?;UVlyKB z28?Hg(SBIXPg4xzjwd=DEb+&?RHdcivy`dvfs?ai|nO2PZje z`u)WTO_y@{=DO$Mn~MY$>n1Gtq%DRix=A`)2#2sQ?tuh54r?F5YL{NhUbPFNeyRSS zFTA#)%6&0_0C6v;Ye`H?!TmtP6)ztn<-?+t(r|l~DJ)XW?4oahYc0yMC>= zSS+o1I;je@ZMgR7!WCOwfA$L%Hq&jw$yM9sMLYd|WQc7>B!o%c(PuNq3?Jk0QX;EU zH#GhMsZK_U ztezk8yb3*K&F1buPaMww61{H~DM#*QZdrY{9h4+t-=uLTsw|Svk3Cz0?F2Nd#)$X1 zh)3V+eLp$l0FfDcI96|w5`L?xM^arGb(aWO+vLmCJ^31!Ic;D+@zCCrnemSBYbqAg z@QP{#T$JP;#rN%xyfW~$z7er1U>9oTa-{p1zyxbP&>XIQ4?n=j?Hi{UB28$K!H(Yf z^6V?^NLBXxc>_Y-hmR*@y*Xx+di?3&3y4t3b@W&emjbMx!&df9NR^oO0d@g9{BYHe zaos_h$b-b^G~h&?H618d(zpv7a7~od+rtKbR2xVBdRtYm%%$A(cA~m^Hr$-2_d-hG zOW%>}=oOk+s=_!KvW$rHGN#&}wgoU!f4V$X>FU?qnR{$~g6DC~?tARJ86x7z)f=<> zL6!vKZP61+=-D-*!%N+Ab_i_63mb|CY^XKzQUUSeK7(zRgge zmzT3-YBr1SS8InfT;UDaoQ(1k_8a=LDM#W*WkCNfP=0@Bv#Qd0iucyq z%~ipoxX^!d&326#3?pS=557O3t@n=h8JZdzW!^&e(Blk*;~gV{G$>^?z4 z-3XB8nvJEsXe+$hL&I9GCttBL>wlQs9y)igbKq8!yozqa4^DBhZ+@0oERa!`>qxz_ zEbP8yd|j(+a8o+hs`H^H`Z32!z^p=H88Y-zvs(p;=j$;ZbxDRXczxs#tW8O(xrdVS z(LF?($Qb3nRo@RZ!6|#Ux`*q9Jx{-J&WcTQ_RAZ_#e+vb%6)q*3z;%az~!*K+ENQM zpHlE8y6c10VlrcOQKDpGz(~zOD2p1JOUplZB2F4y@LYD{Ba)SuDh%V6ERrbhz$x>> zOv-N1i}>t71sG@Cs1sk7)Lh={o8c#ME|;^{yg*miaY3aUczJ|%c;XK)v2XterXWlz z8k!x3UZSjf2#Hv|psqH!%)m6A!8FM5IqGin*h+uP5w&7EC0wGUnX7JU7H$v2i4N-n zGX~Zqem{SZkD6b=?o1_zBqX zMzqWg=5&Jx`lJ}DALhu|iu~s{>FW;?kjZwmLf9y5PWAqDPg`gUELFc}mLB5`^7y&! zAD)?vft5q9ZD`EXXalyCU16c5gOdO&#BSVcZTI6$oNS#J_^dE6LTZ$nmw9X$lXrN! z`ic?Z{MCk*IR$Fbk%?fFa9B`jFyZZ9;PI>NVO&zS=?atYA0J?lPw0uc@>CwTp_ zcO8?X_v=sh4IWoP>ZSD2vosAAOvz@zJHn1^cxKigQ%g0teIw#N7{zd4>5?}Q{W{HFX7PIT?Wiuzjd>TDz_^oE{-Kl^ zs;~w7?x^~+!_4KsAuY5E6soUDKhJrG$bUR93sfZ>NqhoOvW_Y941 zQCuUdD5Hue*H?8z9MCEGn7E&2D%(DEESLHU*uh^CZYvH$Oc~imjE--K(cBN4s4F-u zAjj3Lk{zE-))e?=4a*#UQqvjq{l%j5j@i;MW3G>V+bmEAQwB_99E0zz-u6&(?<1m_ zxPBRauxtC4arC7&#OJT`3A-#YR_+@6o+7O;UX%tQ#}*mHgp+P7*f#S2kV#j}{(0hD#?Bz2@n+!Zz)%;;I_q^8<4|v!( zrIi~4*Fg+yu@tBtz<$Xuh&C#_*>pK0kDhku`jSr@ImXJ&#j;|9GWOPj%m_%SVUvGg zgNLGN_49o%VwgxQaIbc3J%l+}aJCoQnD~*&!mzkksbT z^ZEquwR^RZkA5UZpENQ*4ClHe=0xRl0Tx`aE&`#U)(Xw|a`I+)$7yy;FZOSTe5(I{ zgJYGmw;y5G^4sT!#xSDRD0Q`Kzi0Z}dkY}zXo7wl`MQ%?f8B!7QC{y~H3COcAC_Cm zI#Kt)l}mp;iQc<)Epj9xZ7O?MMo4LxGWJrl)ph8}1%4;szF`}MExn!ln~?0=aG}jV z$2E86KyU{$P$IeiPNKJWM>iFneBGVj-Wg@jo*NkIWZac`F=Z6cZj?E{~wKEtqw0CA2TyxXHlRt`Thw?y5F|EyW5O zr~rx6g5u^-r{tC-#wmMc<%0VI>a1>ZQdtZ7+6t{>A98wHW(_zA{z=yR&zm z-mhWL_J99`)egD$*(K6P(cq3-UCgBjo%nAif$UVdV{rxIJ#Ti2V z6;L;NKnC%mMD%4g73X(lbSN->t~>V`g*r?%&9Z}}(%@O&o{UVK#a4dM{T~db0t@~l z=x8AIUNd)k1hJg{T4;8%r;Ih!yz^QUn(F6=>^UP)z#ov_b$?Z}GzlB^K7e8O-A!n* z>)df(J?7n2_^e_8IjCWuT>l7m;Z#D`i+gt zC_X@cUbJz#U7#ZEJtbJrSz?9SI_XtZtZIJR&7FFdA{j3<)%EKsM-9tt{fYjb`sAlQ z&m$e)fb;J`rWP|8jmm?*K%f5*(L@ zmY=#f-nYG2((gjEM83i_{InU zF0g+kpDh!4Cy8QDe93CLqviK!Nb^gq` zdM1&~l=+sDM0u2#37;kF1f1Ipps$xf6nK70&Ad7k-;pn zyq$yZzj!xYwIOC+33RuOi1I%%P1jzJYtEL}wvn?wO)@t>a=Z`$@K4UfvHJ#ede7@V`_>)8Fn)Ku<7ol8^aGep9=O?W>) zvYj`&qfN&Dvpu!hW9#Ue_G0uad$wEbw|Vp3mYDBlH|=NUo6t#!6t@dv*M|N9MeOA~ zHnM2{_eUf0v{X{{zG>=HH_( zbKktXam8z3+M37K2@iZX%~gTC4zZwIcA8SI@_x=8t@Aro zN|Mm25+@h)sS;ySi=hhD-`V_a%lCa~Pf2Zv68H9Lbt}v!-;?w&I|PYcd9c40_rox* zkB1<=$uI)r!bx?G!QYI*tMU>~h{-KuGT{utVj{S;}OuBs&fuDIg#5WJ3=!oV*N)x z8CM1%XRys}U0vj=&CPmDMT6@jpKI3aHhhsq4W=i^4@d z4TSgCa%u9nhh(r80xnNzFTOUFa*Dt!hU3UF051h|14&pNnw^OfWgX(Sp}+Jf3eUzNT2?Z!n$T2p7ycwOvie~_E(t`Q-*Db(y-3cY zU$|MJD@(k(;lC?+fy%__jp*SY{PfGodsQmepF%6iQm`IhwFOa_RtGbt88Ly78^P;& zMb@HnE$wGt|>lnLsc-Ah~NB8mZkz&}VoP7raP`Jji79Vaq zXb5RIms2dA$MF2^gx7`08nq0qWx!B)e&i+5k8d)OdGeE8C)#N$p0NtRJg zBeh?U62V=;)5IE1=s(JjFYL8B_+`w1j#>0A;`(OsF7Z(t>I*K|@cvzO^_>>pu(`2Z zuP*Pc9*_pXt1|O(F{|8dUa!9-Z7^+91+5&8OOfhgdkZ*1nnJ>dF}FDU?)tCM;q~&} zVb5XvGs*H&jc!tgAR_~msr&Y+%QK4vxHeCTD#nb(O&;o61kI|; zrJt|I2rU`(TfrS26YN*Yu0$C7HXrzH4)$0!zB-?7P{fs2Bb3iB$&C_HrVJ{C4^sw4 z(BK=D0OkfeR=pYmNQ0aZl#?ue#;$=j#doLUakJdO=XRH>32}ECV_ur7yE}s4ffWE^ zjSee=*%!2cg9<`BawCqKF-HTMHycjAkWlmBqP{E){WibzjGHpL5WY;eR2;z^GJ}X+ zg?%BJ7#3q>*6*E{dm(i9cTTmWh4!5ty|!Pq5EEjt{*qp}WW8U?uT=BHP$?Zoh-8X5Nhl@~ z=CZhnPvz02E@o1jBCCq0QE__k*tiwleE#iWIop;X;pGc}dfx8ZA z1iTh@**9ZW^uYR@dum*2PspBJy;%SCU-lEL-8V~_@iGWC-6eH6j24T}+G<^M?k(Q6 z5bt^oKgjLoRhJQiFL>NYEK&+qvuw0QShh1&1I_UsZDJ@P$1R}D zV%Z2gk;oX23pYqcJcQt#?tmLFkx8EZ)jbWguM#(t*@xgwp(Zb~@oUIhFSNIdhtA<| zRfU<9U0`>eRpyQ;oSY)@d>UHfH9tG|E#rC5!#&cTMCyI}sw~(DQ|HLfYSv`&fCFv5 zRp}%`t~bpxN;Q|o=Q%8Y?~i5U^&FZr{7(yLdu8FRflxU|_Gn#yl(CB+UH-lF5r61! z5$}x_$z`%qUnPxJUjCDDdrL@Kg zFSgO`zIyP(S^6LgklHrIq9}cJwo1Z^2+dlqdsRQ~QJGlX88gP;k0^38Z1sdd4(&F) zH2g)-Fz)UJ@vTifGh_{lq3@wn#I0`+LY)~NYeZcIpo285WU`T0StXSh7E9rGmG-;g z2A%@eSMs9JO1bE4&&TQRP&(fAJEpi{oEPqgek`AMsL@F={hN`q~N6+X`p^pM+S7vq@!SKF2UL;Xel zJ2Q6KWeTArDOpRl%vfTivP7gXm8DWy%ifHoLdsSo6-BZZNwQCpN(vQP>{24MScjR< zbH?|1J^#V;qxszJobx{C-g}lyv?NBf(s+;T)>AanS#ry$5Y$JkJF=fm^aiFHHY(4E zpd`Ctr7j^&#Y^g4rC@2u!!4bhAG;>w zI~%UR5d-m>T*E`D(C%#y&YYs>ou4?n(&VOa1=g;D&TYB3bjk6kZ?q2%A&N@6rAiyG zudco8uw=ev)Mb-c9~6!o5ZKsBgE)3zj-;;&JtwJrW9ohP>E^prv|K@Qiz3`0%g&F` zn+P0*lZwD{Dh!5a{!vu=QK<;M2o-Zf>U!3B(SDp0zG5F$9i6djfztASb#kVfG5+I( zaFew<7o4M(!c<1Kzqm5zCyU{JdzaTiDVnC&nAyk2pLC1YChI=JR2Yp@ofCvmgl+Qf zJ~5Q0ZSHjqOUuMPBuP&OQ;Lrrs*-jQ(R(Y6mK=A51dFz*$9xiCNFk%RMswqOeRP(h z;%KGPFZgfBCkfQ69uo^PoDQUzt}XjkuJ;-0az1KdQwB`$+TUR_a-u^i26CbLqBB!5 zSN$XXSc0q}kr+{A#=V~_DZb3P{h|i6?draM91V##c(Pw+eB?nq%jmn>WN)?5f92M5 z87t>cWdW!46uJotYEZ&vkqifUaKX1YfULyQw&S%cJQ@zLiLy-Z9sd+(Tt)5Z*NXDl z6O=QEnzS#VU=tq7*w&RUsT%@tc72=We=5~9Mw}e9yQj#W(E5DdQ=D=L-B79c>6XJw^+WUzIC?pD#2e4 zX$}<9CaH+}48YD728%^*+XkNxL8|0UUUK$FY$nKtRTByRf@K*XWaPEr_6E5SQB0+BJX1JB9fvK<=qYb9WgBcdR zATF~CNz&EO@u(462WUpY#jyrM_(|ET?N~KZ@hH@(D(-fLe&X9Q^XHn}H!0)ugm`D% ze1cS8gFlMTuH`s#?OGhg=O(oMK!WM+Ut2MY#GC#MCGdEN36EhO!mBEvtufe_t@?Cw>bI0fRRJ4#E%XQP)8#F2Lhja)(SHPTZ_-k_Lkcb#aamarCkNuvN&O zo+?;+V&+DYxtZbMr7A|$i_bd$us^1>HYrt4J!1`%-i-(02$6$`%7z~o8A zQ>%&G@!RY%HgL=&f$y>LRF0r%K;WCFAHKsJiUw!)Pu=4GfXZGNv$or?9EBlx@@n)l z_oejr+_9TCOGj23wLUqHy(F^g!p2S02+daw^D;}XgI4YVujg_U1-lb4CKfJ(gUx~>3g7%J|D)Yy(~ zAT;+X?;&k_4A+Pl${f5-2FI$AB{Q}qj?gS$It%N1yB;%LJ6r5r$J5>W2gjXK5R%;Bd@>S^0(n5i16DZ#+{ro_Nh*q zDc^HT0DKexzW$&YQ6bRtEusGCf?HvG|L_!WODAYgI8XnUyG#*59)ttVMt!@6X(EbY z*WC3^bO-2y;)EzAj=IF`c3p5wZ@*xIKXMEGfUU!x3Zkh0zj@{X952s7-hKf~r}n0O~m67n83&Z?nqZa&;3 zJKgoE0X1JTf6<5UuxF-M%o1JY4w2 zF;XbxnWb~IP85NFDve$}@jk##cb=YOmxwqCj{-(IqH*L{h!(>lEq22qsX(3t4;lpW z0&(HyZ8JI?j_PICFjrjnm81Lo_j&E`H+->cxz0_T(wZIJU%jofJ@$Zc8hroAJc4Jp zt_Xv;|KS0v8F^bs+l&sayEDsoUAD_9Meq$4yE2WyeCHye{IviJtvPC03faQQt|c9} z`vX|?dGx<6;-i^ao=e}8lOU~S4Or6vTsVD%)+F!-7jeD{I|i~@2jvajeMXULbjQ-A zMBQipWH+Ze&n*w?BBB7$Boi1{ila{qQ&(C#bd`gWp7E&*+tau}@DZGJQivmqL7ucS zFhZ}D^%8{I!GV&?{0Jcbu=r^hgi_ILPf9;n}-HBmSrnYwn-mG-`v#(!g+LunFv)w>-bzyVj1}IY9oMK z9qvCS4hWCp?6E(Ps1~@q&3e3l8V`$I1ClRll(E_k{fN*{0Qv>rs=>t4Ia_lO!wwJu zG2y#=I4Zl50P|Fq%9gInXAgtk@R<@B1Shsd4_I{0#LCccSxYzK(y(MZunz}pST8}y zVi(oO+`DfjfAw6DS26FKq-+05RNMpKh&<>I+*~-Um<*Z!oOD545ysmEd$m$P+w-*^);=L6+wBXn2@oTY}AZL9|8BKJwLwk#<)fGYCeDnY-G zfRuTsQ%Y`!0ids1zmc9>tMtuq|p8AS?FPKa|f-JYH3zj-?ZGC??HT>kmpG6exRK+w{< z7bA4xv4*}$Cvg%KDsrie&~UYdb1sWCiBivr>LhbX1t_vIy^bl%1yGm}Iw*GWy3cmo zcFvmu0pBE5tx&~nMTGBQ#xZNdW@g5&NI`}JmLdX0ammi$UuHvH3T*Hxuhm@kIS5l` zvV>ulM4+@*u+$$4^(Y!pbK>|w*hkgK^uLb@AFEIgE0JsGuCu(kOlwfm6iaiT{CIjy zHG(Z)5tm$PK-Kzz>sf?UduLb!`Iig*V#-ha?oR(Q_*%$4U-R%a#MFYIq@z=LsA@^?&7;P9YRIi z9JX%nYIBNu4~+W>Vtn*^^m0=b3f%&GBSjQeF7a3nb<*I4$0Vxw1itu?P;J3A%x{*& z4|1CI)M^1ieE}ME0@)8qY5?JJ?n{3C%Mi{0l$)Ku zo=)hSdnNguy-yfwe-Hn_FR7e1;NHtI+3Tf& z7uavRwt0kZk8#21`bVblqg7pUy+B)Ij>BcKVU)BNkfWo<=<%UHeEhco z&NniGYsr&dzl*rXw59#>*>S)&N%4ckfsvn8r@%^b*3y?2O^+OzI9Pc~CoA4PE6Qi>p_JAK{9R;#KS}?vxYIY4LrsFwJhp3dm{V0-Xd?HXeys=DaC_SHtb*K zyM3H7SO8L4G!6k8UR5s>t;EA2x=9$CDZ`sD6-$W=H1TcIZSGAR2*km2W_;9Pd=EAn zuvX~Bh1y;WoTuth0N zb{E95c>F^S*~D9mb^It`TUx>sXjfvs z<6Dm|$j9k{@eE<7f%2vL1E1qzzJCoa-x>tlH54m31j@kv51aA7*hTpWIr!v0@ot`( zyM7i1;pTtAQN1_=+<*NKBXSQI=K5+>wExGu8?cqfZDx7}F~jOP%AM*D-{Zye1sQ)y zDU$e&VB?gpF%bPJ@HBkcCa0Jnj!n)oV2e4z@DKP}x!Y;$!vZ<$R4+O4(d$#wFv_Mg zX&oPw*Tn%7RnE(L3|4Vqlf$we+FL?fCf*Ks-o2`2NT{xDA5r1ql8>8@TzXPz>A4F# zHgPZm2gg)9pmi5aYPG=_r zx1)uoYI3&;x5FRINE%6mI#GQF9$5gz0S82qKd4i@3-VrY8&4Y{Nv*ZLd&a7589wR2 z29Lo4K@IHSOk2z>$x@o>^@SM{#19*yG!M!Z*9y%!Nn{kp>f(~t3yphKuOQOLvVw(R zi8{9d?Rx_+?TN&EruvTjDjd_jLc=@+%xqO7`JQ}y^NCs{dHu?h8+mJXuh2Om8mw^S zu@S{gB81Q=sCRv7>%8V|0`lg&>A8l#)6?kq(( zdFzkg)C=&O(p!9WyZl_1yH?ml`K;df;32km3CqoUn95xuQILE&ddpAx$RxpL$}Q9w zM-MDYmfDqw-^jA|@7SrI9g4jd6hOI~C%UEn0Wm%D6N`he?POn0?|lZaE-|NiuT`6mcTIh^=%Dcp0GD~Gq4_^@P}^me>CXaln4xUjJ;LNk zVS3F3EAz8VWXaX>Z#zT``Ilbwx~ciyDz<@1Z9P31MvaT^r;@#UB6?akM4k%xG22s- z)!XgzVl498gidm6#BD#GlkyMpI@X=3jL@z9VSP(rB(5M2QIq>H_t$;cB0UlJkf4Jv z8eT}J-={ZJew0UQxOcqlqn`bQ*{6$T;ty3eC*+~rRBH{)^qg(nI52IZ4qZ&Cvc88| z?v=_V==AfJQl=Vgzbo~y3?}P8^r{o;lMDlkYJB|XlG7R{CeK0jsIEXb&wOfz%l_|Y zJUncX!l{hURgBx;><5v;to?=$0ej}~vO9RR%m0a-n0NC}t^eWW`P?h2B@`>^6UPjE zgYL&qvJD2BoeX({8Lh6JFTAZTtDvM8;liJ+S7~uM9rg6O_Ow1(>V`Q^c&|>kJu~ZD z-pmepl7z!F`|GMWOr&P9oO=x8309M9>$Osdpy24LRL^w0qeK)vkT>OoIgZ14?^NMW zm--qqPEpzHThTio_|5HO41W8l^d=&rU^_Q@|ITROY!D5nd;6w(fINDrw*Io=ouw=HS4{5)b=~>*MWXbt*4RiT-b2IwAz3jj$C6)kE_dB z?pH(D`)kdql8%WUQY$Y~Cp2sde!G95;?KOUMz4oVZk{B1b=>o;@Zgofwhi~w*B~a-Qx91Nym=9scgJ=)-?L^uJGV`9Q^<3dSy>(G%DMG-dk82o& zNp`URgG?1VcMhs~&wCN5T^;te=((4|m(HbQ-E}nWFd5&&s&bobXlP!)G(+QvZ+Q*& zC{u@0cYLh^ZZGXXxMZ-!8`It^h&=i_K?pCCk~&zi)lT;2oCvc_kw#ax?uUJ+p^Zx$?2`iQPDQ>w#sMLQ;p-f5SMR2rU>(=eOwaFfpr;Qg(=h5IHiH;T$| z;VoV}jhr1c@u+=XEa4VcpS4q_J&Bc4b9{jBw?*T_sp!GLoUcDFzX?uk8gh%=u5LHu z#t>xCA_MrXc)j0|B=Qyw{z^G6gyQF8Yt$)on&sVufGSH`z?|U0@vFflmXGseDa!jM z>reeWaVz8V*NnCiEUl*hu^HuE+W-;!Lgi0{LUiP%ec%dGc&`u4i9nf5?*>&m|myUWqigBd~s4;%Gg$Z;Jc%6ZC5X?=hCd@j$>R3K4JWs z(S~Jab%z^;T13HwLeB9%KQ_%v)yP4MO5=KJBK`h3?RVeS_$NUCX-NjnEDDs?49L1wldJG3In?S0CbF__<2m({ zd-t;L7V=o`IIhGn?8O@nO(sgE*aV$~e?9Ps^FIQLvv`otsBxHCuKvB#Xm_}P)0)IA zvyAEpYekfyS-vO6;E%dn;prm>4&pDp!W?^E`&g(NO-z<^Km5uSt|^7_AIjN*m|5mX z>xk!gq~E}~AX;A2y&HJZ1FJ9aT?#dR21+SJAmQF^_=WS0uEFkXf19dri<0=YzwW;N z;h=>Rt0>{j>pwQXJYp%VT!Rp!o`Sm>E+;*+luve5;I8BQCMHE@OC#(Qoq4m{GCsR7 zF48Zhez?ykKbuMX`ullnpVhq9>h(PiH}&yLtAjuFHXI7c*_kVY$nuvK7^#e5Mnfc#UyyloC8mFGK~`~Ep_$K3 zT$%rQwATij^ajZgk2(t9clpgBy&DI^1}VhNVJ!mp#gLd-@`~eXj%H@-O$CsdnVD8D fBL6@Cfe|QA#>710bRWRKfk2i!_nJL0p+@}=BD>9T literal 0 HcmV?d00001 diff --git a/tikz/polygon-is-point-inside/polygon-is-point-inside.tex b/tikz/polygon-is-point-inside/polygon-is-point-inside.tex new file mode 100644 index 0000000..335a4b7 --- /dev/null +++ b/tikz/polygon-is-point-inside/polygon-is-point-inside.tex @@ -0,0 +1,31 @@ +\documentclass[varwidth=true, border=2pt]{standalone} +\usepackage{tikz} +\usetikzlibrary{shapes.geometric,positioning,calc,shapes.misc} + +\begin{document} + \tikzstyle{polygon}=[very thick, fill=orange!25] + \tikzstyle{point}=[ultra thick,draw=gray,cross out,inner sep=0pt,minimum width=4pt,minimum height=4pt,] + \tikzstyle{line}=[red] + \begin{tikzpicture} + \coordinate[label=left:$A$] (A) at (1,0); + \coordinate[label=right:$B$] (B) at (3,0); + \coordinate[label=right:$C$] (C) at (4,2); + \coordinate[label=above:$D$] (D) at (3,4); + \coordinate[label={[label distance=0.5cm]90:$E$}] (E) at (2,2); + \coordinate[label=above:$F$] (F) at (1,4); + \coordinate[label=left:$G$] (G) at (0,2); + + + \draw[polygon] (A) -- (B) -- (C) -- (D) -- (E) -- (F) -- (G) -- cycle; + + \node (P) [point, label={[right]{$P$}}] at (2,3.5) {}; + + \draw[line] (P) -- (A); + \draw[line] (P) -- (B); + \draw[line] (P) -- (C); + \draw[line] (P) -- (D); + \draw[line] (P) -- (E); + \draw[line] (P) -- (F); + \draw[line] (P) -- (G); + \end{tikzpicture} +\end{document}