File tree Expand file tree Collapse file tree 1 file changed +6
-1
lines changed
Expand file tree Collapse file tree 1 file changed +6
-1
lines changed Original file line number Diff line number Diff line change @@ -9,6 +9,7 @@ class Waveform(Enum):
99 sine = "sine"
1010 sawtooth = "sawtooth"
1111 square = "square"
12+ triangle = "triangle"
1213
1314
1415class Oscillator (object ):
@@ -36,12 +37,16 @@ def _wave_func(self):
3637 return scipy .signal .sawtooth
3738 elif self ._waveform is Waveform .square :
3839 return scipy .signal .square
40+ elif self ._waveform is Waveform .triangle :
41+ return self .gen_triang
3942 raise TypeError ("unknown waveform: {}" .format (self ._waveform ))
4043
4144 def generate_wave (self , phases ):
4245 phases = np .copy (phases ) * self ._freq_transpose
4346 return self ._volume * self ._wave_func (phases )
44-
47+
48+ def gen_triang (self ,t ,width = 0.5 ):
49+ return scipy .signal .sawtooth (t ,width )
4550
4651class Synthesizer (object ):
4752 u""" Virtual analog synthesizer object
You can’t perform that action at this time.
0 commit comments