From 6f1ddf91403668ebfb21f3e9c773db01a523010e Mon Sep 17 00:00:00 2001 From: AngelZheng Date: Mon, 26 Jul 2021 14:57:55 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=97=B6=E5=80=BC=E8=AE=A1?= =?UTF-8?q?=E7=AE=97=E6=96=B9=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../assets/code/NumberedMusicalNotation.py" | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git "a/\346\227\240\346\272\220\350\234\202\351\270\243\345\231\250/assets/code/NumberedMusicalNotation.py" "b/\346\227\240\346\272\220\350\234\202\351\270\243\345\231\250/assets/code/NumberedMusicalNotation.py" index 404e075..5b284a5 100644 --- "a/\346\227\240\346\272\220\350\234\202\351\270\243\345\231\250/assets/code/NumberedMusicalNotation.py" +++ "b/\346\227\240\346\272\220\350\234\202\351\270\243\345\231\250/assets/code/NumberedMusicalNotation.py" @@ -59,14 +59,18 @@ class NumberedMusicalNotation: realRate = self.scaleDict[scaleKey] * math.pow(2, upNumber) * (1 / math.pow(2, downNumber)) - wholeNote = (60 / self.beatSpeed) * self.beatNumber + quarterNote = (60 / self.beatSpeed) * self.beatNumber * (1 / 4) + upNumber = monophonic.count('.') downNumber = monophonic.count('_') - voiceTime = wholeNote * (1 / 4) * (1 / math.pow(2, downNumber)) - if(upNumber == 1): - voiceTime *= 2 - elif(upNumber == 3): - voiceTime *= 4 + halfNumber = monophonic.count('*') + + voiceTime = quarterNote * (1 / math.pow(2, downNumber)) + + if(halfNumber >= 1): + voiceTime *= 1.5 + + voiceTime += quarterNote * upNumber if(realRate != 0): self.tone(int(realRate * math.pow(2, preAdd)), int(voiceTime * 1000)) -- Gitee