cat.py

Created by schraf

Created on October 13, 2023

4.43 KB


from kandinsky import *
from math import *
R=130
def choix(i):
 if i==0:return 'MTHGMSHJMVHKFBKWDTKLDIKLDLKNDUKKDLKJDGKIDHKLDGKHDFKGDCJXCYJTDBJWDBJXDWJUDAJVCWJGCTJMCTIQCTITCDJDCJJICIJGCJIKNPIHCFJACMJPCYJNDCJZDDKEEBJQCVJSDLKLDUKNDWJZDZJXCWJVCYISCTIOCSJJCSIOCKIOABGYFBGYEWGREWHAADIKNSIENNIANMIDNNIDNLBONIICCKIPFAHZNPIENLBRNMIANLIFBXBLHMBJJRBMJQCTJGDLJNCKIKCHJCCFFHLDFGLDFJDNKMDGJCCOJQDOJVDCKHDCIYFFDGFFIYFCHBANBQBEHJBEHKMUHNBNJSDIJCCMINNVGWEYHEMTGLMOGLERGKMRGKMZGLEPGKEQGLCDIYDEKHDHKJDJKICWJTBPJVDFJTCWFGKYFCJBDHJCFELBFLLAFEISCOJTDPJPDGKKDIJFCEIYDHJACPJADHJBCFHWNFBQMJGHMWHOMQGKCFFJEZIOAAGWAAGZADILNRIPCQGTCPJJCTJNDBJUDXKKDHLPDIKJDFKIDLLTDKFJLAGIMOGJCDFGJBCHGPNKHYEZKWGEKPEHGGCFHZCJINNSHWNEHQNCBONOHONGBPMGGAKNDPIUFCKZGLEMMIBQNCHLMXHKMSBWINCSIPBYIZCSFHJHCKGPNJBRBCHIMPHLBHJOCVFHBLJTCOJDCFIGALILAQIBNOBOMHGJCCGEMNGGMXHONPHTNRIGBXIRFDDFKNDXJZDUJVDDJKBIFKCIGPCIFGCKGRCGGPCNIRCGGIMJBQMYBQJSCOITDMJNCWIXFEDMLSDMKICZITFEKEFXKFDEKJDLKKGBKLGBEWHQBSNHBMMAGWNNILEZMUEZIKNRHUANJDFFKYGIELMIGCMKGZNUIJAMHCANJCCEISAGEEJWDRKSGCKXGIMMHFMYHBEYHVNFFAIKCEHZCAMUHEMJHGAHEGAGEHGPCHGIEGKREHFHJKFCJCFGDILM'
 if i==1:return 'GRNRHSBSMYHSAAGSNSBMJPBKJQBLBXITCCGNCGIIARIMAQBRNLGXLOFMBIJOCTJWDCIWCWIYCSJXDDJVDBJSDNIVCZJSCMIKAMIFBVMQBSHVEYMOEZIWDEIZDFJQDHNJDPNRHVNHBOHOAIEEAJHMBLLZEQFFJBCGGMCNFILBFJAWHHAEHAAAISCZFHJPCUIPNSBOAUEVFHJJCYKGFEJBAMJDFCLBGICJGIEEKJDDHIMSBXIMNTINNUIKCYIXASEQFHBGHLBIJLDAFSDHKACCJYDZKFCWJSCVHJAJICBXIOCQFHNCBQNGHVAAGXAAHBAAIREYMXHSNVHMDHKGDAFEIVCFGRCKGOCKFMCAMWBTMQBVIHNTIGAGHEMVBRMOGCKLBKGSLNDWJYDBIVFHLAFCKDDJFEJLFANAHJNOIBAHEEGNCJITATIXBWMQEZMZBQJVDOIVFEIXDHBLJQDJLRDKLODJNNDTNODLKGCXFJAXFHCAFHBHFLLFFHEJAGIOATIZCWITCYJXDONPIKCRIKALIAAJEELPGZBKJODFHICVGULMGONPILATBOMSHGAUESFCDEJNDNACIJBXIQBYIWCMIDBXNVITBWHZNSGTCMGPCEGICIGLNGHOBSMRBRNJBONTIICUHHCVHEMSBVMSFAKREGAJIFCKGIMKGIEIMGGBKQFAIOBYMTHEAEBMNOHRBVIINRHLBKJMFDKFDHKPGFKZGEDZGFCCGGMGGHCGIJEZMYCDIUACHAAFIYCLFODLNNDIKNGFMGGYNUIDALICBVHYNPBONVGSCQIUFDJDCCGMCKFRDONKDPNNGPCCJDEYMYCAISAJIDNKFSDONMDPNIGNNCHIMIGDKVGHKUCGHWNGFMBKJTDKKNDGKNDIKFCXKHEDKGFYDEJVCQJVDNLQGYEPHXAEEDMDEWMADYGHMGEJJYDVLXDOHNNGBRMTEWMPGPCKGLMPHKDCJVCTIVFCJEFEIRCRIMNVBXMUBQHVNTBO'
 if i==2:return 'GUNLDHNSIONVHSABIOEZLBFHAYBMJSBIFOJPFSJRCUJVDMNNGRCNIVEZMOHGCSHJAGDVLYDTJVBSMLGGMJHICYKICXKGDEGSCIIBCFIIAIHYCABICWFEEBADDXNTDEJOCMGXMLGKNFBOACEDNUIOFCNGFPCRFIAUEKAOHXBRMQEXJZENFHJCAPIJEXIKNVICAKGZAFEEKLCPFEIKCZIYAFHZCHFHLBFAJEDGJFDBJIFECXHEAFIZAKIDABBOJQCNGRCMIVCYIONTDYGKCIFIJPBIHKNODGNPDNAHJGCGJHEEHRCENBBQNRIEAPISFECNJICSKODUKZGIMZHICSHHCSIVFBJDCSIZDCJLCNFOCOJVBQHUABHPBTNFHZBQNABUHZCEMZCFINFEJEEZNCHKBEJICGHVAPJVBTMTBTICNQHVELHRAGDPBGFLDEHFCVHHDDKLFIJHBYMUHKDKLTHINPDGNSIQBBHIDILNDIJBFFDXKADDJSDDGSCNGOLTDQNIDJKNDZFAMYCEHSNRBOASHHMQHECTJODHNGEYKWGHDNKQCSHGMYCHFTDAIVEYMUGQNHGOMKFIBTMVBQNFHVBSIHBXMMGNCIKUEJAPJHFDCVGZCTJBFELWENLTDLKIEDLPGXNRIRBYIXDCNIFQBICAIQNTIBAMHFEHKVGEKXFBHWBQNMIENIDFKCEMKTFZKADXGFMUBXIYDDGTNTHUAAJFDIFIATJYCAMSHEDJNPGOCRGWLMFSCTHIAJIHNJDQGZMLGEKZDUKLDSKHBGJRCMGSCKFOBGDDJWCRFGDTLYFCNABYFRDTLWEMHSBUICBZBPMVGGKVEQMMEWHZCDFSEFKOGJMGGEMJGCCHHWCJGGKSGHCJKVCLGKCNJKFBDAIQNODNNNBMAWHGCRGYCOGOLNGUCPFODDNSDFFHDDJYEKAVBMFVKRCGHQNEBQHPMQHJBCJFFCIXDENGBQATKBDZFCINCNGAJXIFALFGCMGRBGHQ'
 if i==3:return 'MYCIFTCFHTANJVAOJVCOHYBTGYACITCUKCCZKAENKQDXLGFRCDNDGNMKHBACEEAHIGNTHWBRMSBTMSGFCHFRCCHQNDEZJBNPHCMOGDMHHFCSGWERLZDTLXDABGKFDAHJDMNJHHBDFCJPDEJBCMKLFLCNKLBNKPCEFHBNMTHKCVHGEGADDTNPDKJJEGAIGMCHNDFFJLDKLRHEAUETLUCWFBEIEUHMBQAMIDNGBUHPNGDINGFNCCFXJZCCKBDCJNFUBJJPCKJRIDNRDEJWDVHPAIDMKPGKKWGCKKFJBUBIJKCRNDBQIECPNABQEMMEEYMNBXIZFGKGEDADFLKMCOKLEWMNEXMMBVMIHECUJBNODFIYFHJGDSKJDCKEDDIVFNCPJWAOJCFDELFBJQDCJAAEEIMIHGLRHCCUHFNBCCGOLKGQCKGSEDAMIHNRHXCCHONJDMAHGNCKGJMRBVIEBXNBFECCMWBQNLDCHAEHMGGGKZGKMEEZJHDILTDTMBETLVCZKCEKMJGWDPNKFYAZBKLPHDMSGCKCDWKNFUCOGRDJJSDTFFIXAVIJBVIQNRIANVBOJVCMFOCMIABXMIEJEWKZGHMXCHFJCCNABVMUBTHZNODMJKDNKKEEKQGKMGBQNDFHDNJMCYIYCYGOCAJWAMBMMUHCAKIICXFIJFEWIXFGJCCKGUCIMZBMLSDNKACPNCEZJNCQJNCXFZJXCABNHQBXMWGTBGJFEYEFKQEYJBDCNSJCCHKSDMNGHNCWHJLVCYIVDCJBCVHKAGIRARJZDAIRDLFHJAANHSNTBRHRCJFRJFFAMFEGJJEWMLGFCNISDDJQCHJGFEJRDQACIVFDISCUHICQGWDQLSHJCUKQEZEHHXMZFCJLBIEGAKENKBDKNNDCBSMWHPMTBXNCHUBVIGKHCLJIDNLSDILKGNCMGMMLGIKUETAXIRNUHVABDEKBEBKGGDCGFZAZFINCCJGPNMHJBFEBKZGCDSNKGTDEJZCW'

def conv(s):return 26*(ord(s[0])-65)+ord(s[1])-65

for k in range(4):
 fils=choix(k)
 a=conv(fils[:2]) 
 x1,y1=R*cos(a*pi/180),R*sin(a*pi/180)
 for i in range(len(fils)/2-1):
  a=conv(fils[2*i+2:2*i+4]) 
  x2,y2=R*cos(a*pi/180),R*sin(a*pi/180)
  for n in range(131):
   x=int(160+x1+(x2-x1)*n/R)
   y=int(110-y1-(y2-y1)*n/R)
   set_pixel(x,y,(max(0,get_pixel(x,y)[0]-20),)*3)
  x1,y1=x2,y2