コード例 #1
0
ファイル: Binary.py プロジェクト: danse-inelastic/pyre-all
    def __init__(self, document, attributes=None):
        Composition.__init__(self, attributes)
        
        self._b1 = None
        self._b2 = None

        return
コード例 #2
0
ファイル: game_maintheme.py プロジェクト: anorman728/LostArt
# Main theme

# Import modules.
import os
import sys

# Import classes from other files.
sys.path.insert(0, './src')
from Composition import Composition
from Voice import Voice

# Script below.

comp = Composition(2, 110)

oboe = comp.buildVoice(69, 'Oboe')
guitar = comp.buildVoice(25, 'Guitar')
violin = comp.buildVoice(41, 'Violin')
horn = comp.buildVoice(61, 'French Horn')
cello = comp.buildVoice(43, 'Cello')
timpani = comp.buildVoice(48, 'Timpani')
lowStringSec = comp.buildVoice(50, 'Low string section')
lowStringSec.adjustPitchOffset(-24)
tuba = comp.buildVoice(
    61, 'Tuba'
)  # 61 is actually french horn, because it's the only brass that doesn't sound terrible.
tuba.adjustPitchOffset(-24)

# Tweak volume, because some voices are really low for some reason.
violin.setVolume(80)
guitar.setVolume(80)
コード例 #3
0
ファイル: Geometry.py プロジェクト: danse-inelastic/pyre-all
 def __init__(self, document, attributes):
     Composition.__init__(self, attributes)
     self._bodies = []
     return
コード例 #4
0
ファイル: untitled19.py プロジェクト: anorman728/LostArt
import os
import sys

# Import classes from other files.
sys.path.insert(0, './src')
from Composition import Composition
from Voice import Voice
from ScaledNote import ScaledNote
SC = ScaledNote

# Source common settings.
exec(open("./default_settings.py").read())

# Script below.

comp = Composition(2, 100)

violinSol = comp.buildVoice(41, 'Violin Solo')
violinSol.setVolume(70)

harp = comp.buildVoice(47, 'Harp')
harp.setVolume(100)

stringEns = comp.buildVoice(49, 'Strings')

cello = comp.buildVoice(43, 'Cello')
cello.adjustPitchOffset(-24)

fHorn = comp.buildVoice(61, 'French Horn')
fHorn.adjustPitchOffset(-12)
コード例 #5
0
ファイル: little_kefka.py プロジェクト: anorman728/LostArt
import os
import sys

# Import classes from other files.
sys.path.insert(0, './src')
from Composition import Composition
from Voice import Voice
from ScaledNote import ScaledNote
SC = ScaledNote

# Source common settings.
exec(open("./default_settings.py").read())

# Script below.

comp = Composition(2, 160)

violin1 = comp.buildVoice(41, 'Violin 1')
violin2 = comp.buildVoice(41, 'Violin 2')

viola = comp.buildVoice(42, 'Viola')
viola.adjustPitchOffset(-12)

cello = comp.buildVoice(43, 'Cello')
cello.adjustPitchOffset(-24)


baseKey = 70
comp.setKey(baseKey)

#comp.setScale(Voice.NATURAL_MINOR)
コード例 #6
0
ファイル: GlyFormat.py プロジェクト: tylerjstewart/PyGly
    def toMonosaccharide(self, mstr, substituents=[]):
        m = Monosaccharide()

        MODS = mstr.split('|')
        MONO = MODS[0].split('-')

        #set mono number
        #m.set_num(int(mono_num))

        #set ring
        ring = MONO[-1]
        ringStart, ringEnd = ring.split(':')
        m.set_ring_start(int(ringStart))
        m.set_ring_end(int(ringEnd))
        MONO.remove(ring)

        #set class
        superclass = MONO[-1]
        MONO.remove(superclass)
        m.set_superclass(superclass)

        #set anomer
        anomer = MONO[0]
        MONO.remove(anomer)
        m.set_anomer(anomer)

        #set stem
        configs = []
        stems = []
        for st in MONO:
            configs.append(st[0])
            stems.append(st[1:])
        m.set_config(configs)
        m.set_stem(stems)

        #set mods
        mod_list = []
        mod_position_list = []
        for mod in MODS[1:]:
            num, modi = mod.split(':')
            mod_position_list.append(int(num))
            mod_list.append(modi)
        m.set_mod_positions(mod_position_list)
        m.set_mods(mod_list)

        #set substituents
        #s_num = int(mono_num) + 1
        for s in substituents:
            #print 'add_substituent in new_monosaccharide > from_str', substituent.name()
            m.add_substituent(s)  #,s_num)
            #s_num += 1

        #set composition
        composition = {}
        C = Composition().unit(superclass)['C']
        H = Composition().unit(superclass)['H']
        N = Composition().unit(superclass)['N']
        O = Composition().unit(superclass)['O']

        for mod in mod_list:
            C += Composition().unit(mod)['C']
            H += Composition().unit(mod)['H']
            N += Composition().unit(mod)['N']
            O += Composition().unit(mod)['O']

        for substituent_string in substituents:
            C += Composition().unit(substituent_string)['C']
            H += Composition().unit(substituent_string)['H']
            N += Composition().unit(substituent_string)['N']
            O += Composition().unit(substituent_string)['O']

        m.set_composition(C, H, O, N)

        return m
コード例 #7
0
ファイル: sleep_music_01.py プロジェクト: anorman728/LostArt
import os
import sys

# Import classes from other files.
sys.path.insert(0, './src')
from Composition import Composition
from Voice import Voice
from ScaledNote import ScaledNote
SC = ScaledNote

# Source common settings.
exec(open("./default_settings.py").read())

# Script below.

comp = Composition(2, 100)

strings = comp.buildVoice(50, 'Strings')
cello = comp.buildVoice(43, 'Cello')

melodyVol = 100
backgroundVol = 60

cello.adjustPitchOffset(-12)

baseKey = 58
comp.setKey(baseKey)

comp.setScale(Voice.MAJOR)

# Functions
コード例 #8
0
import os
import sys

# Import classes from other files.
sys.path.insert(0, './src')
from Composition import Composition
from Voice import Voice
from ScaledNote import ScaledNote
SC = ScaledNote

# Source common settings.
exec(open("./default_settings.py").read())

# Script below.

comp = Composition(2, 160)

leadGuitar = comp.buildVoice(27, 'Lead Guitar')
leadGuitar.adjustPitchOffset(-12)

rhythmGuitar = comp.buildVoice(25, 'Rhythm Guitar')
rhythmGuitar.adjustPitchOffset(-12)

perc = comp.buildPerc()

bassGuitar = comp.buildVoice(34, 'Bass Guitar')
bassGuitar.adjustPitchOffset(-24)

leadVocal = comp.buildVoice(28, 'Lead Vocal')
leadVocal.adjustPitchOffset(-12)
leadVocal.setVolume(80)
コード例 #9
0
import os
import sys

# Import classes from other files.
sys.path.insert(0, './src')
from Composition import Composition
from Voice import Voice
from ScaledNote import ScaledNote
SC = ScaledNote

# Source common settings.
exec(open("./default_settings.py").read())

# Script below.

comp = Composition(2, 110)

guitar = comp.buildVoice(25, 'Guitar')
flute = comp.buildVoice(74, 'Flute')

guitar.adjustPitchOffset(-12)
flute.adjustPitchOffset(12)

guitar.setVolume(80)


comp.setKey(64)

strumSp = .03

コード例 #10
0
ファイル: kefka.py プロジェクト: anorman728/LostArt
# portion of "Dancing Mad", a song by Nobuo Uematsu in Final Fantasy VI.  The
# purpose of the script is to demonstrate changing from a major key to a minor
# key easily.

# Import modules.
import os
import sys

# Import classes from other files.
sys.path.insert(0, './src')
from Composition import Composition
from Voice import Voice # For constants

# Script below.

comp = Composition(2, 160)

rightHand = comp.buildVoice(1, 'Right Hand')
# Right hand of the keyboard.  I never built a left hand voice.

rightHand.setKey(7+12*4)

def staccatoNote(note, isChromatic = False):
    if isChromatic:
        rightHand.scaledChromaticNote(note,.5)
    else:
        rightHand.scaledNote(note, .5)
    rightHand.rest(.5)

def kefka():
    staccatoNote(0)
コード例 #11
0
# This will be the boss battle, though.

# Import modules.
import os
import sys

# Import classes from other files.
sys.path.insert(0, './src')
from Composition import Composition
from Voice import Voice
from ScaledNote import ScaledNote
SC = ScaledNote

# Script below.

comp = Composition(2, 110)

strings = comp.buildVoice(41, 'Strings') # Same as violin, but different part.
violin = comp.buildVoice(41, 'String Ens')
tuba = comp.buildVoice(59, 'Tuba')
timpani = comp.buildVoice(48, 'Timpani')
cello = comp.buildVoice(43, 'Cello')

# "Metal" variant.
#strings = comp.buildVoice(31, 'Distorted Guitar')
#violin = comp.buildVoice(26, '"Steel" Acoustic Guitar')
#tuba = comp.buildVoice(34, 'Electric Bass')
#timpani = comp.buildVoice(117, 'Bass drum') # This is actually a "Taiko drum", whatever that is.
#cello = comp.buildVoice(30, 'Overdriven Guitar')

violin.setVolume(80)
コード例 #12
0
ファイル: mouse_utopia.py プロジェクト: anorman728/LostArt
import os
import sys

# Import classes from other files.
sys.path.insert(0, './src')
from Composition import Composition
from Voice import Voice
from ScaledNote import ScaledNote
SC = ScaledNote

# Source common settings.
exec(open("./default_settings.py").read())

# Script below.

comp = Composition(2, 160)

leadGuitar = comp.buildVoice(27, 'Lead Guitar')
leadGuitar.adjustPitchOffset(-12)

rhythmGuitar = comp.buildVoice(25, 'Rhythm Guitar')
#rhythmGuitar = comp.buildVoice(1, 'Piano right hand') # Piano version.
rhythmGuitar.adjustPitchOffset(-12)

perc = comp.buildPerc()

bassGuitar = comp.buildVoice(34, 'Bass Guitar')
#bassGuitar = comp.buildVoice(1, 'Piano left hand') # Piano version.
bassGuitar.adjustPitchOffset(-24)

leadVocal = comp.buildVoice(41, 'Lead Vocal')
コード例 #13
0
    """
    def __init__(self, filePath):
        """
        Constructor of the class
        """
        self.jsonFileName = filePath
        self.parsedData = self.parseJson()

    def parseJson(self):
        """
        json parser
        """
        with open(self.jsonFileName) as f_in:
            return json.load(f_in)

    def getIp(self):
        return self.parsedData["MQTT_BROKER"]


try:
    masterConfig = ParseJson("./Config.json")
except:
    traceback.print_exc()
    sys.exit(1)

ipAddress = masterConfig.getIp()

print(ipAddress)

Composition(ipAddress).start()
コード例 #14
0
from Note import Note
from Composition import Composition
from CompositionPlayer import CompositionPlayer
from MetricManager import MetricManager
from GA import GA
from Notes import *

selectedTrack1 = Composition([C4, G4, A5, A5sh, F4, E5, D4, C4])
# selectedTrack2 = [E, D, C, D, E, E, D, D]
# selectedTrack3 = [F, A, D, D, G, E, A, C]
alteredComp = GA().runGA(selectedTrack1, 400)
CompositionPlayer.play(selectedTrack1)
CompositionPlayer.play(alteredComp)
コード例 #15
0
import os
import sys

# Import classes from other files.
sys.path.insert(0, './src')
from Composition import Composition
from Voice import Voice
from ScaledNote import ScaledNote
SC = ScaledNote

# Source common settings.
exec(open("./default_settings.py").read())

# Script below.

comp = Composition(2, 80)

orgInd = 20
#orgInd = 1 # Piano makes it easier to hear while testing.
organHigh = comp.buildVoice(orgInd, 'Organ High')
organMid = comp.buildVoice(orgInd, 'Organ Mid')
organLow = comp.buildVoice(orgInd, 'Organ Low')

organMid.adjustPitchOffset(-12)
organLow.adjustPitchOffset(-24)

defKey = 68
comp.setKey(defKey)

# Functions
コード例 #16
0
import sys

# Import classes from other files.
sys.path.insert(0, './src')
from Composition import Composition
from Voice import Voice
from ScaledNote import ScaledNote

SC = ScaledNote

# Source common settings.
exec(open("./default_settings.py").read())

# Script below.

comp = Composition(2, 160)

leadGuitar = comp.buildVoice(27, 'Lead Guitar')
leadGuitar.adjustPitchOffset(-12)

rhythmGuitar = comp.buildVoice(25, 'Rhythm Guitar')
rhythmGuitar.adjustPitchOffset(-12)

perc = comp.buildPerc()

bassGuitar = comp.buildVoice(34, 'Bass Guitar')
bassGuitar.adjustPitchOffset(-24)

brass = comp.buildVoice(62, 'Brass Section')
brass.setVolume(80)
コード例 #17
0
# Import modules.
import os
import sys

# Import classes from other files.
sys.path.insert(0, './src')
from Composition import Composition
from Voice import Voice

# Source common settings.
exec(open("./default_settings.py").read())

# Script below.

comp = Composition(2, 110)

guitar = comp.buildVoice(25, 'Guitar')
violin = comp.buildVoice(41, 'Violin')
flute = comp.buildVoice(74, 'Flute')
perc = comp.buildVoice(116, 'Woodblock')

violin.adjustPitchOffset(-12)
violin.setVolume(127)

comp.setKey(58)


# Functions
def stacEighth(voice, note):
    '''Staccato eighth note.'''
コード例 #18
0
ファイル: Transformation.py プロジェクト: Alex-Song/vmaf
 def __init__(self, attributes):
     Composition.__init__(self, attributes)
     self._body = None
     return
コード例 #19
0
ファイル: Transformation.py プロジェクト: zliu72/Combustion
 def __init__(self, root, attributes):
     Composition.__init__(self, root, attributes)
     self._body = None
     return
コード例 #20
0
import os
import sys

# Import classes from other files.
sys.path.insert(0, './src')
from Composition import Composition
from Voice import Voice
from ScaledNote import ScaledNote
SC = ScaledNote

# Source common settings.
exec(open("./default_settings.py").read())

# Script below.

comp = Composition(2, 160)

leadGuitar = comp.buildVoice(27, 'Lead Guitar')
leadGuitar.adjustPitchOffset(-12)

rhythmGuitar = comp.buildVoice(25, 'Rhythm Guitar')
rhythmGuitar.adjustPitchOffset(-12)

perc = comp.buildPerc()

bassGuitar = comp.buildVoice(34, 'Bass Guitar')
bassGuitar.adjustPitchOffset(-24)
bassGuitar.setVolume(127)

violin = comp.buildVoice(44, 'Violin')
# 44 is actually contrabass, but it sounds softer.
コード例 #21
0
ファイル: Parse.py プロジェクト: charliecamenen/Pronostic
    def parseAllSite(self):
        global lst_compo_ext, lst_compo_dom, lst_carton_dom, lst_changement_dom, lst_changement_ext, lst_carton_ext, lst_butteurs_ext, lst_butteurs_dom, score_mt

        cpt = 0

        # Pour chaque championnat
        for link in self.loadCsv("C:/Users/ccame/Desktop/Pronostic/championnat_interessant.csv"):
            print(link)

            # ON récuperre le code source HTML
            soup_page_compet = self.connect(link)

            # Nom de competition et du pays
            nom_compet = soup_page_compet.find('div', class_='panel-heading livescore_head').find('div', class_='lienCompetition').text

            # div des resultats
            resultat_page = soup_page_compet.find('div', class_='objselect')

            # Liste des journées
            journees = resultat_page.findAll('option')

            # Pour chaque journées
            for journee in journees:

                #Pour limiter le nombre de match pour les test
                #if (cpt > 200):break

                # ON récuperre le code source HTML
                soup_page_resultat = self.connect(self.url + str(journee['value']))

                # Liste des matchs
                matchs = soup_page_resultat.find('div', class_='panel-body').findAll('tr')

                # Parcour de la liste de matchs
                for match in matchs:

                    # On réccupere l'ID du match
                    try:
                        id_match = match['data-matchid']
                    except:
                        id_match = ''

                    # Colonne du match
                    data_match = match.findAll('td')

                    # Si le match contient des informations
                    if (data_match != []):

                        # Heure du match
                        heure = data_match[0].text

                        # Parcour des span de resultat de match
                        resulat_match_span = data_match[2].findAll('span')

                        # Si le match est terminé
                        if (data_match[1].text[5] == 'T'):

                            # Split du score des deux equipes
                            score = resulat_match_span[2].text.split('-')

                            # Statu du match
                            statut_match = 'termine'

                            # Equipe domicile
                            lst_but_domicile = [resulat_match_span[0].text, score[0].strip()]

                            # equipe exterieur
                            lst_but_exterieur = [resulat_match_span[3].text, score[1].strip()]

                            # Si l'équipe a domicile a plus de buts
                            if (int(score[0].strip()) > int(score[1].strip())):
                                # Alors l'équipe a domicile gagne
                                resultat_dom = 'g'
                                resultat_ext = 'p'
                            # Si l'equipe a l'exterieur a plus de buts
                            elif (int(score[0].strip()) < int(score[1].strip())):
                                # Alors l'equipe a l'exterieur gagne
                                resultat_dom = 'p'
                                resultat_ext = 'g'
                            # Sinon
                            else:
                                # Match nul
                                resultat_dom = 'n'
                                resultat_ext = 'n'

                        else:
                            # Statut du match
                            statut_match = 'a venir'
                            # Données vide pour les résultats
                            lst_but_domicile = [resulat_match_span[0].text, '']
                            lst_but_exterieur = [resulat_match_span[4].text, '']
                            # Resultat vide pour l'instant
                            resultat_ext = ''
                            resultat_dom = ''

                        # Ouverture du lien du match
                        soup_page_match = self.connect(self.url + str(data_match[2].find('a')['href']))

                        # Date du match
                        lst_date = self.jourSemDate(soup_page_match.find('div', class_='col-xs-12 text-center header').find('a').text)

                        # Année de la saison
                        saison = self.calculAnneeSaison(lst_date[1])

                        #Chargement des infos sur le match (cartons, buts, changements)
                        div_ajax_2 = soup_page_match.find('div', id='ajax-match-detail-2')

                        # Si cette div existe
                        if (div_ajax_2 != None and div_ajax_2.text != ''):

                            #Si le score MT existe
                            if (div_ajax_2.find('table', id='match_evenement_score') != None):
                                # Alors on réccupere le score a la mt
                                div_mt = div_ajax_2.find('table', id='match_evenement_score').find('tr').findAll('td')
                                score_mt = div_mt[1].text.split('-')

                            #Si les evennements du matchs existent
                            if (div_ajax_2.find('table', id='match_evenement') != None):

                                # Liste des evennement du  match
                                list_event = div_ajax_2.find('table', id='match_evenement').findAll('tr')

                                #Liste vide des différents évennement
                                lst_butteurs_dom = []
                                lst_butteurs_ext = []
                                lst_carton_dom = []
                                lst_carton_ext = []
                                lst_changement_dom = []
                                lst_changement_ext = []
                                dict_entre_sortie = {'entree': '', 'sortie': '', 'minute': ''}

                                # Pour chaque evenement du match
                                for event in list_event:

                                    # SI c'est pas une pub a la con
                                    if (len(event.findAll('td', class_='bg-danger promo')) == 0):

                                        # Liste des colonnes de l'evennement
                                        detail_event_list = event.findAll('td')

                                        # Si l'evenement concerne l'équipe 1
                                        if (detail_event_list[0].find('a') != None):

                                            # si c'est un but
                                            if (detail_event_list[0].find('span')['class'][2] == 'ico_evenement1'):
                                                lst_butteurs_dom.append(Butteur(detail_event_list[0].find('a').text,detail_event_list[1].text.replace("'",''),'jeu'))

                                            # si c'est un but sur péno
                                            elif (detail_event_list[0].find('span')['class'][2] == 'ico_evenement2'):
                                                lst_butteurs_dom.append(Butteur(detail_event_list[0].find('a').text,detail_event_list[1].text.replace("'", ''),'penalty'))

                                            # si c'est un Ppenlty raté
                                            elif (detail_event_list[0].find('span')['class'][2] == 'ico_evenement6'):
                                                lst_butteurs_dom.append(Butteur(detail_event_list[0].find('a').text,detail_event_list[1].text.replace("'",''),'penalty_fail'))

                                            # si c'est un CSC
                                            elif (detail_event_list[0].find('span')['class'][2] == 'ico_evenement7'):
                                                lst_butteurs_dom.append(Butteur(detail_event_list[0].find('a').text,detail_event_list[1].text.replace("'",''),'csc'))

                                            # Si c'est un carton jaune
                                            elif (detail_event_list[0].find('span')['class'][2] == 'ico_evenement4'):
                                                lst_carton_dom.append(Carton(detail_event_list[0].find('a').text,detail_event_list[1].text.replace("'", ''),'jaune1'))

                                            # si c'est un deuxieme carton jaune
                                            elif (detail_event_list[0].find('span')['class'][2] == 'ico_evenement5'):
                                                lst_carton_dom.append(Carton(detail_event_list[0].find('a').text,detail_event_list[1].text.replace("'", ''),'jaune2'))

                                            # Si c'est un carton rouge
                                            elif (detail_event_list[0].find('span')['class'][2] == 'ico_evenement3'):
                                                lst_carton_dom.append(Carton(detail_event_list[0].find('a').text,detail_event_list[1].text.replace("'", ''),'rouge'))

                                            # Si c'est une sortie de joueur
                                            elif (detail_event_list[0].find('span')['class'][2] == 'ico_evenement81'):
                                                # Nom du joueur de sortie
                                                dict_entre_sortie['sortie'] = detail_event_list[0].find('a').text
                                                # si le joueur entree est deja défini
                                                if (dict_entre_sortie['entree'] != ''):
                                                    # Alors on ajoute le dictionnaire à la liste
                                                    lst_changement_dom.append(Changement(dict_entre_sortie['entree'], dict_entre_sortie['sortie'], detail_event_list[1].text.replace("'",'')))
                                                    # on réinitialise le dict
                                                    dict_entre_sortie = {'entree': '', 'sortie': '', 'minute': ''}

                                            # si c'est une entrée de joueur
                                            elif (detail_event_list[0].find('span')['class'][2] == 'ico_evenement91'):
                                                # Nom du joueur entrant
                                                dict_entre_sortie['entree'] = detail_event_list[0].find('a').text
                                                # si le joueur sortie est deja défini
                                                if (dict_entre_sortie['sortie'] != ''):
                                                    # Alors on ajoute le dictionnaire à la liste
                                                    lst_changement_dom.append(Changement(dict_entre_sortie['entree'],dict_entre_sortie['sortie'],detail_event_list[1].text.replace("'", '')))
                                                    # on réinitialise le dict
                                                    dict_entre_sortie = {'entree': '', 'sortie': '', 'minute': ''}


                                        # si elle concerne l'equipe 2
                                        elif (detail_event_list[2].find('a') != None):

                                            # si c'est un but
                                            if (detail_event_list[2].find('span')['class'][2] == 'ico_evenement1'):
                                                lst_butteurs_ext.append(Butteur(detail_event_list[2].find('a').text,detail_event_list[1].text.replace("'",''),'jeu'))

                                            # si c'est un but sur péno
                                            elif (detail_event_list[2].find('span')['class'][2] == 'ico_evenement2'):
                                                lst_butteurs_ext.append(Butteur(detail_event_list[2].find('a').text,detail_event_list[1].text.replace("'",''),'penalty'))

                                            # si c'est un Ppenlty raté
                                            elif (detail_event_list[2].find('span')['class'][2] == 'ico_evenement6'):
                                                lst_butteurs_ext.append(Butteur(detail_event_list[2].find('a').text,detail_event_list[1].text.replace("'",''),'penalty_fail'))

                                            # si c'est un CSC
                                            elif (detail_event_list[2].find('span')['class'][2] == 'ico_evenement7'):
                                                lst_butteurs_ext.append(Butteur(detail_event_list[2].find('a').text,detail_event_list[1].text.replace("'", ''),'csc'))

                                            # Si c'est un carton jaune
                                            elif (detail_event_list[2].find('span')['class'][2] == 'ico_evenement4'):
                                                lst_carton_ext.append(Carton(detail_event_list[2].find('a').text,detail_event_list[1].text.replace("'", ''),'jaune1'))

                                            # si c'est un deuxieme carton jaune
                                            elif (detail_event_list[2].find('span')['class'][2] == 'ico_evenement5'):
                                                lst_carton_ext.append(Carton(detail_event_list[2].find('a').text,detail_event_list[1].text.replace("'", ''),'jaune2'))

                                            # Si c'est un carton rouge
                                            elif (detail_event_list[2].find('span')['class'][2] == 'ico_evenement3'):
                                                lst_carton_ext.append(Carton(detail_event_list[2].find('a').text,detail_event_list[1].text.replace("'", ''),'rouge'))

                                            # Si c'est une sortie de joueur
                                            elif (detail_event_list[2].find('span')['class'][2] == 'ico_evenement82'):
                                                # Nom du joueur de sortie
                                                dict_entre_sortie['sortie'] = detail_event_list[2].find('a').text
                                                # si le joueur entree est deja défini
                                                if (dict_entre_sortie['entree'] != ''):
                                                    # Alors on ajoute le dictionnaire à la liste
                                                    lst_changement_ext.append(Changement(dict_entre_sortie['entree'],dict_entre_sortie['sortie'],detail_event_list[1].text.replace("'", '')))
                                                    # on réinitialise le dict
                                                    dict_entre_sortie = {'entree': '', 'sortie': '', 'minute': ''}

                                            # si c'est une entrée de joueur
                                            elif (detail_event_list[2].find('span')['class'][2] == 'ico_evenement92'):
                                                # Nom du joueur entrant
                                                dict_entre_sortie['entree'] = detail_event_list[2].find('a').text
                                                # si le joueur sortie est deja défini
                                                if (dict_entre_sortie['sortie'] != ''):
                                                    # Alors on ajoute le dictionnaire à la liste
                                                    lst_changement_ext.append(Changement(dict_entre_sortie['entree'],dict_entre_sortie['sortie'],detail_event_list[1].text.replace("'", '')))
                                                    # on réinitialise le dict
                                                    dict_entre_sortie = {'entree': '', 'sortie': '', 'minute': ''}

                            else:
                                # On créé des listes vide a ajouter dans la data complete
                                lst_carton_dom = []
                                lst_carton_ext = []
                                lst_changement_dom = []
                                lst_changement_ext = []
                                lst_butteurs_dom = []
                                lst_butteurs_ext = []

                        #Chargement de la compo des équipes
                        div_compo = soup_page_match.find('div', id='ajax-match-detail-3').find('div', class_='panel panel-info MEDpanelcomposition')
                        #Si la compoexiste
                        if (div_compo != None):

                            # Acces aux compos des deux equipes
                            equipes = div_compo.findAll('td')

                            # Tout les noms
                            joueurs_dom = equipes[0].findAll('a')
                            joueurs_ext = equipes[1].findAll('a')

                            # tout les statuts
                            statut_dom = equipes[0].findAll('span')
                            statut_ext = equipes[1].findAll('span')

                            # Liste des données de chaque joueurs
                            lst_compo_dom = []
                            lst_compo_ext = []

                            #Compos des joueurs et leur statuts
                            for i in range(len(joueurs_ext)): lst_compo_ext.append(Composition(joueurs_ext[i].text, statut_ext[i]['title']))
                            for i in range(len(joueurs_dom)):lst_compo_dom.append(Composition(joueurs_dom[i].text, statut_dom[i]['title']))

                        #Instanciation des équipes domicile et extérieur
                        equipe_dom = Equipe(id_match, lst_date[0],lst_date[1],heure,statut_match,'dom',saison,nom_compet,resultat_dom, lst_but_domicile[0], lst_but_domicile[1] , lst_compo_dom , lst_carton_dom , lst_changement_dom, lst_butteurs_dom , int(score_mt[0].strip()))
                        equipe_ext = Equipe(id_match, lst_date[0],lst_date[1],heure,statut_match,'ext',saison,nom_compet,resultat_ext, lst_but_exterieur[0], lst_but_exterieur[1] , lst_compo_ext,  lst_carton_ext , lst_changement_ext , lst_butteurs_ext, int(score_mt[1].strip()))

                        #equipe_dom.afficher()
                        #equipe_ext.afficher()

                        #Ajout de ces équipe a la collection
                        self.collection_equipe.add(equipe_dom.toList())
                        self.collection_equipe.add(equipe_ext.toList())

                        cpt +=1
コード例 #22
0
import os
import sys

# Import classes from other files.
sys.path.insert(0, './src')
from Composition import Composition
from Voice import Voice
from ScaledNote import ScaledNote
SC = ScaledNote

# Source common settings.
exec(open("./default_settings.py").read())

# Script below.

comp = Composition(2, 60)

violin = comp.buildVoice(41, 'Violin')

violin2 = comp.buildVoice(41, 'Violin 2')
#violin2.setVolume(90)

cello = comp.buildVoice(43, 'Cello')
cello.adjustPitchOffset(-24)
cello.setVolume(90)

viola = comp.buildVoice(42, 'Viola')
viola.adjustPitchOffset(-12)
viola.setVolume(90)

baseKey = 64