super_dupont_11.py
Created by
florian-allard
Created on
January 11, 2022
8.92 KB
palette = """ \x00\x42\x83\u39e7\x63\u39c7\x22\u2020\x62\u3041\x21\xa4\x20\xa3\u31a6\u3985\u0841\u39a6\u1082\x41\u1820\x82\u2965\u3964\u2124\u20c2\u3841\x01\u2104\u18c3\u39c6\u31c7\u1041\xc4\u2000\u3123\u2944\u3861\u1062\u0800\u2986\u20a2\u3840\u2841\u1000\u31a7\u2903\u0861\u1861\u1800\u10a2\u0862\u3103\u3965\u3944\u38a2\u20e3\u10a3\u08a3\u0821\u3923\u2144\u3082\u1904\u3185\u3881\u3144\u28e2\u1881\u0882\u3186\u2103\u1882\u39a5\u3943\u18e3\u1020\x85\x43\u18e4\xc5\u2800\u3165\u2125\u2061\u18a2\xa5\u28e3\u2081\u28a2\u2145\u3984\u3000\u30e2\u30c3\u3040\u3020\u2820\u0905\u0105\u3882\u2902\x64\u3924\u2985\u0840\u2966\u20a3\u18c2\u3820\u3061\u2945\u28a3\u2840\u3124\u20e4\u1125\u0926\u08c3\u3166\u2924\u2861\u08e5\u38c2\u10e4\u10c3\u1081\u1862\xe6\xa6\u3021\u2925\u18a3\u29a7\u3081\u10c5\x44\u38c3\u08c4\u08a4\u3862\u28a1\u2146\u1925\u0946\u1946\u1063\x66 """
dupont = """ %% ' %%%%%%%%%%%% ' %% ' %8%%%%%8%%% ' %% ' 0].%00%%0000000%%0]000]0%%%]%]8%%]%%]% '''''''' %%%% ' %%%%%%%+$++++ '' % ' %%%%%0 ' %%%%%%%0%%%0%0%% ' %0%%%%]%%%%%8%%88%888% '''''''' %%00- ' % ' % ' +++ '' % ' %0%%%%%%%0# ' %$%0%%%%0%0%0%0%%%%%%%]%80]%%%08%%880% '' %% ' % '' % ' %6-++-0 ' 6++% ' +6+ ' % ' %%00.$/00+%%%%%0%%%0%%%%%0]%%%0888%%%%8%8%88% ''''' %%%%0%$6%--60.%/>+%$#++ '' $%++.-+$+6600%%%00%00%0%%000%0%%0%%%%]%%%8%80 '''' %% ' %%%.6$0/-+%+-6+-+-$.+6$#6-%+#$---+...0.0.0]0%00++00++88+++++V+%%88%% ''''' %%% '' $/6#>.%#-$666-+%--/>#$. ' /6+//%. ' +++ ' +6%++8]+%%+/6s-/s$6D.%%$8%88% '''' +%%% '''' -#+%$-+#//#/+%--6+--%-$$ ' % ' +%#%y#+£-+£y%# ' £sy>#.£--£ ' %£D$88] ' + ''''' ++$+ ' %--6%+-6/-+%$++++-p.%-%-$£yD+#/£y# ' £- ' s£%-%sr6# \xb2 J-v3k6%% ' + ''' %$)$q$6#++6+$$ ''' +%-pppy- ' ¤y¤ ' ##yy¤-#-#/ \xaf ZL-H=¬6wZISZUa=M©S%88 ' $ ''' $qppp>-$+$ ' #pyppq#$yp.pp> ' ppy)##6/d8d=hd=dU=Z|H5Mk|Z/6a++%88% '' %->pp«p-#p¤--yp¤-#qpppD]/rr/#Z=HH|8H6ZwRd+kHR-©|ZM¬w#3ZS ' %+8] '''' ## ' ««ppyq#>¤y#)ypyy##rHhH=HH<6da \xa0 =HUSRZCSZ®H|©a##Z|aMZR#{Z+++888% '' $##>q«axx«¶>#$¤0# \x5c a \xb5 -Z=ddkRHkU={#adLdRSI|=ddR,awZaIM©##Z©8888+8 ''' +###%HMH|-aa#/ahMH \x5c H \xaf ¤)#gZ ' +d°IZ \xb5 +d||.wd8M|%/aHaZxZw-¬x$V<V%%88+% '' +%-#3MMZ5RZZ/VH,haUH<=a® \x5c #wZr6SdDdVwHHRZL%.%5aH§+xV8%+%6#+%8888% ''' % ' #LH=z]##5Ha#hhZL$dUHMH#LHMZR#|z=o¢aHa+5+.%.%+666/+/#//#-%%%8%+% '' $ '' +©MZy«##¡da#5IZrd5IHar$#Za$#Z=HLCNgLS3$+D®%.6#/#/-+6++%%%%%%%+8%% '' $$$|=M¤q#5d|#5dLC==z/wHa¶q3H| \x5c d]LxS,,*Mo+.D. ' %%0000.0%%%%% ' %%%8% '' %6)+MMa#CZa#kSIH=-#|Hah¬{TL{Sw*NNN,,NN,o+.D...0%%%%%%%%%%%+ ' 8% ' +%+#y3dxVH-wZ¡CH*T#aHddLCxw*,¥,,,,,NNNNN,M^%D.%.%%%%%%%%%%%+%+% ''' +#$¤>/@Zd[=pLH5SktCLk¢*¥,,,N,,,,,,,,,,,,,NNME$D.%0%%0%%%%%%% ' %88 ''' %##y«## \xa0 HMHz=dhLCN7*,¥¥¥,,,,,,,,,,,N,M-.D%%%%%%%%% ' %%%%% ''' %$#a+6=HUUdMHo¢S*,N,,,ttt,H,,,,,,,,,N,O.D%%%%%%%%%%%%%% '''' +6dMZMM6okxStNNNNt,fuui11(&`Ga,,,,,,,,¥N,MO0D0%%%% ' %%%%%%]q+ ''' +H=MHh777EtNNNt¥fe1BB11((B1jhBB}B4,,,,,,,,,MT.D%.%%% ' %%%%%%+$++ '' + \x5c xL \x5c 6T*NNNttW1B11ci(1c99(99bK&&ua=,,,,,,,,MO..%%%%0%%%% ' %+++ ' + '' $$>TN**NN*NNtfi \xa8 icii1B9;?;9?@R##51?B&&e,,,,,,,,,MJD.%%%%%%%%%%+q+ ''''' .$T***N*NtteKK9cic1(G5R3/#######3i9?P&4a,=,,,,,,=6D%.%0%%%%%%+$$+ ''''' J*w****NtN \xa8 99ciABj33^-^^333/####@;1&&,,,,,,,=t$D.%%%% ' % ' %$$$$$$ ' %>t****Nt|KK9ccA15/353###33########9?G&B&uM=,,,,,,M7..%.%.%%%]$$$$$$ ' +T*****NE{KGc1B5/R3###^IV/######v9Bni&((&M,=,,,,M3D%%.00%%%$$$$$++*******E{9Gcc9ci1@R3###35 \x5c I########@&&?B(((B&uM=,,,,,=t ' D.%0%.%%$++$$ ' )E******Et99GG99ccc;5I##3 \x5c @5/#######3?9(&u1&((((&=,,=,,,M^s..%%0%% ' +$$+ ' Jt**7****EQ};G999c9 \x5c\x5c 335§@I########3n@//ru1&(A(((&a==,,=,=t ' D...0%0 '' $$ ' $7*******ELjG999cG@ \x5c 5V5 \x5c\x5c\xb5 ############/##K&&&((((&(M==,,=,M3y...0%. '' $$$^E******E*``Q`GG1G5h \xb5 V555I###########?99? \x5c i((P(&&&(&===,,=*D...%%+$$+$OE******E[9j`GGG1jR3##-#/-#######35I#U&r#i;;1i1199(&((, \xaf =====$s.....+$$ ' 6T******E*``G;GGcj#############R[Xe#/&(/J§ \x5c 33In19?(&&=======oD..0..$$+ ' E******T<`?QGGG95############3[G<##@&¦h####@&1?&((MM==,=,=t.D....+$$$OE777***E?`j`G;jjj666///#///R3//LC#//53[&&[C#-##1&U?&&&¬====,= ' s....$$$-T*777*7Ew`;``;j@@ \xa0 %]]0%]Us3{Qc[S_f^zG;2[;&[uI##/1i$5&P1(uM===MCs.D..+$$-7***7**EL`jjjjn@nh888+es^a:Xz|lf^z2&f5B29##-(;>#?Bii((ua,MHo.D...+$$-E7*****En`;;G;;;b8]8-jl%wY4efoRQ:(YO9(@5#R1 \x5c #hu144124&&&&2E.D..D$$$J*77***E*;`;;;GGcb08:e2DDI¬eJa2_gCX#&^#VC#;u[5+%]%%] \x5c\xa0 ?9&&*)yD..+$$JE77777**`;;;`GGcb.6G&2P&9.. \xa0 _z/L2_7^3:F^x136±3/b@+$Ds3sD%%Vb1&}%q.D$$$J*7777*Ewbj;`;GGc8Ul444&uq ' %g6-#J#-#k<@&;#a/6]6%3
D.D
3%6U4&vq ' $$$O*77**7Eg`;;;;99G6<YX41n?))zQ#oLC<|L3(&/.66++3.+-#-UR#6
%#[&&$$$O**7**7EL`?;;GG;n86SWY:2j}K \x5c -#c2Ow{°LCC1&+]-V®3D$6#J¢C5;9##]
+/u&$$>J*7T7**E{`?;;G;jn8$gfY}Br<u[U2f?uG<#4&3#+$ ' ss6#§@WeX2eQC&?##-
0-$$)OE777**Eg`?;``?j@8+xf{<¦P&b#_:c[Y4&&:x(R#$hV]5C}vF4A42A&u#?&(3##+
6$)$OE7***7Ew`;;G;?[@86hf{g1(&UO_mG<<og[5#-z222Y \xa8 LY4(4424&:o§&(###/
$)$JE**7**Tw;?;`;jjn]+3L<k((&5{___mz<[#//##F_Yl¦?&n|Y24((A4&A2o@&;####
$$qJ***7**E*;`;;;?n[h6Sg(&&@°__X__:&;###/_F:vB(¡Y:4A(A(&(4mJ&#####
' $ ' /E**7***Ej`;;`??@V<LSC?&(&n{WF22XX2e[Q44i42¦1&{_W:24AA(&&A~{I&?#####$$ ' -T**7***EL`?GG} \xa0 5zSIS^;((&?{QWYX44_W~l42c14eK&(rfF_Y2A4AAAAYf3(&/#####$$ ' )T***77*Ew`?;`VY&3#C3¦B&&vSWWe42WWY:eXcX9B&PLWWY2444AA4:J;& \x5c ######$$$$O****77*Ej}Ro:A4Q##I1&(&BfQF2F<WFeeX42K&&K[WWXlA44A4XFo5&?######$$$ ' ^E*77*7*E<9h/Y44mY5#/(&(&&vgzWF2<LQWeecX:9&&&Q__FF:444AA42_k-&9######$$$ ' 6TE777**E7 \x5c /f24:mYWJ#i&((&(§LQW:xS<QeWWGB&&(QY_Y:2224442_L#1######$$$$$O*7*7*7TOJ5X4Am:FC#;&&((&1k°FF¡C<QQWe1&((&92::::XXX:X:_k#u&######$$$$q^E77*7TOJ#<4(2FF_<C#n&&((&&K<f<^C{<zzcB&&((&9ulXXXY::XX::::k#1&n#####$$$$ ' $T*77TOO#J(4YXXWII#hB(&((&&K;[R¢k9B&&((((&uA444XX::::::Y<#§&&&/####$$$$$$#E7TTOJ#[&4mW4~kC¢3/9P(&(((&BK9 \xa8 P(&&&(&((((vuA4XX::::::::m°J(&&&9####+$$$$$)T*TO##V@2fX:z3CI3# \x5c K1P((&(:ZEX&&((((((((vG2Y:{/Wl2222l4l<&&&&R###$$$$$$qJEO3jR3@U@FQ¢ICC^53UK1B(oSO&((((A((&±[_Wg/#W244AA&&&:S1&&&;###$$$$$$ ' )J#G&:U&?#@<xCC/Rh5V3Vv}Kt \xb2 BhJt2&A((((((Pvx^^#m:2AAA&&&l3(&&1###$)$$$$)-/geW2U/^/hC5RRVVV$@@- \x5c `5OC]s \xa0 hO&(((((((KbII#-_:X24A&&&2mO@&&&3##$)$$$)#CQ5#kFQR#-#-JO@nhRV6 \x5c K; \x5c U3#I6#V}#3(P1B(B1P199?5-#Q::X4AA&A2Yg3&&&3#/$$$$-#:X[QQY[3/#/7E75UhV-i1}PPT[r+ \xa0 ?oJ@91P1B1K} \x5c ^###5Y:22l4A42mCC(&&-##$$$)-#Q&lllF3Qx#//T**7OOV631&iBP \xaf wh?5wbU \x5c @rbb@V^^^3###<Y:X2222mLok(&&R##$)-/#2Y{W<<3#C/T**7TJJ/VP(&(1BzE©N,(&1vr@@br \xa0 n?5/V##[_mmYm_fIIoi&(##$->###3Sg5Y<¡VT**TTOJJ#5BP(&&&B[aG&&(&&&&&(1KKKr55#--L<ff<gSkLS&?/#$)->###Fll~m[W<IT**TTOJJ#RPP((&&&&11&&&(((((&(B1(Bb@B \xa0 #35-#CkgkkkLLLg[(un#$>>###/Qjg¡CQeg¡O*77TOOJJ#]KK1&&((&&&(((((&&&&&&&K&@#vr3###3SCSg<<<{[&(/$->>####/LUF5J**7TOJ###+@9KP&(&&(&&(((&&&&&(&K&n#vP@#^^##5S<e24A~Fg&@$)->####/<<S<$$/E*TOJ###- ' ?;vK(&(&&&&&&&&((((&1r&b#?K@-UI###z~2A(&&Almoi9$)>########CLC>)qq-OTOJ###$.+b[KB&&&&&&&&&(&((&b1}#?53nn#>>[~2l(&&&Alm3§9$$)-#####>>6))$$$$ ' )#JJ###/q%h[BKP&&(((&(&&(&&1K9Cn@ ' ®I/$>[~:4A&&AA2FFC§?$$$->####--)$$$$$$$$)-#####s$. ' ?P(&&&&&&&&&&&(K`]]]VV$) ' )5~:l(&&AA4mfJr))$))->#-)$$$$$$$$$$)--####j \xb4 q$ '' \xb4 \xb2\xb4 ± \xa8 K± \xb2 %% ' % ' $ID$D%6F~2(&&AA2mW¢#n$-)$$$))$$$$$$$$$$$$)->>#>#& \xb4 ' $ '''' q$q '' .%%0.DDDD?b0%%>5~2AA2A4:Fz<VIR#$>-$$))$)$$)$$$$$$$$)-->>#>#;&® ' .sDD.0...ss
%$-#f2AA42:eFQ[¢^I##$))-))))$)$))$$$$$$$$->>####/&Bv
DDssDDDs00.sb336I~l4llceFF<<33###$$)$)$$)))$$$$$$$$$$$->>>##>#OBB1sDDDsD5:2ceYe \x5c @nh63:22222GQF<<<C5/###$))q$$)))$$)$$$$$$$$$$-->##>##E|9 \xa8\xa8 (1± \xb2 e_22m~WRr \xa0 UkQ4422eFFQ<<II3####$)$))$$$))$)$$$$$$$$$$)->##>#OoOEz1PP(&&&4FmSC{f__A6hFGu22QQW<<<3I3#####$$)-)$$$$$))$$))))$$$$)->>>#-@oOJTNiBBB&zo<<##/{mll<<gFYmQx<<C53######$)))))$$$))$$)$))$$$$$$-->>#5&bOSo7*Nu&B[mfC##L:42l~2A<~<kxkCI^#######q))$$$$)$$$$)))$$$)$$$$)>>##r?&UOo7*t¥ \xaf W<F:2QWF4442242mkQkSSxIR#########$))$)$)$$))))$)$$$)$)$)->##;&b?1R?¡T*w*¥*Fg:&AAc4l~~Y~mffjn¡C53/##########$$$)))))))))$$$$$$$$))--##}& \xa8 &@b \x5c br¢TE*oxF¡F~:22~:e_F<[@v5/#############q))))))))$$$$)$$$$$$$))##}&1B&( \x5c K@ \x5c }KK?L*SCLFg_mYFFF_Fzxb###############$)))))-$))$$$$$$$$$$)>##v(11(1(v@1?@1&&BPogfFSjfWWFFQ<LS^R################$))))))))$)))$$$$q$->##?&11PB(?PU}&b91U?1B¡SgfQ<QQfxgS3J#####/##/##########))$))--)$))$$$$$q$>$6#@&1P4(B1}r93((b?@KKCg<<<C3J######/#/#####/#########$-$)))6)))$$$$$$$>#@6V&P14(1&iib5@&199¦h¦9K^goJ^^Irr@@U55IVV##-/-/########)))))))))$$$$$$$>> \x5c V#BB1(PPPi(¦9nbR}11v?U@;IRU?9;?@UUUU55I33^-#3/########)-))))))$$$$)$)-#^ \x5c #&1P1P1iK9?@IR}K((&v#5&nbB¦U55U \x5c @ \x5c @ \x5c 55I^-#^R#########$-$$$$$$$$$$$$$>>>#b&P(PPPPi19v?bU35K??/9@b1 \x5c 3@;}9K9v?rn \x5c 5IVV55######### """
from kandinsky import set_pixel
l , c = 100 , 75
coeff = 4
def decodage6 ( etape1 ):
#etape1=dupont[c*ligne+colonne]
etape2 = ord ( etape1 ) - 35
etape3 = ord ( palette [ etape2 ])
etape4 = ( etape3 >> 11 ,( etape3 >> 5 ) % 64 , etape3 % 32 )
set_pixel ( colonne , ligne ,(( 8 * coeff ) * etape4 [ 0 ],( 4 * coeff ) * etape4 [ 1 ],( 8 * coeff ) * etape4 [ 2 ]))
#decodage2
for ligne in range ( l ):
for colonne in range ( c ):
etape1 = dupont [ c * ligne + colonne ]
#etape1=(dupont[2*c*ligne+colonne],dupont[2*c*ligne+colonne+1])
couleur = decodage6 ( etape1 )