1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
| class sommet:
"""Classe définissant un sommet avec pour attribut:
- coordx = coordonnées sur l'abcisse
- coordy = coordonnées sur l'ordonné
- hauteur = sa hauteur par rapport au segment [AB]
- segment = la longueur du segment correspodnant au point
- midiTone = le code correspondant à la tonalité du sommet en Midi
- midiTime = la durée de la note
On a un compteur pour savoir combien de notes sera joué au totale"""
nombre_de_notes = 0
def __init__(self):
"""constructeur de classe"""
self.coordx = 0
self.coordy = 0
self.level = 0
self.hauteur = 32
self.segment = 0
self.midiTone = "0x00"
self.midiTime = "0x00"
self.midiToneSplit = "00"
self.midiTimeSplit = "00"
self
if self.level == 5:
sommet.nombre_de_notes += 1
def __equilibre__(self):
print "__equilibre__"
if self.hauteur == 0:
print "si hauteur égale 0"
if self.midiTone != "0x00" or self.midiToneSplit != "00":
print "si le son n'est pas nul"
if self.midiTone != "00":
print "alors on le traduit en hauteur non split"
self.hauteur == int(self.midiTone,16)
print "midiTone :"+str(self.midiTone)+"= hauteur:"+str(self.hauteur)
else:
print "alors on le traduit en hauteur split"
self.hauteur == int(self.midiToneSplit,16)
print "midiTone :"+str(self.midiToneSplit)+"= hauteur:"+str(self.hauteur)
elif self.midiTone == "0x00" and self.midiToneSplit == "00":
print " si les 2 son sont nul, on traduit la hauteur"
self.midiTone= str(hex(self.hauteur))
print "midiTone :"+str(self.midiTone)+"= hauteur:"+str(self.hauteur)
self.midiTone= str(hex(self.hauteur).split('x')[1])
print "midiToneSplit :"+str(self.midiToneSplit)+"= hauteur:"+str(self.hauteur)
elif self.midiTone == "0x00":
if self.hauteur != 0:
self.midiTone= str(hex(self.hauteur))
elif self.midiToneSplit == "00":
if self.hauteur != 0:
self.midiTone= str(hex(self.hauteur)).split('x')[1]
elif self.segment ==0:
if self.midiTime != "0x00" or self.midiTimeSplit != "00":
if self.midiTime != "00":
self.segment == int(self.midiTime,16)
else:
self.segment== int(self.midiTimeSplit,16)
elif self.midiTime == "0x00" and self.midiTimeSplit == "00":
self.midiTime= str(hex(self.segment))
self.midiTimeSplit= str(hex(self.segment)).split('x')[1]
elif self.midiTime == "0x00":
if self.segment != 0:
self.midiTime= str(hex(self.segment))
elif self.midiTimeSplit == "00":
if self.segment != 0:
self.midiTime= str(hex(self.segment).split('x')[1])
elif self.midiTone != "0x00" and self.midiToneSplit == "00" :
self.midiToneSplit = self.midiTone.split('x')[1]
elif self.midiTone == "0x00" and self.midiToneSplit != "00" :
self.midiTone = "0x"+self.midiToneSplit
elif self.midiTime != "0x00" and self.midiTimeSplit == "00" :
self.midiTimeSplit = self.midiTime.split('x')[1]
elif self.midiTime == "0x00" and self.midiTimeSplit != "00" :
self.midiTime = "0x"+self.midiTimeSplit
def __getattr__(self, name):
"""Si l'attribut demandé n'existe pas, on renvoi une Erreur"""
print("Early Error : {} n'est pas un attribut de cette classe ".format(name) )
def __delattr__(self, attribut):
"""On ne peut supprimer aucun attribut de cette classe"""
raise AttributeError("Early Error : vous ne pouvez supprimer aucun attributs de cette classe") |
Partager