From 42c0645a5cc5f47ee7dadc8a2d6d23d71503cef3 Mon Sep 17 00:00:00 2001 From: hiba1907 <166406894+hiba1907@users.noreply.github.com> Date: Fri, 29 Nov 2024 13:52:34 +0100 Subject: [PATCH] Realisation des derinieres taches du ttp jeu de la vie --- .../8.8/executionHistory/executionHistory.bin | Bin 79346 -> 91866 bytes .../executionHistory/executionHistory.lock | Bin 17 -> 17 bytes .gradle/8.8/fileHashes/fileHashes.bin | Bin 23897 -> 27797 bytes .gradle/8.8/fileHashes/fileHashes.lock | Bin 17 -> 17 bytes .../8.8/fileHashes/resourceHashesCache.bin | Bin 23189 -> 23597 bytes .../buildOutputCleanup.lock | Bin 17 -> 17 bytes .gradle/buildOutputCleanup/outputFiles.bin | Bin 19073 -> 19505 bytes .gradle/file-system.probe | Bin 8 -> 8 bytes .vscode/settings.json | 3 + .../model/CellularAutomatonSimulation.class | Bin 4336 -> 5507 bytes .../main/model/ConstantCellInitializer.class | Bin 1020 -> 1091 bytes .../model/NextGenerationInitializer.class | Bin 1408 -> 2417 bytes .../stash-dir/Cell.class.uniqueId0 | Bin 1604 -> 0 bytes ...ellularAutomatonSimulation.class.uniqueId2 | Bin 4336 -> 0 bytes .../ConstantCellInitializer.class.uniqueId4 | Bin 1020 -> 0 bytes .../NextGenerationInitializer.class.uniqueId1 | Bin 1408 -> 0 bytes .../SimulatorApplication.class.uniqueId3 | Bin 3200 -> 0 bytes .../compileJava/previous-compilation-data.bin | Bin 21517 -> 21524 bytes .../previous-compilation-data.bin | Bin 4499 -> 4499 bytes .../model/CellularAutomatonSimulation.java | 55 ++++++++++++------ .../java/model/ConstantCellInitializer.java | 11 ++-- .../java/model/NextGenerationInitializer.java | 27 ++++++--- 22 files changed, 63 insertions(+), 33 deletions(-) create mode 100644 .vscode/settings.json delete mode 100644 build/tmp/compileJava/compileTransaction/stash-dir/Cell.class.uniqueId0 delete mode 100644 build/tmp/compileJava/compileTransaction/stash-dir/CellularAutomatonSimulation.class.uniqueId2 delete mode 100644 build/tmp/compileJava/compileTransaction/stash-dir/ConstantCellInitializer.class.uniqueId4 delete mode 100644 build/tmp/compileJava/compileTransaction/stash-dir/NextGenerationInitializer.class.uniqueId1 delete mode 100644 build/tmp/compileJava/compileTransaction/stash-dir/SimulatorApplication.class.uniqueId3 diff --git a/.gradle/8.8/executionHistory/executionHistory.bin b/.gradle/8.8/executionHistory/executionHistory.bin index da379200dc085b771d4dcddfb52048b307521c21..a3e7f8602849b2e0bf11a56dfc94657962ac3e3d 100644 GIT binary patch delta 4910 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 DD>1&c delta 697 zcmcb0mi5zXmI)%VOblS);mE+CTnA<{<R4&Q(C1`eV9?#@ctd<*fWTx)2`wYGsQ*x~ zYo1W_f7NAEAgZ(XLxuk{B|QE#vz>(%BK}BubE(8-eOKjN1_tHa*~Jy+rX?xK>Bd!w zW~RwW#zn@t8M#?T`FV)~<*5zH`I7<;{#d(YmRGJ0>qJ%zq0RY^R`YMRi0Bu0)%(G~ zp!WlxdG$X&Gj3hQozFRoWlC!A-Ohci0_Z}U^B=LXO<%*qn8Bzv-H?ybWpeB%?nygY zw`cM)K4F=>Yj5&)dtpX#0fDzOf>dLtAN+eWB}A5g$&Hnh1@cWc&$*Dwvi-k0<73Xv zJ7<-;JF2M7E=o-<O3JHBG*3#-Gfhl1FG<Wx%P=m=Fsl@J((rt$`JJNstxu=!-M=Q` z?s{enq0RY^*6=f)n7lE<a&qh^+szvy44Ee{XjYlb8sj&)_M86XYtvLG7km+%{OX${ z<GINjqf94fe)pYTrpKr{xuG>@a#!q$$r?WuHy6iUWfchDc+pmF$%JrWgIn{B*i$p6 z^CU59Y;H(VU}XKbb>g>ele_xVC!a}8U|GF&;<w2LX(E#~`vq7Zf~D;G^;p+!0Vyi% z*Jf?s24XGjH)Q<^mc8B|GFc!!YWjXgMgjIEZ;pK1X7q7#V|pgbfj39KO@5bd$~qk+ zI9VejhU*B3Wz@jUIDK;9A+gE(Ckjp8mSH5MUC}yiQP%cDv$mbsqqVx_8RP8fi4u%b vll3PFu}%VMnXH}pOkl(N{v8XR1}5&BEjxwbL*4$(idprH+pXCcx9bA{QS&w< diff --git a/.gradle/8.8/executionHistory/executionHistory.lock b/.gradle/8.8/executionHistory/executionHistory.lock index 4abdef7a3725bed502b1e30b47a4a19cf7b419f4..2b24742372c4a2edb077b6c88e3ae81a1a37cad5 100644 GIT binary patch literal 17 TcmZP$3QmdP%AV%R00CD4B9sG; literal 17 TcmZP$3QmdP%AV%R00AcfB8UTm diff --git a/.gradle/8.8/fileHashes/fileHashes.bin b/.gradle/8.8/fileHashes/fileHashes.bin index e0921c29234010082a6d5eced33c9083ffa5fa09..bb482b98ce2455d062e85dfc26a00662ad7b96fe 100644 GIT binary patch delta 2662 zcmcb)i*f2r#tkMClDirX{_At7%r#;FgM`)pp<uG9goj4Q;oIx=WFKD!%Q0klLgoH< zIt4DT%6eo65s&wsTq>bZ-~BK4!>ffA{Sd*F$uPxz@*m1i8*#3Lh{q|y#Z6WO_+MX^ z0ufKV4ilen>(LyI+c!2s#Iwy|;uCqMO3k=6MHV8S$PW{r?DD@^V0Yr=ITBj@H@F{P zDG{=OD2abOd9Or+z}zR5_O%{deGtKn`;$#2Ei@LaJ@ZgA_rV#6U}h=IutjQ5XTF_Y zY77yNub-SMsmMRYXo7j_)$b6ow9v`5k_{Rw&MvR06zp__2qrqh3|Mh)+y35%E<q6S z?AepQN(KmQP^f=6Z;$x|h+wkmWLqf(jh%@zWb5+6zCi?2^kF9KEI-n0_h^PML_C>! za;TJo!0wb)J9S(+vLS-${*!a16g2kC$=MOQr7!{_821up!rof#^cC7uuR_F=awoS+ zDF_^lx@MFr(q|13OjDjbS4u(Pn5jnS6i&WJ5W!T<$y=o?98NCLemH;U&+|~hXqd65 zEUvViRc-Nrh-aULiJzXnF8kHuv=E4RmhI%HQZpPbq!u5EeCF2$5zJT%Q+$!Fu5s$c zwayUnoMf2zm37CXZ(N-Tb#wCH$)(Z?8dsZ}<z-r@?tmyxPKPPJ?d9?FS&o=3L_D^8 za<8-^zgf1%h6@Er5V81;lb1>>@-rq*+%Wb3Ux-+a;pDy283GS@elM8BZS4RNO#L`n zRz^YK={CiW=j&^VAc6^^lTBqT1YXv6Zeq;vd=C-Kyg4~lCP3iLm8nxt9N~Wf5zJ<t zyjI3S;InGa2iNR$Xb>cyo_trvLgS~N81GO2wHqKRWB0;b|J(6ri=de`6GS|7`D9+% z00)+oE8TwFf8Ia@vo6CFv)oxRp>a}@H$*&jKTMppw<Fj`!U&qG(;Fv;$_6;F*F=0? zZ=%QrQJhc-Q_S98o2huf{su%miyJO}(#6cylRF0@p7MS2Tv-bNuF$VHm!9B-`X$qO z@>$so0a5!X`_iU`eh`((GbiiHWeAA9Vv1Sgc4-DgFmC(gUO9z&>1i>?RJPc>g$Sl^ zhS?>*e#H*Q>etX@oz@N$R|;Bl`rWEjsQM&Mn7A_6d*?IF8|)$GWD3H>RcdaCDKJFm zL&Ou@VdClw6fQh&Su=TyoS=r*JN4il0wq}xHQ6vF|Fyd(zex{&5(^QJYn{ATPC-LA z^kl_myU8aYf@!Z|s&#j~`nKt~(gKKhYVYK$ataP6Tbge^+G8{kBAAj0Q*3h2%P^N! zdND*iUK%d`v}K~0UB_vNc#`$xw{n^M4x8tvRtt7Q#IhDn_LZL@;J)LN^S6xa;t;`< zqm%E-EAku8f2dM=U>Za$ap~l*@(KdpujAU*x-Dga2xjF^=2cJ-@Y@pl_-U)dQ;1-O z_+(XuM*c?CR9~mR>=3cI;K_3p6a?a@9+R&towNob7#lfxtAZkbq?zXBo%wYTvFyyr zXB8|o(oVKUALQvd1rbbt3iD9f^>r8ao}7^h5l^@~`L9ACzu>iqpg<>Rp&9#rva6zn zM&2alpJ(IG3PBWRRKpA?I99ymuqsy-L_A$~a;c(%K+$3O^1EGIL?MES#gls#8w9G( z^CqUMc$q*1ljcumRZ<YBaa!fgwIMwXBAB*wvaFJVK%L+Eb&D9TOG5;cE>1R8(qa;9 z+^G0Ne51h(w#|+n7Z?@Js;F<0<9YYyJL8>+)6d_PW?*2PTw>w>45EoSZL*=)3I!J- zZ;|W!WqoeS9rB+&J<}bm$f*`u%nLl6{L{-t;a=eKl^;sx+5|a&uHf15Y9m;Yry;Zy z<(aZM*87j(=A|AvL|PjEkIn4I<sIMp4O$+hU;QfrGOzqso&>~Y{L8_XM)N;qm$PMH zU*_xa+~LX>d9b2)vp67%xY#$xdh;+&W{x%5oay7h$Ws2RL~8O{Up<!cU!~TQ?}Hg7 zmnRGQNllLR69I`Hnq2A!mR>n|xu2e0`LEIjh*_+lLPZZ0o0<#^42mEuFl9;bw}0*P zB{kH)6q(L3O9b2gt8^Pg2aEG$VShD{ot~3z{lSKAn4Aw`G*4dWug6pVtF#oNmXT{R zZ-5#|pa3EubairJ07!Fb@#NV7Qj?ztfSgw%Hu--5*rc744FjbnuMZTdFaK5I3em$; z$-uyX=ER1|EoKwK{BM~E6yCSFC%y#Y#4>0`5pBlQaYvu)$;YxS6<^P6xHbJ<_(P}; zCx{)Kg=jh^`vr*el>aL8fylGon7kP5?y}&?X9J`rdk2EtT~<6fIS}OEvNnh^7Qe~L zu^|7JL5o?I*2(7sLH;ePoBT5n<i#?h$$vehCc6fK4UnB28ziM*6d_`*+xTVHva0=0 zX5@X3hPbWbAjHrRk;%V<)F<x?N@gklRT(|`U=YZh%Gk}}!5=_zU%g?ncPL1xrgw5J zgmHB8dI;me<cAQ(_sPOxU^TxdyFwV>CYOU5wfiTpgfI*y--a;UCi8}a6xWtbwhxz5 gVNcTOdFfE?wKq0EjV~s}4dT2yC5ZC`Cxe0x0R8+08~^|S delta 345 zcmbPwlkw&*#tkMCj5(8iB|Ih{m5`VmDrq=*o@DuCT`7afy;72s_eqscPL=kUd{kOu zGOvupWLp`D$*nRHlefx9Onxe3FgaFs!emo9iOIEcl9SiTNld;c7e6^vUSe{qyuswN z@*b0Q6$~bqDi}<@s^Bp>RncSeS4D%#wn_<;w<;w})>W36yjNLbGOLQjWM37D$!k>- zC#$LUPd=+EIr*Qe_+(u*iOI2Qm6PA8iBFbQmz?aUu0MILy60p*4gJZv8WNM|YE(?t z)s&bVt0^(LS5t|J%W$LO5Alr#FL*aQdR$;s@R~nG^b^n4TU9Yp8s}DhXklProXmY> z=M@GpVAh>%=(R#2t>mIqMv-?xp$JFXfBtoopo%Vo)iCgUp1d~RMWO4Q-W%aV9i>Ss hT65-m$@@SRU4<y(aM~=Gz{9xNKhc44^Ge?h`~bD+cn<&o diff --git a/.gradle/8.8/fileHashes/fileHashes.lock b/.gradle/8.8/fileHashes/fileHashes.lock index 73a5220e88947f0b23b2fc342a3a2e08c08baef8..9cef599b048a668bc1755a29994b4f2d1a0556de 100644 GIT binary patch literal 17 VcmZR!ZGIcS=i#)o3}C>#4gfvM1;GFS literal 17 VcmZR!ZGIcS=i#)o3}C?Y4*)(G1`q%M diff --git a/.gradle/8.8/fileHashes/resourceHashesCache.bin b/.gradle/8.8/fileHashes/resourceHashesCache.bin index 492243c6aee7902c2d5ea5e6a2a30df40a9b66cf..086a1f26587e1ac87831545f7527ca5e6e08b178 100644 GIT binary patch delta 594 zcmbQbm2vG3#tkMCjMFBYN_Yq~PkHv#+0^$q0~kcxPcD_P;O~%lsaKu+;tp7hA!hOt ziJ2O69ky-XcPhIHA{O2J9}4DuPJF|C+;%Zk{P<>5$p_2=Z|cSQ#2dD7LPcdK^U7KX zyjQ&-*<17XDMT>p_hehy42_>vp8aC#UmidOr$UYW|L5zyxuUx_9)gHRCvKiAJAp|+ z+vjEU^Vr6JP|=r@RTUlx*ybJ6P|cpS1tJ)=ee+)hK}LR_S<7=b+2}(BZ%$@aY7mJ2 z>TXoby!AgsFna0cTBS`)OnizP6@Q3tH2A@}+0i3JXtI1HUwv%$=8mP?CLFF}*39LN zJ!{Rtz#wPLz`!8Mz`!5~!U7E^&sZ2F%B^*J5gk0`+)H+GL%?D$=>T=Drj^JC1c zTOu%3v}gQE>v%QoaC^YbHHq<4>fkEsK~{jUz=8JF5;0T4H4d@w@jlD8kP)r~Bn!d< z>_%S|`pg#mx|4DL!^iC=pD<MjvG32^ay{d2m}Rza-Gu@yX6&e4db}ux%joI_&a&`b js(DJ7hOECc`+c)hu9;Zb*4IuwkE<su28T_a87u+-Wuv?i delta 75 zcmZ3xgK_Fs#tkMCj9rsWB|Iiil`xomS7O5Exso@SC-=%4Ouj0cusKz(gK09W;*HH; h6*(Cviz%0HUaGu`iHVnSqv8+ojRq3jn;ktugaB6<8>9dL diff --git a/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/.gradle/buildOutputCleanup/buildOutputCleanup.lock index 05f878a40f5e8964385444c7be2a851d6e457c15..50ffa5dd9aa03e1dbc8db040e1da93a9dbe8d4a2 100644 GIT binary patch literal 17 VcmZR+liqg2=jjb+1~6dS2>?Gx1*`x7 literal 17 VcmZR+liqg2=jjb+1~6bM0sub&1!VvL diff --git a/.gradle/buildOutputCleanup/outputFiles.bin b/.gradle/buildOutputCleanup/outputFiles.bin index 6ceb9706079342326a9b878fdb9917e41465a85d..62d54951cfd8ec74075938af7d7a210825601919 100644 GIT binary patch delta 592 zcmZpi%D8a`;|3E6NsDe{LCGnn0xTK8!0SH@Og5D;(3m!vXQz0qcmP<A!TTsoa(XGl zA~p%PB@l71rITYNG6XiB_`B6_xpEpr(0k$Jy%HH37uo6>r(Rs^3=#C<g_&@%a*o15 zR(4~ExYx<avXT}8x2E40?sGam10v|{KG|1N!Qp{V%(gH7kDovUz23r1_<VTc*SZ%w zT%qEVVd6gy{dIgLD7XhA?)`Fds-%SgYi~!ekAzVlRIqmPR7nK^{@u}UjD+T2feQ9d zUMs1fq1c!tD%S0m3Kfim8LOeU^?~|~30Y9_&6AHxDhL=TH})2NSC|YH%$|H#QbE9? z-*qh$|NHk)LDR`!B^v~Sj6_~FFZ*l{6%?GDE2SV1TEviZ`_sR<5J9iolUt=M1maew z+04*jErSSpD^K1k)lgqPe{PVmgXIE<ppQJvRaN&szMbvpG!-K5wH+p2^XAsnhOACy zh`9G}n0UQ<Uh~Nl<<}wNUX5_^bqj<zC;UDP5%<0h6Nl2Q{}~uq12-!E5Z`EULTIz2 VhXd2({T{rN{XB9u-}5kM1ORtl^<n@3 delta 93 zcmdlugRyZc;|3E6Muo|~5(bmkN+e8Hl}wntRnlPcUrC9{u~G(;mr6-YzA7a#SyozN uvahtn<XY*9$-FWWlWk=TCb!B|@cf4Y1_oxqjfy|SHyUt=Zg%u=U;+Rp79z?3 diff --git a/.gradle/file-system.probe b/.gradle/file-system.probe index aea4134f1fc0809934ccb6fcde7112db656aafc4..71a438e2fa179f36bce0c761b1eb59fb1f8ccff8 100644 GIT binary patch literal 8 PcmZQzV4Ph3l7$Tb2a*B* literal 8 PcmZQzV4R#cPeBR*2H64I diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..c995aa5 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "java.debug.settings.onBuildFailureProceed": true +} \ No newline at end of file diff --git a/build/classes/java/main/model/CellularAutomatonSimulation.class b/build/classes/java/main/model/CellularAutomatonSimulation.class index 666eee34be1ba6a3882b4a01d6f8c4b665a305ca..f37672785de8861e705be427cbff26aa259a4423 100644 GIT binary patch delta 2823 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 G7$gDUZuK4j delta 1689 zcmZqH{-DTp>ff$?3=9m846`<J<uGvwGg$F3STop6u4d8X5@KLru;XE{XK<MOoW+IB ziHE_N!DX@`s|gnugA9Wk4}&{{$K;Ppn%rIt-s}uMJPf`Jev?(1tvLf20@)dYco>2w zuVIyE4BdQ&^*`g}T}-;Hj0{p5nv?lBq&QgeQY%Ur8N?<Z<Pe>l&Ed<*k)B%OoS&0l zw0R%LWkx<;pWOVE)ExcblEji!>&g9GlNsA5D|74eb#gHXGj#DV)H2iwF!W50<5uSD z<6`J%n8403k%wUt!{p8V+`^13(-;|4Ctu`|<5Ka-&(AI`U}u;y`5ce2dk6yygAju; zg9!s8Ll^@C0~13ygAjulgE*WY!63vS#UKsmM=}U8m@`-~Ffi~lFfy<*L@_WiL{IkM z4Q7m)Jcn1iK9+%jL4kppfq}t^A&w!Q0R)_&CV<31dYKp!7#JAD7?_}{5<!X>K&m3) z_9QVdGAJ=9GcYnlgTkGGk%1B9KISzH3=GT+F$@e0Y+w;R29S+BU^Wv&Ts_!IknwOK z29WWL3~EFeW`b%MPP42TY(U;-U|{fIU<7-EiE#tiVf6@?*@F#(_>u`87EBDu3@HqZ z;1ED{A|(7%85kMTz<vYy+m?X=>@&uVVABzXyMhge7{CZM9OUbIgb>KvObqD^8BnL% z!NL&gRD@xENQS{&3Nj307DxnS7Q}s-42%p}4B60laR<c-$c-@f)x+W?7;GlQ_b>;7 z{DSU#kQ~T#Mur@QT&SsmV9zozVE8%$Y$zmofiyyr7b8O+I7mUp*XJ{&FhJ55#PuL$ z5c3Nd3ZdqsM;am|V!;+bTn+L!!~)!L#>h~_Pz*ISnSqIcxgL};w6wP|SnBLzuw`J_ z#^4AG8U_X~a8gNP;A2Py+XL|kKQ#J4ISLXwAXW)ODT+Tpsv!O-V{n1SXe<L0*hEgP zEet~1V5{n3xdUQXCIbgU7T7L`pE%)maWa%Jlta@YLJnjD0|Q8|0-h5q85kL=2&c#b zur)~O4-|HYRD_6!YQkoffz3ihATFbP8T_C@;R#LL^}JeJ7!0>Dxb9@|WMqKkNksHk zA(_hy4GM%4K_Z|4fF$%90WMIf3XNP>21an9#;&!K!Jm-<6sJr`rBE{1U<C%|AO;2o zb_P)7fyy*?hI)nua0X^)Xk=($U}9i_7PCzZ&ETxl!qCdVzyR`TF9S0}8$$;}H^USL QP*P!Jn94AnVJ3ql096dOK>z>% diff --git a/build/classes/java/main/model/ConstantCellInitializer.class b/build/classes/java/main/model/ConstantCellInitializer.class index 603836f0726f5e36360c4e9845e56ce22da0e958..fbb1896f0b62ea6e83c8195ecd5ee66382b4d9b1 100644 GIT binary patch delta 482 zcmeyvewc&n)W2Q(7#J8F8MG#H=`(Upw9=cb#i(S%&cMgWz?GYylA5FMoSKuv#lXuT zz{9}GAjrrds^OEBSeB@tlbDyT@1K;Fnp|S78OFuH!63}TAi^LzG0mJ&eBwM=0nXse z^t{B9(xOyG2Ii0u>xma5C;KrvY+k@9%UCbQz{nuPz|FwJz{nuMz`(%7Aj!bYzzDK} zfr&wifq@~3fr){Mfq{WbYdZs@miAT#_Kge-49pDD3=9l>49pA+3?d9H45AF23}Os2 z3=9ln5Y-H_3~~%0zy&p39z{+8B*nm0&%n(f3Ab92ff3|#sKr4H%wVH<b~ErsYHeX) z-_F3l0d6%L10w?igEW$rJa8*{7?c>485kKrR)RdnzyOj1Sqbr?ihv`72!kpE6GIBf zhfYu*vT12=V-P~Of){KB#27ZH6$pbtA|Qj+7#J8>85tM^KtTwxMV&zd9H5#2Eafp@ delta 409 zcmX@i@rRx3)W2Q(7#J8F8B`{6=`(Uow9=b+!jzG3;y+n2Q4OE0#Ii*FoW#6zegCAa z)Z`Lt&9KSZjFA&FlqNSZIteg`gjh2&a0X|l=Ovbu7Nu@J#3;{L&&$BTz|6qNz{<eS zz{DWHz`zj6z{tSFz`($&wVi=+BUoCHfq{VwEGWvr!XVBd#K6EH2IjLe2s4N<fB-9l zD1#USBZD}KoCHXU0VF5Mz{nuQz`(%7AkDzYz|Ft|wyvIm!2@a^6XOQBWo!(L3=9l1 zNER`{En;GjVUUGd!~<3bk^@-;F<wr<k%5~*9&9`VgA)T2*r9A%+S?e|(QV*$1X}?y gh7D>3$Oi}!kiiO|;9z6`1rHO{6N(H<V9zK60Gr4sUH||9 diff --git a/build/classes/java/main/model/NextGenerationInitializer.class b/build/classes/java/main/model/NextGenerationInitializer.class index 80c0fcd224a6291ccca3999b938dd923af0c1789..f691ed7e25d49609f91727c5f3b9eb1a5105b884 100644 GIT binary patch literal 2417 zcmX^0Z`VEs1_nolaxMlY24;2!79Ivx1~x_pfvm)`ME#t^ymWp4q^#8B5=I6#o6Nk- z5<5l)W)00SP6iGJPId+^9tLg(9!3WF-29Z(9DTpkiW2wKywsw^lFa-(&%Df%%*33` zs?;Jz2Cm}F+|nGdI3t6y4@A9lYEDjRPGXT`X-R%=Vo82pFkF!}7Xu#yKRbf}4}&0s z5F>+NZemGMW`(|UetuC(W?o`RDkFn<eo;wAeoAIydVXGFj$dkKdPY)yX;CpFgOG-% z57-B#C7C(;KAFWO*6a)-j10mELC2z^#7dA17lSYZGdF`cg9JN+BoBiWgES)pA3_~S z2_pkXW(mkw`9+KjVkl;NLdC7Q8Dtsc*cs$`7!(*385x8SCcu<1GO%YP7K6eF9EMRK z9m+fmDh#TO3@mx66(x)eA~3U&Lf)E-frCMvhe3lulaYa?yeP4NkwHVl2O~VJHL-|s zF=#XBuruiLFz7MpGcqU=40lEbro<9P21OhefTI}{ZPr{2h73mR48}YRCLj-RAxvgu zU`|ghVP`O7WZ;H~2A3q3q=JIjf``G9!HSWAIWZ-LkwH`g5=qFO)r{h1FlDgeVX$Se zV`N|}El2@JwF*=zB0ixJjI0-wWE^-H92uM#85k?Tf$Rwi02dwxSCANgUTJPpYLS1M zbAC=~ZeB4cVBL8bJQzF~8Q603Q%ZC485vkLJUul%K}LD=F!+G9F;;>M@#A6e2l04d zh6Lr87lV`qg0f5yRAU&(%n%-iP=+u@20l=R$xO@%OUx-vbu3|IP{J3g;6SowXNX{A zkbp+6FF4Jk<Ri}D%=Em(lG377Mg|SS*~lg&*xJsTkwJ|Jwbq(pj0`N!`6;Q44E#Qs zd8vNj;0j4h%1LEp5c0`S26?3@6U2uKvXo?G7Bey^LLCB1+gS6zH6w!<s{YD?RHzwh zgfzqapiP7yAZkG#;mm`T2aF8DSaJp<16MLqS;7TZUd+fK07;jK#Ky?LRt!qR#f%K9 zXmU1K%m#(HD7rdmOz;MmBqnG3CKf=wFM%~pgalhNGBD;bGBA2FGBBnvGO!h;7MJFf zFfyoPRS&TYIWsUa2>7OgipPM&qQu<Pl2lN+=wTCVWd#jyaC(D;mmQ{dn6EIBAVdcv z16Oc<X;E^jTP7%R$l;86Jy1Ewpvb_%z{J4F5YE8JAOxy17#JBM85kIt7@`<h85kK@ z8KN1O7-AS07?K#67?>Cs7`U{yGcamtZ)ITL$iTqB%n-}Kz`)1A%)r1P&A`GS!@$WP z#}LQBz#s-u%@EI!zyJbVP}37p<dQ&A3?R8ExXsB7jG$}^v6qpVfrWvMfq@}Gdm96< z?`{U+$n6ZGemXlD#26W@SR`3?GRQD8%w*63v6L7Y4lwXpvFd7VVPMyiWZlM~wv9n+ z8-u|C2GgAk=1dIX%l}^h$!Wudb$2pYGcg=sFx|kwz`z3bjTG2EB?eXoWd>db6$Whv zRR&iEH3km`b+FG&7+4v!8Kf9e7*ZKnK`w*)F@YhCAr%^G=?obRObomX!3>!U84Sz} zAb%@>!zqCwo&n@<R)%PXbcQUrs%!>kh8zY420;d<e+;7R4B}uU`-{N{8YQ_544}$} zfe{=bMGUOqAXeGUz!#~#jlmw|v26^_I~d%ww=sA@c)mLr+_p0WfINpBRi+HW3}y_< z45nZYL83|p?hO^FH$YD2VPIrnU;xR1oXi0#lcDw}fEp$Y3=9HN(gn6sa~L>fq!X4i zu*j@|Cks&1g@M6=frY^lY!Afy0t|T!`QT_5U?^b7XJBMtVc=mXWXNY=0(+l>f$0we zAEN`KfFnaFLlGnyFgQVzADfo;Hilq?f7rn869StLaVs0t9|+fjL_n@DW?*1oWn^Fw Q0Htq8DlcIu1*i5h0623u>i_@% delta 698 zcmew;)WFSk>ff$?3=9m847wA!^clG(S{Y1^V>VOdV`PxXO)M$OtkCxbQ=WO5C7Fpi znN_Jpj0|cTK9fH(Do*BQiJO>ZI60HWg$W`eZW9u0ZD-BMz!{vGo|jlsT9nGjpbe3e zfXHcvF*0x^=jRutWacH7q%txHPcCE@p4`YPJ9#6cff*wMTW)?zX-+;P1FMFor=}+( z17jW|10#q|VPs${N-ZwUDPd&b4K7Jc&h||#2uV!JNu9irb$>lC0|Nsq10w?~13v>3 zg8%~qLnH$u0~1J8YdZtuMg|53W(Gk91_my$pg02ygCv6x0|SE?n9s@}%pk%50;~+8 z3}Ot74B{wq5+ErCkenm~BZCwJ0|OI-Gy@|8Hv<pYx_Sl%52$@ij2qyVu`w_*Ffhm= zS;Pdlh>1alK^AHe4_F;Y4rCF;csT|J26+Yr21c-NaGS0RGTj8~50DWMf8aKrgF%r& z31sZ#1ssa?h%hl{U}3NT8OET%z|6qFAi$u^paS-{0D~%n3Iihp3j+^>8iNW06N5Sf z0|N&G(;o&tMh8X#M+R;N4RAOxFgP(VfkTu{OM4pwJ9<#?fz5|_mkksYh71hgphgIR XLO>G~Z;T)(Ffc(wTZ=&(9O^m%5MfTy diff --git a/build/tmp/compileJava/compileTransaction/stash-dir/Cell.class.uniqueId0 b/build/tmp/compileJava/compileTransaction/stash-dir/Cell.class.uniqueId0 deleted file mode 100644 index ff54bf87cd3b03b63c7ea9b8a8248506a3c69a92..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1604 zcmX^0Z`VEs1_nn4FD?cq24;2!79Ivx1~x_pfvm)`ME#t^ymWp4q^#8B5=I6#o6Nk- z5<5l)W)00Sb_Nbc24S$G(vr*^eaE7r#7dvc;u0<fb_Qln25tr(b_QM^20jLUMh33j z{FKxjedpAi97YDtoXp~q)V$Q9Vnzl5AA|`Y&DJ1|f;<dD48n{ItYwKgrKyYzLJ&nr zZn5TO5M>Z!XAtLMkYJExWZ*+Jg^__dF(rkOK~w`%r)CsLuQU&X41+8q14m{_YEfcI zei0*sn1&`qHP}0zP;qN+26+Yrb_PWr1|<e%Mg}2-O)w>l4D1<+#eS(3CE$>W0_jlY zVNhdGXJlZ>0}G45%trPDJA)=8gBT=a{PUbM67$kiL16$28g2#+25lY&9R^)S1|D!Q zK;%;x8Pu_O3gU2N!$A?G4-a^s)VyLw2F~Ej^t{B9(xOyG2Ii0uYeoirh(@rFK~~%N zV0Vs9NQkwawVgGNAPr+=U~$e*No8c<_sPsl^()OyN-YXWOv(XAUVd_7PFP}5CWsFe zWGTtWEM{cjfm#Pj7uJjne4yl&nV938pI4HaSHj33=7XZQvLF?zUl2(n#BGcWY#JdU z)|z3A48n;iDd^$J$RMo&)q^et*24iylZ*@!xYRK+$l{QKIY9xJ9S{W|$1xYDmM}8# z2A3ozXZt1=K>fp<4iaV6&;-YdrA>$xBw~<b)DBY!>Kst)LTq4U;0n$!ElN&x%LIiz zCn#X`Kq;0%k%60miGh(pkAaDS36#AU7#R#07#Nrs3>kz#nH0`9VqjrlWME}5W?*74 zVPIe=WMF1sVqjnp)!NR$sI{AcJ#sq(=T-(TE$yug0vj0^7?>GM85kIZ7+4q>7{nP^ z7z7#k86+4)7$h0Y7#JADAetG>87vq;K$O9fL70J&!3ssr8YIO4k~4%m#D;;9!Ir@e z>Wl=i!x<QOw6-vCY42nZVPXhJ*bXYZ7{H!XLb8<yZYvLiJ%a;^tspswtspr^xUEhM zj110j&u?a62K!47>|2o4I~k-H8GLniGRQG9%w&+z*~y^7$Z&u`!%tURdnbbyGsE)# zPeJZt0f&kh11kdqgEj*zgARidgD!&>gC2t}gFe`e3JlB)N(>xemoYOiFzCTus|SrB zP#7UpIWoXhLEH^e1qv+}1_n^%{$b!}XOREJAPbFGQ1H1js6&Gf<UvLT1_oBGEerx1 o;IYQW01`9@yN3tNW`()}WH&+tWFsWGxG^w6EpTV>04E?%0HBUZfB*mh diff --git a/build/tmp/compileJava/compileTransaction/stash-dir/CellularAutomatonSimulation.class.uniqueId2 b/build/tmp/compileJava/compileTransaction/stash-dir/CellularAutomatonSimulation.class.uniqueId2 deleted file mode 100644 index 666eee34be1ba6a3882b4a01d6f8c4b665a305ca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4336 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 diff --git a/build/tmp/compileJava/compileTransaction/stash-dir/ConstantCellInitializer.class.uniqueId4 b/build/tmp/compileJava/compileTransaction/stash-dir/ConstantCellInitializer.class.uniqueId4 deleted file mode 100644 index 603836f0726f5e36360c4e9845e56ce22da0e958..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1020 zcmX^0Z`VEs1_nn46)pxQ24;2!79Ivx1~x_pfvm)`ME#t^ymWp4q^#8B5=I6#o6Nk- z5<5l)W)00SE(Q(;PId+^9tLg(9!3V)-29Z(9DV2fyyB9?yb|ZsoE*=*%#zH+oXo1! zB1Q&2kk-t^oUp{4(p1M1Mg~O<pWMWfqRa|?=luMll+3)ul2mI=AE+^@IXTws41A0X z5>Q3HV6`YlifZ_vyU|)RjFExGIX@+pk%8YQGcVPzG&d==C?qi{CzX*w$R|G;<btA1 z5FaYYQj(Eb%*Y@Qvl+VwtQi@2Qc}|rOLI!VJ^&epVL2m%7^)4G1*uS5RPY;b6B1%= zXU)jK91>#9$iNw#nVy$eQd*SC$iSu%5(4%WS28@97#W1IgdHP;8lfPCS)-0!Ar=n_ z_@<U*<fjBA7A5AUmZTOHGcttQgjit)yd9<x%#9dPX9Ek2)SMiMlR$pw3eGPrN=|jl z1Vxn$j)bHKawCHx0|x^W10w@30|Nsy10w?~13v>3g8%~qLnH$u0}}%S1FP0{2F8tG zX+Z`C22k2&U=U?sVGw5!VqjnpgD7GUW)NWj0agZ41~CRk25}TQ36K;6NKTT0kwJ=q zfq{uZnt>6N;Gx!eK&@k9+yJ+Wje(JYfk6hz9wxXwObjv%vQT??!0JG9AbTLD%LzC# za5Kn5O?P5o0=tt<OM4pwJGu?LU>hK&ut9AAxgQ|{GFJf<7>o>{z+r-VL6JcT>=k7I DRl4S7 diff --git a/build/tmp/compileJava/compileTransaction/stash-dir/NextGenerationInitializer.class.uniqueId1 b/build/tmp/compileJava/compileTransaction/stash-dir/NextGenerationInitializer.class.uniqueId1 deleted file mode 100644 index 80c0fcd224a6291ccca3999b938dd923af0c1789..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1408 zcmX^0Z`VEs1_nn4T`mSD24;2!79Ivx1~x_pfvm)`ME#t^ymWp4q^#8B5=I6#o6Nk- z5<5l)W)00SE(Q(;PId+^9tLg(9!3WF-29Z(9DTpkiW2wKywsw^lFa-(&%Df%%*33` zs?;Jz20oDH%*33q#GKMp#}Y;cB@Lh4#FC=S3VrAN{Gyc1yu^}JYfT@BLBS;;9y<dc zBZCA~l`mK^ikWH}Q0304IXR^{iA9d3CHc9DCHZ;5nYpDoU`JSMhA}d*IOnINGBWV{ zWag#%mF6a;7KJ1x<)kt)2>IkEgWOb<3F1QqSxPc8iy0Xdp@!r1lr<v*S25foMh0c5 z27InzWDrBOva%o*YONYnJ5Kv-LV~UBtQi@I@HI>+XK-eEUSdgUQ7R*YHqrV(LB^E~ zj}=A+VJuO_$RL3=21A0a85vm0ixLYM88on}z-ky<ZhlH>PCg?8tA?kirY9o<V;&;| zBZy96WMC^wEiTO|VPxP9E=f$z_Dw8+hM78c3(ym<H6w$7Z)!<Keo8=MQDSatNor9s zBZG%cu$2`w(7_1~5^8on7}{Yj#z=z@9gGZI!TF^{$*FFcphP8yGY0iQCNn59a4;}2 zFf#BmFfgz(Ffy<*@G~$m2rw`(L^3ckFo8t1wlgqpWME)mW)NgxU;yP!1_p5k76wTM zAqEBpF^D1tVFnQf5MX5xWe{UvWDrM@lK@FEfaD|@7#XA(7#Nrsq!}1N85U}t2h=(y z#tm@0*cccY7#QS`>|ui2!^9xNAPcpJ2doYx2eJoZx*P)ogFJ%*10&coxJ}n3(R2<5 zMFu6PsR^KRih+SaKuWs6R%#9dr;K#Mat0QeHE<t5Ld%?ig~0-Bj{*ZTNIioxg9<oA z1Q=8qR2Uc;SQvO1)EHD4m>AR<7(h|-hk=jLfl<Jbftx`C8bVGCOyIC))6(9?z>XeD ld|>k-A;AU>B~Tn7L_lGq35rlg22hwVL8C#7K^q($IsklUGui+E diff --git a/build/tmp/compileJava/compileTransaction/stash-dir/SimulatorApplication.class.uniqueId3 b/build/tmp/compileJava/compileTransaction/stash-dir/SimulatorApplication.class.uniqueId3 deleted file mode 100644 index d3e7e6501fdcde716363cd6017444d3fbf0f8365..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3200 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 diff --git a/build/tmp/compileJava/previous-compilation-data.bin b/build/tmp/compileJava/previous-compilation-data.bin index 35a39514d6fb286df34fb16f88c09c44f12e96f4..cd8eaee3c91978a7b3ca927d9701738bd6e4c633 100644 GIT binary patch delta 91 zcmeBO!8m0F;|6^ufjjzKPd=7ysrY(k!>#G>!XHkyXR;M&sN7;UA<X}li9q3fn|tC* yCigIX7o4&r_}jns`H~vyUy4lUm?fG{p2D2Q#AvtqH}ft=7CS~pkIkD|qx=A<-zSOy delta 85 zcmbQTg0Xi6;|6^ufo(y{uFYlW3A7cTbj^_~{{3WoCR+hn!R|S+)t4vrbtkM?SnriN sxrgbyV6xtw=YOoe*ZICk&$Cm{uQQoEg*lCpVe=p6U5uOeutxX+00QhJF8}}l diff --git a/build/tmp/compileTestJava/previous-compilation-data.bin b/build/tmp/compileTestJava/previous-compilation-data.bin index ab38118fbbff4ce536680120c3cc273e54593135..c179c808f0df12277b3052e7f7eecf48d1130fe4 100644 GIT binary patch delta 73 zcmbQNJXv|eTV{dDL9sovBG@OKiTe|{T{)_8^Izuui~<dnTg)be`QI`TD7<fTPkhPd gGpuiz1@7o`J^5I+rQ++E4Y#Jh3xBxz1m|gX0M~jW>i_@% delta 73 zcmbQNJXv|eTV?^}7Y0)c=j~emH2y=(!|LE)oBuNJXB3bX?4A=_eR)z}cfyK=^<J5q g&#=B>7T6ZF?Alz0o<LjiN!J{?;@@vR!Fie;03$Xc(*OVf diff --git a/src/main/java/model/CellularAutomatonSimulation.java b/src/main/java/model/CellularAutomatonSimulation.java index d08c7a4..fcfdfdc 100644 --- a/src/main/java/model/CellularAutomatonSimulation.java +++ b/src/main/java/model/CellularAutomatonSimulation.java @@ -42,14 +42,12 @@ public class CellularAutomatonSimulation<S extends State<S>> @Override public int numberOfColumns() { - //TODO: à compléter - return 0; + return this.automaton.numberOfColumns(); } @Override public int numberOfRows() { - //TODO: à compléter - return 0; + return this.automaton.numberOfRows(); } /** @@ -59,14 +57,19 @@ public class CellularAutomatonSimulation<S extends State<S>> * @return The cell at the specified coordinate. */ public Cell<S> at(Coordinate coordinate) { - //TODO: à compléter - return null; + return this.grid.get(coordinate); } @Override public void updateToNextGeneration() { - //TODO: à compléter, en utilisant nextGenerationMatrix() - } + ListMatrix<S> nextGeneration= nextGenerationMatrix(); + for(Coordinate coordinate: this.grid.coordinates()){ + S next= nextGeneration.get(coordinate); + Cell<S> cell = this.grid.get(coordinate); + cell.set(next); + } + this.generationNumber.set(this.generationNumber.get()+1); + } /** Computes the {@link ListMatrix} of states obtained after a single step of updates * of the simulation. @@ -74,23 +77,25 @@ public class CellularAutomatonSimulation<S extends State<S>> * @return the states of each cell after one generation */ private ListMatrix<S> nextGenerationMatrix() { - //TODO: à compléter - return null; + return new ListMatrix<>( + this.numberOfColumns(),this.numberOfRows(),new NextGenerationInitializer<>(this)); } @Override public void next(Coordinate coordinate) { - //TODO: à compléter + Cell <S> cell =this.at(coordinate); + S next = cell.get().next(); + cell.set(next); } @Override public void copy(Coordinate source, Coordinate destination) { - //TODO: à compléter + S value =this.at(source).get(); + this.at(destination).set(value); } @Override public Color getColor(Coordinate coordinate) { - //TODO: à compléter - return null; + return this.at(coordinate).get().getColor(); } @Override @@ -108,17 +113,31 @@ public class CellularAutomatonSimulation<S extends State<S>> @Override public void clear() { - //TODO: à compléter (penser à remettre le nombre de génération à 0) - } + for(Coordinate coordinate : this.grid.coordinates()){ + this.at(coordinate).set(this.automaton.defaultState()); + } + this.generationNumber.set(0); + } @Override public void reset() { - //TODO: à compléter (penser à remettre le nombre de génération à 0) - } + for(Coordinate coordinate:this.grid.coordinates()){ + this.at(coordinate).set(this.automaton.randomState(this.generator)); + } + this.generationNumber.set(0); + } @Override public Iterator<Coordinate> iterator() { return this.grid.coordinates().iterator(); } + + + + + + + + } diff --git a/src/main/java/model/ConstantCellInitializer.java b/src/main/java/model/ConstantCellInitializer.java index 39a5b71..7d12220 100644 --- a/src/main/java/model/ConstantCellInitializer.java +++ b/src/main/java/model/ConstantCellInitializer.java @@ -11,20 +11,19 @@ import matrix.MatrixInitializer; * @param <T> the type of content of each cell */ public class ConstantCellInitializer<T> implements MatrixInitializer<Cell<T>> { - //TODO: ajouter la/les propriétes nécessaires - + private final T defaultValue; /** Make a new {@link MatrixInitializer} with cells containing a {@link Cell} with the same * value. * * @param defaultValue the value stored in each cell. */ public ConstantCellInitializer(T defaultValue) { - //TODO: à compléter - } + this.defaultValue=defaultValue; + } @Override public Cell<T> initialValueAt(Coordinate coordinate) { - //TODO: à compléter - return null; + //retourne la nouvelle cellule avec la valeur constante par def + return new Cell<>(defaultValue); } } diff --git a/src/main/java/model/NextGenerationInitializer.java b/src/main/java/model/NextGenerationInitializer.java index f9462bf..a0536c1 100644 --- a/src/main/java/model/NextGenerationInitializer.java +++ b/src/main/java/model/NextGenerationInitializer.java @@ -1,9 +1,13 @@ package model; +import java.util.ArrayList; +import java.util.List; + +import controller.Simulation; import matrix.Coordinate; -import matrix.MatrixInitializer; import matrix.ListMatrix; -import controller.Simulation; +import matrix.MatrixInitializer; + /** * An initializer for a {@link ListMatrix} of states, where each state is computed based on the value @@ -13,7 +17,7 @@ import controller.Simulation; */ public class NextGenerationInitializer<S extends State<S>> implements MatrixInitializer<S> { - //TODO: ajouter les propriétés nécessaires + private final CellularAutomatonSimulation <S> simulation; /** Create a {@link MatrixInitializer} to compute the next generation in * a 2D cellular automaton. @@ -21,13 +25,18 @@ public class NextGenerationInitializer<S extends State<S>> implements MatrixInit * @param simulation the {@link Simulation} representing the cellular automaton. */ public NextGenerationInitializer(CellularAutomatonSimulation<S> simulation) { - //TODO: à compléter + this.simulation =simulation; + } @Override - public S initialValueAt(Coordinate coordinate) { - //TODO: à compléter - return null; + public S initialValueAt(Coordinate coordinate) { + List <Coordinate> neighbours=coordinate.orthodiagonalNeighbours(); + List<S> states =new ArrayList<>(); + for (Coordinate neighbour:neighbours){ + states.add(this.simulation.at(wrap(neighbour)).get()); + } + return this.simulation.at(coordinate).get().update(states); } /** Computes the grid {@link Coordinate} for an arbitrary {@link Coordinate}, even outside @@ -39,10 +48,10 @@ public class NextGenerationInitializer<S extends State<S>> implements MatrixInit * @return a corresponding {@link Coordinate}, that is inside the grid. */ Coordinate wrap(Coordinate coordinate) { - //TODO: à compléter //Il faut recalculer les coordonnées x et y modulo les dimensions de la grille. //Pour le modulo, utiliser la fonction ci-dessous, qui s'assure que le résultat est positif. - return null; + return new Coordinate(modulo(coordinate.x(), this.simulation.numberOfColumns()), + modulo(coordinate.y(), this.simulation.numberOfRows())); } /** The non-negative remainder of n divided by d. -- GitLab