From 89abcd850d1df81060f93bdf4d601f4b9c2b0fd2 Mon Sep 17 00:00:00 2001
From: Paul Chevalier <paul.chevailer@student-cs.fr>
Date: Wed, 12 Mar 2025 15:55:04 +0100
Subject: [PATCH] multithreading ne marche pas

---
 .../__pycache__/Display.cpython-310.pyc       | Bin 2760 -> 3743 bytes
 .../ImageProcessing.cpython-310.pyc           | Bin 3429 -> 4234 bytes
 Code_objets/__pycache__/Main.cpython-310.pyc  | Bin 5721 -> 2678 bytes
 Code_objets/__pycache__/Menu.cpython-310.pyc  | Bin 5295 -> 5319 bytes
 .../__pycache__/Parameters.cpython-310.pyc    | Bin 3046 -> 3068 bytes
 Code_objets/__pycache__/Point.cpython-310.pyc | Bin 1914 -> 2578 bytes
 .../__pycache__/Trajectory.cpython-310.pyc    | Bin 6972 -> 7024 bytes
 Code_objets/__pycache__/UI.cpython-310.pyc    | Bin 6579 -> 6592 bytes
 .../__pycache__/VideoManager.cpython-310.pyc  | Bin 2198 -> 2435 bytes
 test_chargement.py                            |   2 +-
 test_chercherdossier.py                       |  34 +++++++++-
 test_multithrading_logo.py                    |  58 +++++++++---------
 12 files changed, 60 insertions(+), 34 deletions(-)

diff --git a/Code_objets/__pycache__/Display.cpython-310.pyc b/Code_objets/__pycache__/Display.cpython-310.pyc
index b2170e9591314447e8a13d70e170b9cae774f34b..ce8f04f19664a039fe127ec94b25b6607f4ace33 100644
GIT binary patch
literal 3743
zcmbVP-EZ8+5#Qy<9gjLmC&`v%w{Whhn}~@bxpoW$fg1?5jU+&#7H}SdYXXA0r6isy
z^1S55mT(3N*g*Yf=nC|~|4E<v2kdK~^jI{=Lx42>&62z?`JpJKo&A`Potd4P-Afl2
zU54*(|N6&~vB=mzX)^s;nCzitUjqmxc+5IQ&pTYtjgE=lh^-T=WAOrKckEA@FopG!
z3G0Q?sfBf6KQ`ohp?&U%ny4QcBMw^rNH@>9fONL+apis`gI?IpQ+e8@wdv2qWDhNi
z0YXOmcMQRW@sdFYy<5i;wy0rli@I>o*F;0O=<8xZG|@X^Q7oZv95J!{SANJvORT))
z9apT1HLNd)E8;5prdSsn=oiK2Bj#OG^#@VbkAu^$fxWAb#?<bk{hRza<U{7e1&`Qk
zPS)7{Kn5qCp{y*750$H@VIIotHIof6{CI2kI6Vn>`&f#Sd^ZUnrzgP&dDuPPy`PHE
zPY-%wp6!;q@AOZV<NHw(<-YIGuC%?&&sr5hg}kIEIgj+rehHAXb3WuF($<(7;~*a~
zX@kJCl#%q6)lISE${^{>v>RqwDEvbh6e?SHo+0ZXmMsEgP65ah%8k>Yq+Y;0qd;o%
z7C&39RGko9QnqrcB(6dsuB;rPQEj<Oh`B8rS|U*`6SfI(wlcFD;kq2_)khnV6z!Q;
z7-(;>o-t%S^V}M-b9;mk6$rDD%~@Wf^<Mo27yPj;_i|@y#oS~s_yhKB`#Fb{1}L?Z
zUVX@~X*mV&kPCBzO|7`X%2{t=RO9T)uY`@1K=W$BLnwNf%68O_lC}(zqi`z@lP!v*
z9WrF6pCV*3&->VIPkr6*Ztrv>*^R@3RG-v#d!Fr2(YFwgA(rwjZ@YbWyS;V$E?@<)
zcE@walB2^Z2~p+``m?*vDLUCL%LAGFr0;h7e^H+-`TtC~0~2m-x9Pu7zH-V1#lB}s
zI`|2=py>q#z`oa1CiYad!f!=9Q-rC-<LKx(%yM7*TGdOBDHEnBhtl~VjRR%t<55-|
zCCH6#8mCg#zW99qq5okSu!={Q!d1xNsrC$Ql~K6fa9Vtme{5JkS$q<@W4f8pCH1R3
z$#n5yJ*4$$oWh3GX|M#k*Stv7xrAB2l-NEcd>b4^_S~ql=govO`j9S^t~!<8!2sdT
zdXx~&=O{Kkq|jqiwubE7q|$?6x2W8B#y-l-KxUpLYv59=h{#aF=TUN0xII%=LPf{b
zj?gFZx~M!Tu#^Myo?X_2K^&L-zlL1xq9%9oXZ+dv&)G(0+8phrT0|92+jIkiae3h9
zCKU$QWfi5Nv_)P4m1oNhbaIn`E{@k}^cDe+!0b85Ev!+?$cHzkO60^~6l60Ab7cle
zuB@j~B2?`-L~!Oa3ey45y+9G4{Q&S6hAWP)NawjRq{HYxH;1?^aT#BK#m?E#zy-|#
zZPc{d$i%TYz}JDlJA-$CZxFs*1wFXjYE^SBfa@FJ3Dea0MGcoUTn256s%S~EqE}Zn
zT+{GMMWLl#g|ug&H6U#rn2nL4d1=0h`L(I}^=kga(FgI1{h8RLTp^dNky|LyUg=yJ
zvJqY&#r<Lw(bqT%%VhVsd>53Gf~PnzN-}v1U>i-JRg<6nW+slZ<Dehz+>6t05NDt4
zjD<;JQ8gT%e-M|w^vsK&N#q>@x;T9>rpn`)f<+_+TQ21eO&Syfe(dM*WGKhOgQ?+I
z(s-YeOiq|FtT?1UX2vj<yR@5|!7W9+K`$+64Ae3qPXc)qC4Tx{NOt`lOmeRRsx?J1
zNCc6nh7N9BF_-jE;@O8=E)Lbg809}hS)dFo-%frUWw|~BWous-C!^1(cy?%3jd~w!
zSsS3q9n(Qwb@;l5Z}XcNxAY%s!S|CV$%MH}nN)pMR^7)!b`xN>3=9n_2FM!R`#p>9
z@v0cCgSILLR6eGPL7PyeZ8crReyfW9c2OwiYQ*nB|2s4tcQ@y62XbSVBE0%&Ooc$J
z{1FC~%2cy-?J};hLwcZCJ$q)w5GKs1jm@z3i`cvhAyOMuFRI&|LArR`Pa}~Z%Qk2c
zC;D;t9`WhYH)qiUAokF-MIZ6AwV6yJi~MI@l3IN<rpKwa=^h5SOX$gM3~ee*dS(pG
zshK&nre+psH6<NS`KpxUSFcv6`WeRZbAa+B?v(w9Z`7aE(5jH1mpJ{c^0W0BE5<Rs
z?=8{Go$fK;SFZ1$q+$@$xas>(20>h4B)yg83V}5OZxf)1lN8PRqL81`h}4$kK}jl1
zT`1bgx>A`y&<SL84LQuAEU?g)(Cn7!tU6}Xlte|Eodn2U9|oW1$7yo5_y_vovHK-f
z@uS0Q=p$F|AL;ju{sE)xWN^|ymH5%fq(MU5Y;aKiPS8^2m$YiiLGmW`lyk3e!6#Jt
UGI|1O9XYa<FB#6mRc`(KUv^PfQ~&?~

delta 1104
zcmZuw-%Aux6rMZ3c4l^0*VQd`)qY^$m`b~@Xk~?2NfZ)D1QHCx-f?$j+*!_yiDro8
zTMs4owFr9a$%mkxdiQS_=&6U;m;QjBy64VPA`Z-V=H7G8cg{WEosYxEg`OarwIu!&
zmyT<_rX>A5{4hYq53ddu<t2&AR5_5S@>*V1C|QwgwT-dMhwlf;^TTh`Q#FaEKan*;
zGc<cZRt?%kyAPyQljdj-w-(LQUT)L0k0%${7`aSB_K1{7ioGIth|a!~$vv4<F7h|b
zao8ohl9M2z(uxEM-?ZhpXS3OYpz4L8N1ZirH@sLA#+E_jA&@~x{R4x4#g-qqooIeE
zDO5S=#3DQSdyTN=yW3MdfbGc!JJQBRlS+`rOtl)cwm*}E`UETcqZRcmj{u7m^^mCS
ztv)e<4a8b2Xf&hKEp$_Gw;b2^9pMgh?3cd2*cP?4SgF1!$9lB^Ro@dQh*PZ~bU06}
zRRcc&C}6D<4dAkmL*dJt)D9_kdd7prX3dL|DmH;$4D3b_$v6(U#9@HVnq@M~*3Dvi
z6gLUN2zzJtci}qL-Dc!O02kO-bC!&<-{#E7MRZspr>}dBT0OEA5V;Ak1#3tzAx()@
zt-Et#8dl5YA~}8|j6~g73+rynOS%z#B?^i02v<M*VeLO{<881t7{HRM-)JUtfg-N;
z#}Ak9I~7|My2QE|X{lq&FoZpvn$<Ml8)rx9m(SYbq}Tb{P6>Lrf$`$rAUmiWVr{EI
zqdMHgFeQ=y96Hb9p5cy3wx8K~AY>qb#cVyvn#ZhL96IeycWmWMstOOh#ul>UB*Xmd
zl|8(!AnqCd6mT8^WrsNgtOHmbFz>{X|7(q7L?J@VG9-f-ilOpX%PB_QP%;XLL95B2
kttY6K7kLmu7f+}N?^(pLF~1SeP2anX;|x(m!A|n>U!*?ZYybcN

diff --git a/Code_objets/__pycache__/ImageProcessing.cpython-310.pyc b/Code_objets/__pycache__/ImageProcessing.cpython-310.pyc
index 08735fde6bd45504c90013cab1f8dcb071789803..c99760e2bcecd0066e7f4f9d7b9ae4529e83bce2 100644
GIT binary patch
delta 1979
zcmZuyOK%)S5T5RN?(D;kNwAH<Bmo(Qga{iF2oflYW1NSu9n8b{q1Ae)cRkB`X5BM>
zYDSCX2mulYYxn_cBo02JT)6NDIB-O$??~i`IKVAb^{k1rVMbk3U0qe(UG-JX@6UXF
zt`roDwgS)hfBsURJ9AKqNaJ9CX~{ivPgyLwPrHNgExAMUiZd+wZmn19Y>o$27KWZ*
z7j~<{E9)#`JglndrTZXHVNAjZ`+>wHR?13Dfs*tEa{D|Ly0jJ4t2nCALe{KtG~+su
zBZZskJu=;wLk9*BgBnC5>96FaHabR4>HI7(vC@GJ4haFSL3jb?^iY{cxr*N-GUI6C
z)Mm@AM6B$yov2*HW6P~X&a0H+3TuHYPPtyK#yIn<tSfRT$K8ef$m&&Yf+Qmrt`+Jm
zDp#7#@+y!)kc23<i9sx4rFRQYr9Y{~HUZi3Qv?Rx${YL!j7t*Y(u77z2Ljcg5H4Dy
zhcr=PhJ(7Qt9?Tg&D9e<)@~>(?<YoVG?1H4%t(*ThOti)E4E_&GmW#@O7zH#ERg41
zeOPJl(`7BmC3cce3ULlx+KqfnMwF{cl8f_?&GWG>=Y^QcbvuTTg8uOw?el|*Ym6wM
zS;)9Ltz(Xh8>1V;pk3^gF!YW&<NX22^4bfKw)Y$&%q_-OgOG6y$OFu!(<jvG)`T!P
z3%xzYOCS^adf>9A&{u;U77D%A3@VY(s)1h<>UyOmRL_U`&hE}G*QEZo=SFM7SYuv&
zEfTp^7Dh55Xw=$u+Qlr9IiGEpGhN8(cDbux%=UIOU<ebYo6RT`ebNtZ>$wOEc}Q3h
zDjbYsvIX547jzfK&IEiXdeFfOp!1xfw3ToSI8D{a0O?mXYEhfmfDnxgk^b)cETNy%
zzwP|qa8IFK`VXVklQ_bgW4TBi-2?_J;ZVUk=nz*{L_|A?AMIj98#)Z*P+g`8NuUxt
zCKe4stYd*nu45l6vWV1lkxr6)`U8DY=L6t26?En7as9M7+v?U2W{QsjaWrnEE9%Id
z$4i4F(BFa)VifSkLvZJQs*$~Oy*GTK^bQ^lzxx-qrmT0kfF_Pphe(7Rbt_ZPO1Wp_
zJSbjIN44oISAgr<LA!c%_BT=9V>JP?DU@GLztes^jaL_DWi`aJ@waiIl=}L@J6TJR
z8<%lS<m$Y#D_Q;q8X3_VAZV@E{{>jPd0#bd5KG=f<ytyxo*zPgCmM>04W$)?bLm&+
z!ssiwh~$VqK)~@2fH*e4j{HFS&|JQ72_>ooIKK_NP<h~G4sW5BY*Sj$V*YIUh4tm^
z918EEktOrX=TRUXeu&&hNIpjL2@-VA|0iBTN0$>T=}PX~%V-U491B>+txyd%{b(le
z7a0%u61rGG@+lH|U>z_sW?wtqlZ1<)P`$rrkC4lEP<IB248kmMj+wb1Soi!XzuFA&
zKQ!s_YLoF{)YQ_S^Di4RqOYg_<i~p5kAqS(ohV!*eQ8)2Z{r_^_aQ-yO2l$R4@WR?
z%vg5#W#sT|96g-KtUNwOm}4_TCLEGXiC87eutqG~QsFgmR>(;$$H;D>`>$=Tw{~S@
ZgdJ8nW4`Ct0={wV?}?4lsp9iQ`xgjvz03dr

delta 1128
zcmZuw&rcIU6yDk2-ELcH$`5HkAqX}Gja3vBA_fV;1Dco^gOH{y)3T)9ZDtoDri6nr
zG2F=L(WE_i=$VWD2cEpU2NMsP82<z>zBj9&=x*lQZ)e{7=FK-V`$J#)(|#&tN$}(s
z-dDe;4$>i6K6v(c{()5Jjxvk&a+Tg^zC(k+^{SE8D6?{%hLi=4j9I@P<k;q*1t`}f
zO{paDDRQ@$Fa<gaa-;^dRuMlPiD~=|Sx6cfkBOGde~__N4JbCDvjn6mwLq&)2r|-^
z#8+MyJ)zQ4o6@EhDw{eqqphsSyYj9Ak!DkFlU*E5w5&GdmXb}CztZM%cGR`iSTBdP
z<k2T#se;SlAGHxJQk?A~m-W?A>v$wm9lx;y%Vu;tjxA_Rg}PXl@9Fs>*2)Cvz#_X!
z!&13cE3E+}p(jWKSc*w3(g)3!RsKOf%fISl;~lb8AS?^x9a%_5nkXigJJMtci0I|h
z#=^{LV5}bi@^Z-Y2q#MTy}ILyF@p{8cgEYC4Ky;!Yr(o(sl*yt{@i>-RQ}1#5B1=%
z9&RuiY@E<#xTyn&{fRro6eTE3;T3DRPndC3ZDgPW4L>-?Th^mN6Q@S#$lrRAUjryu
zY!tc8dy*>`(4c}6dwLOgq%hx&Cm+Ws;j8L5s5io2CtuvVik%afWHMY1yN)0PCy`Ad
z+(5XAfb#$KNkhqEk%#un3CxDm={}`GGO`_i%L|u$Z<#Wm-9m|Jgc$@;FdPCtlbX%_
zZ9c;-pFBKB<;lb)j4dJv6RrR&7_oe|?t1f{Q}gjk&AH5}(MWN<5FGuSKCcT$yLl!v
zdQ!d%L~irN%q&Uq{mkV(ygjTB0S^fqM8JKDOP)oB6*0{FV?U2}i{Z^fg9AKHrj#b8
xYTBj(uVJQ5-A;&zf*#kcd0X|yj<6!K0*4J#>bYLUXAe;ywf>oeZ=O0s<e%|x;&=c6

diff --git a/Code_objets/__pycache__/Main.cpython-310.pyc b/Code_objets/__pycache__/Main.cpython-310.pyc
index 68af849b8fc70a0c48ed4b41d9d702408da65197..a0b1bc93be8307a1b2f8d23e2810a75c30885253 100644
GIT binary patch
literal 2678
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
HvA_KeGk(Ml

literal 5721
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
E4I4#6;{X5v

diff --git a/Code_objets/__pycache__/Menu.cpython-310.pyc b/Code_objets/__pycache__/Menu.cpython-310.pyc
index d58ad8dfad2736a4aa7de1d20331852235f347a7..ce9d7b57e75225fab452216fc37fa6b650f79b01 100644
GIT binary patch
delta 204
zcmZ3ld0dk>pO=@50SK0UJeR&`BCjl?%|z`6#yJz$OxNUIpq|3NkdcugRiK$6N+VTx
zf#yO6AWvg~7Klz^3<hIOfz3&b@7NiIHwSX+GBVDYT+g+ValvFw?njJ^H}mjBF)}XS
zoX)Gt#JFQ}FaK@E1Cuiao-uBo93a@wcy96o!TG#`K<kS|fCL8v57XoxAwTva0U%FP
xd-ENk7)CbM;+)jfg30D0W{eJ#^F*XrSs3a$94GgRNO5tovN3Wn@-VSH0svw$Ht7HW

delta 222
zcmX@Exn7eupO=@50SL~-ok(w;$ScceG*P>Oar(qH)8z%48KTrvg%@ZnWME`SRbQY9
zqEi@y!B~@ja}MJ>c1FR?(VV)BjI$<pa;;>XH`$o`5#z$mVmwidj7v8c@~Sd1Zks%v
z|2E^k$;ATC7&lIi66|L@Gx?R^d|m;drNtsZf`fsFaq=`FKPFAB&98-G7$^IQm^#^k
zB{&#47<qu0gHZs8S(v#Pxfq3*8R|J4IDjlJAfJO7#Nq)$1x7v~n}eB+4XB5S<q-ht
CA25~x

diff --git a/Code_objets/__pycache__/Parameters.cpython-310.pyc b/Code_objets/__pycache__/Parameters.cpython-310.pyc
index a1fef98059f7080b27dd78b68da050f302d94867..b0b5de2665bbbec468cb0efca8cf3ece29f80928 100644
GIT binary patch
delta 725
zcmZvaze~eF6vuOyOPjV7#6=f}ih`-wY8CNE@wZk%OQlnTP%0@RHf_ANgR|l;_cu5Q
zDku*6Pq?^9CMUts-NE~&N`f|l@4b8PbMM`|yZ64YzIY=Zk1F!J{CqyRzlaa)&B=+S
zSfr+y7-@~z#3VK~De3rCQ}yD^)N+cYTI@`**eNwb7AY!*_JM49gSuLwaaeD;F>fe4
z6<)FL+7Bv;h$P#MMI^;LBF<SN)Q@?;xM9PgAMY!BBdU1Pj>wD{4!x#Ql5knQVpk27
zPXo`wqd6$UXW;N;7S^~J4VOmdrD;$;4o-C%%`56J46YE@;r#?)2>|AkkVQx!uSn}V
z*=0C`=tMVE`rOz-wN>^uS3a2nv?d<)Qd)<(BIT;ng{z^ZiO!G-)&rOkOOfTV9L!C~
zI%EqH*chg$fUD!%;x<zBnvtDnenbD(h{5RjC{h~CrFF+;&12r;tKc^ve`|=BXlcbO
z;2qEs7@zj*>>yBp_#5=Eg^7ABvBzZC2=gQ;3Q-|LQsgPLZRdpN;Q-bxi>qhthSjcB
R7l<U9c)q&QLv;D~(r>~xj`9Ei

delta 684
zcmZvZKTE?v7{+s#OB-9exKt2_B7#A*wpD9Y)cUW2);~BkOHopaXxn(LgOh{eE;slY
zIts4ps(u0q4h|yt9UQzTQ4*{PJon!7{_ef^O}^qE@mM1kizxExD?C<nSF!%}Nx88U
ziySE?R(eEg#3aP?s7c+NYO;c2sTR9XEOt&!%_6&sp?#v#ra>HSyKzu&-CW+PL>Dt`
zC#uT?_e5N?L@17ZT->w4(2x7c-Ut=X+9An`$<WK_h$I|V->X#&l}`Ylfuq@|%(F0D
znL?Blv*FUvv<wZ(li*al(QH%yVDN;v3-2cYO8_uWL*^iXx?({u&Mv?VqGSJ|(sQEK
zN~`QPS3VsFv?QMNQZkG%FQx5G;b<5s<t^#peE?Hprz=0Qim(7#hO9vXjbWRSg0}d&
zc<9=7hmn(~ep4N1L?&`MjFJX(Xx(;L^O(2zBKQ@^-#f&6q_mhr#{EF^h<w_=X9I~X
uh~J?9TU2otO=MM>HbUG0MIi%H<OevZ*{8e+14Ksw@fz*byNNE}9{LS6ScE_T

diff --git a/Code_objets/__pycache__/Point.cpython-310.pyc b/Code_objets/__pycache__/Point.cpython-310.pyc
index 9439b4b96538d8fb0358552264e1412cc94e2503..8bddbd546715215a73f05cd2f67bd9f319f53228 100644
GIT binary patch
delta 1041
zcmZWn&1(}u6rVRUyWOT~OlnY5zgnqjS7Pf2h?jyO=&3=>MFTPkyPJ|WU(7~nLm+62
zRq#^hC_;M>jDLp*PyPXmH~#{U_T+n;Rs#;a-<vlxZ}`36dq=7F*;0FYI>B&#`t^PN
zvc=d>3dWbj;2v6d1>qs{nGd^YJG@L0_XS2GU^}7=zAQ1<^7b=1c(ecPWyL?Y%gU$x
z9G=cb)}wa4)%67aa<XX8(e9&#S%f~UL!T+u=dlN$mDmu9LmqLpg|<Bukqm=IErP8G
zw#`#`FhTqrNSZI;fo)QJ6B4G!*C1uS@y9S@&Wm?&#(WlUVb<J|n_Sx_BTw71*?tjR
zG+$)}=FL^B0t@D~wZ^qDKdcL|XntF-;F{^%IWy05gD_3(*a164j)a?{#58etL6a~p
z*AwU>t3y?4l5_-9begP(%CFaIfeu>T>v$4UY8rYou_(*q*F`rSIZCyv%|NLrp;WW&
zo1y&#@}@X(_O1rZBnuZ194wv71W1tpjz-=QjyyKuh@^-!uqoLACXCVohRtGSzQ=0d
zgU@%Jvham3v0ZYHNmjO~k<nDlPIaof+VpTX{w~^+?$p5W5<-{lumkAxzBuH75@8d0
zUm^->;YcVsh^+8=C(t^H8Ihz4Bg<<y+S;{Z_4G1cXop~uU<F|a(WFvdqZ)=v{gX8Q
z<0jsRHbM$)NI)+;#&=n%daK^WR1zy*R6hmucRX@=-1x|KgMGkBMi1x(dX661ZwU0(
z$4L~!F7`5Gzb_H_)t)TOZN<2~+H(qXaV@Jy;JR{D3TdQCthf}eGc<Yw?5++vTB$pD
z6Hh|^KklOkuB{g-dx^j$AnEjNglPI$6)$KsPLzqq?gl-fvC{<vieil%mV~s0XZS@C
S$CZ@O1)Qn8Lo`z?yYdGQMb&8l

delta 430
zcmY*V%SyvQ6rDSh$;(uw7A#s(EC>Pd8+<IfYLIp(NGnM#C2b=UkyZjeH-aE~SK`WL
zKfyon4}@&>7u<BCH(f}*!?}+$=g!QXr^0ylFv{g@Mz&meZ+{EMKC@!lh-2G?I8Uy^
z0v5n6;f5cufY+HTeB%GvU&rNR@9Kgi#Z>M`o&KpWr*v7)344Tija&i=Yp{g3vj~Zp
zM4o6=iGbDF2s~Fywf<4BmGZ`bFifQ%btC1<REt~PW0l>U!XSmA(kUG=Wn&F?XG|(|
zFlpKN0zR1d10gsV@+!>Z8?QkD9dQpud=__5!m<`xu22TGDHA=pXrx*%I%}=sNNYkF
zZP|nk3}w}FxzaL~#2u?B#Yq&q_#v-XHi?Y0@k(%>n+(52dky*o&z-}u-l3Pg@&!x`
f%U&m$$xPrnJ{U`mBNPzhxu5{QtPMRoCeMBW)^%2&

diff --git a/Code_objets/__pycache__/Trajectory.cpython-310.pyc b/Code_objets/__pycache__/Trajectory.cpython-310.pyc
index 074bc8f3824d01f6628aa6e2931e66119f1012d4..6e420dad93b877411490387262f423ac887e6b80 100644
GIT binary patch
delta 1136
zcmbVM&1(}u6rb76=6jPi&9|ioEn<XfmC}k-rM2}Sv{XG54<a#>h9sL!I=exO2|*&5
zi;4^=^wO+o)e4FqM-PH{_2fb0Um$p>7eS=xd)p7NP!H}fkKerad++^r-m-6oSBKTI
zs(J}L55IrNExl0h`WgzHJg{ZhMpPoiByDPu+eay3lu4RYlIxVB*TLi(wIskw!Fhws
zQRZOEb+_qik%HUwfb}+MQ<@-6YDb+rMVX7andhdXMK1apvxE@`tfowf?mk3}vCGg7
z*Lm1E0wlkwv{fvRjS{2~K+L>|EU7Nlq;}9Eb&2`vGDNzJ<rZmo*Ca+0q$V?8jKqmW
zArfl$Fuz5a8Ye}<fmQIa29OvnI`}e_2{XEx1}X5Sm_9=OqwGdi<Lag;zPeph%of$y
zrV41FYE#te-=ZL8o2Z@2{;R6--gKFsngqk56XWDUs1B1T_}dXPT9ayy1Y9{@A0i9p
zX~8(=e=u^6qyp2N!e^4A9pBlsUYt#HJ+J4)J5{3@F&LPk$Hlckr0)c9_&zjIG%+;e
zU@{0!ir0aDe@E7{CLaVxDki=Lb{$UY)ly~QK&7lL=;cyAt=X_@<~4(l0<GgW@}-KF
zoy%)xmUkq*B6bI>afL^)sLfEcykTZL61&33#7eNYYd?g%)DLT#_O3aVS097@5}g!3
zyN@|fW7@PB4ejZgL3jp@ie^fbLq%$cFQGMhOMLFR0~y6|vKJX0H-jE&J(J~5IHu(F
z_BmmN`{+IKHvF9C#JsCVNkVi{v?AYVUR0xlN)gUWVkOE#8lWc|c_qMHw-eC)SR9G*
zC@SkXjCpSIA&d{8so11Ez^CF<Y(<>{l#<rF57{w%i)Z3dygk4%0q3+nEScMmEd!#r
zf}9I8age?g4-)s2sF9-%j(xa&ExQp#v4Jp>dudoKCMSDsg<hk2slv;dtYPp|$ig28
PH^r~ys4^0wj^BR(ng$Wa

delta 1084
zcmbVMO=uHA6rQ)cNs~=BiTO_~D%gWPlvdCR(uzMVh}5>|p?Hwec9J$fO_SMe>mebB
z2rWVp87O$MyL!+TM2ZJNdhqDUgC~h1c&-Npul~H3(poAaxXXNeZ{GLbd^5A`m)@;j
zW6m&ihR;Iz_4LxFvFfX97<qB1I8497n8j>x*xl1WOyOXudCgHUQuD4QmIbbG^|r@y
zFSC4`<w5i|prH(~2DGx;-?H4r-Mno@TV~_>7~@RCx1rX7l{_bz*|!M5=)HksnxV*N
zskWcm(?ThhH;8i&F-NIE73_e+YQViU1v5d@S!Q;q3S3XIs=~bqmShfK=8zrcJ_ooz
z$qG!MDzB4<>jh0X)jHS_uJ4v%3GS52&#?b*YcA}X659t&B@URXw_KrYpQ~-$+dflR
za=_HT+y2?rd}X;UPZjX8V1V5W*Hm27XLm%cSQV;j3XhzQkC=n^>ELx#zH)Y*bsEF+
zlTn08IUE>;ez_Ki9XW>|i#S0LCrA)nK$s+QQN9gyToHi0sg^R9=t0&QZ+aFdL@8IA
zHk*N|32SO*d@uH!x!H0tlg$;ajA$yQa?^KhqEr~$(aVwGd_)s5>gOuvOe@n=_$_f>
zeh9V)$b=377>4#AZtb}z)S<wD><ah0FJnermF4j9&<N2{0)t>kJ_;8=$YA6<tVknz
z4=dK9X&99+qv>N=l+Ze}IcsNkzqfc6Q>*e@^ciGjr7hx0V|-t3#XiG~T#xs-@)$pm
zALBe+K(?;7Jc}Z7G21Gj>Bq8|5OH$X)Xa*o#3{;m5zMtjGe|e2Ke+)z@<sBfi`+kz
z?~`^{g+z3&E$CE5Yhn*@VlOEw@=2;2Hs!n2!w~rrw6>t$Vnp6aUxJ8ylOAku`OwYz
b$+DQ6%9y4YBnABpgekiZ_qlq*p#A&>SLg<c

diff --git a/Code_objets/__pycache__/UI.cpython-310.pyc b/Code_objets/__pycache__/UI.cpython-310.pyc
index d24001918bbdac43b390957180891882d316a121..d26ef227592781f64a23482cc23af63b687e5f37 100644
GIT binary patch
delta 137
zcmdmNe88ADpO=@50SK0UJeOWPk=MqBIf|K)A%!7@F^46J#hoFAC55$xA%(S>DT+0P
zF_=M<?IlRLpC;oiu7Jd%#N5=9)S_Y_k2@egGp{7R03<fqkXv-)oHG(~Y(-)~#YId&
Z;ub4dK@l@ZKpjM|Og5AhpFB-c766<JBXs}(

delta 104
zcmX?LyxEvHpO=@50SKhsPozgr<h8M5ieh49NMT4}%wdjVc4tUoNnveaNMUVeiegD&
z3}(<|dkIqRr^$GWD<H8bF*mg&wWt`#V-3j9%q!X0`%r?LwMY!8q=*SfOm2{L008rY
B8C(DW

diff --git a/Code_objets/__pycache__/VideoManager.cpython-310.pyc b/Code_objets/__pycache__/VideoManager.cpython-310.pyc
index 96cd74133fa8fe645feb42105a8e077505bfff2f..5d76ee88c89b7894e9d867b2fa10899bd4c1b2e7 100644
GIT binary patch
delta 746
zcmZvZL5tHs6vyXHCe2ur+E~}Ex*K;7i)7VBVGANfSv`ng4_Z;ELI|65w`<yzNxHC0
zMM1wn8Sp6W!GmW%fCs(m2guQb7Z2h$a9*~or5KpsWb)qo&wKy8v)@##*s_X5Js<vj
z-}ybVHf<WwuGZ3k1SEinwb<xU1L~u3trnPXNs9+oleneKe9{TRxZ(HwoltBul$buc
z+Hu`gEBPuZJO(D8!fs)x4T-lXKSL9$vO<5YWqJ}1dV#BFED58wKoxNcaX}#i?;{b8
zT-5G^BYka|m7qxFYwgF)qd4nF{((!y5+)b-u^(?c>hy(!5;-pBA<Xmgs~q{By{Kcs
zeA3BI;`QRxi}ypZq2dWuFyXK|JLg6x`SeiV0$7r=aOKi6s%s)l=f%uHKk(DgYYV>{
zUY9=$4_=|%u`AcqVMzAK7$)R7eF@4JnrdUFzEQRGy+Tf-O(*K?(SS6GxU7m?E)2Da
zGQvinrl=rt<IdpQg2L1nfjz4B)JQXq*t7k4p`RSwQE3VKUxpPpbfjsV)ANA*#?H&z
zMq^>lRF<T1|DK!}t8hYoG1i`~;6>|*tB6fR4RHhUulo4E2u%fWnxv$_2?u_bm$}Am
oQ_o|raWq|3ZgHo+iZWR8Kdp?{yKyjx!drlX=2XxGB?_nMUy2o$rT_o{

delta 514
zcmZXQJxjw-6ozw>TYFnlG?ilQryWEhRuC#KB8Y<ucCjMZC4?re#k2`GX+a$woXZ6#
z2OT@RI61rc2Qs?4`UAWteo_yd=MLw6&&R!*z0p!`DwUK(<aeJt<x#4pfg?9%OR{7~
z>5(P@X>?eJ+URb*+K_ZLRFAus?bgk{*|AwmLF-o#@y0~%i1eR$5{^LO2AuL2Xuuq=
z$ZzvH35jnzZH8JlEf9h+mROOmDf>|1mr7Ai1HV;XH^Z3k4*FI|JjXoOWtK;Aa)`r?
zmeciE5nDtkMJ3c3ktfF=$=MznCPiA;H$GeR-N0~%Hd_`dUlvf|qV)H))o<y85!(jH
z^ZTilr2<Y;m>o<uRtKJC2DZ^=X3wtj_o)M(rOnL5j>HdKZ;M~k3Q#_#izj8=5m#VU
zL=CZl_%;4q$ndY@B7IeWN)%|C&QL|wqKY18`1vf0Sm1i1ltIJ4PTWl7C<PTLq~#B+
CYHp_h

diff --git a/test_chargement.py b/test_chargement.py
index c8908f8..3283d09 100644
--- a/test_chargement.py
+++ b/test_chargement.py
@@ -43,7 +43,7 @@ def charger_menu():
     print(f"Temps d'exécution : {-(temps - tmp):.6f} secondes")
 
     a.mainloop()  # Lancer l'application principale
-    a.destroy()
+    
 
 # --- Lancer le chargement en arrière-plan ---
 thread = threading.Thread(target=charger_menu)
diff --git a/test_chercherdossier.py b/test_chercherdossier.py
index b38b987..4b59e22 100644
--- a/test_chercherdossier.py
+++ b/test_chercherdossier.py
@@ -1,11 +1,39 @@
 import os
 import sys 
+import time
+import threading
+import os
+import sys
+from tkinter import Tk, Label
+from PIL import Image, ImageTk  # Installer Pillow si nécessaire : pip install pillow
+
+# --- Création du Splash Screen ---
+splash = Tk()
+splash.overrideredirect(True)  # Enlever la barre de titre
+
+# Charger l'image
+image = Image.open("LogoSymbole_canard.png")  
+photo = ImageTk.PhotoImage(image)
+
+# Définir la taille et centrer
+screen_width = splash.winfo_screenwidth()
+screen_height = splash.winfo_screenheight()
+img_width, img_height = image.size
+x_pos = (screen_width - img_width) // 2
+y_pos = (screen_height - img_height) // 2
+splash.geometry(f"{img_width}x{img_height}+{x_pos}+{y_pos}")
+
+# Afficher l'image
+label = Label(splash, image=photo)
+label.pack()
+splash.update()  # Mise à jour de l'affichage
 
 base_dir = os.path.dirname(os.path.abspath(__file__))
 
-dossier_path = os.path.join(base_dir,'Code_objets')
+dossier_path = os.path.join(base_dir,'Objet')
 sys.path.append(dossier_path)
 
-import Menu
-a = Menu.App()
+import menu
+a = menu.App()
+splash.destroy()
 a.mainloop()
diff --git a/test_multithrading_logo.py b/test_multithrading_logo.py
index 57a1d5a..6d58413 100644
--- a/test_multithrading_logo.py
+++ b/test_multithrading_logo.py
@@ -3,20 +3,17 @@ from PIL import Image, ImageTk
 import threading
 import time
 
-
-
-# Fonction pour afficher le splash screen
 def show_splash():
-    global splash  # Garder une référence à la fenêtre
+    global splash, photo
 
     splash = tk.Tk()
-    splash.overrideredirect(True)  # Enlever la barre de titre
+    splash.overrideredirect(True)
 
     # Charger l'image
-    image = Image.open("LogoSymbole_canard.png")  # Remplace par ton logo
+    image = Image.open("LogoSymbole_canard.png")
     photo = ImageTk.PhotoImage(image)
 
-    # Définir la taille et centrer
+    # Centrer la fenêtre
     screen_width = splash.winfo_screenwidth()
     screen_height = splash.winfo_screenheight()
     img_width, img_height = image.size
@@ -24,40 +21,41 @@ def show_splash():
     y_pos = (screen_height - img_height) // 2
     splash.geometry(f"{img_width}x{img_height}+{x_pos}+{y_pos}")
 
-    # Afficher l'image
     label = tk.Label(splash, image=photo)
+    label.image = photo  # Évite la suppression de l'image par le garbage collector
     label.pack()
 
-    splash.update()
-    splash.mainloop()  # Garde la fenêtre active jusqu'à ce qu'on la ferme
+    # Lancer le thread du programme principal
+    global main_thread
+    main_thread = threading.Thread(target=load_main_program, daemon=True)
+    main_thread.start()
 
-# Fonction pour charger le programme principal
-def load_main_program():
-    time.sleep(3)  # Simule un chargement
+    # Vérifier périodiquement si le programme principal est chargé
+    splash.after(100, check_thread)
 
-    # Fermer l'écran de chargement
-    splash.destroy()
+    splash.mainloop()
 
+def load_main_program():
+    """Charge le programme principal (menu.App), sans interaction directe avec Tkinter."""
     import os
-    import sys 
+    import sys
+    
 
     base_dir = os.path.dirname(os.path.abspath(__file__))
-
-    dossier_path = os.path.join(base_dir,'Objet')
+    dossier_path = os.path.join(base_dir, 'Objet')
     sys.path.append(dossier_path)
-
     import menu
 
+    global app
+    app = menu.App()  # Instanciation de l'application
 
+def check_thread():
+    """Vérifie si le thread principal a fini de charger le programme."""
+    if not main_thread.is_alive():
+        splash.destroy()  # Fermer le splash
+        app.mainloop()  # Lancer l'application principale dans le thread principal
+    else:
+        splash.after(100, check_thread)  # Vérifier à nouveau après 100 ms
 
-    # Lancer le programme principal ici
-    a = menu.App()
-    a.mainloop()
-
-# Démarrer le splash screen dans un thread
-splash_thread = threading.Thread(target=show_splash)
-splash_thread.start()
-
-# Charger le programme principal dans un autre thread
-main_thread = threading.Thread(target=load_main_program)
-main_thread.start()
+# Démarrer le splash screen dans le thread principal
+show_splash()
-- 
GitLab