/// <summary> /// Draw waveforms on ZedGraph depending on which one is selected. /// </summary> private void DrawWaveforms() { if (csvDataProcessed) { eegGraph.PlotClear(1); waveformColors.Clear(); BasicDSP.Waveform waveform = emotionizer.Sampler.GetEEGWaveform(currentElectrode); EEGAnalyzer analyzer = new EEGAnalyzer(waveform); bool normalize = NormalizeEEGWaveformsCheckBox.IsChecked == true ? true : false; if (OriginalWaveCheckBox.IsChecked == true) { if (normalize) { waveform = EEGUtils.Normalize(waveform); } waveformColors.Add(System.Drawing.Color.Blue); eegGraph.PlotWaveform(1, ref waveform, "Original Wave"); } if (AlphaWaveCheckBox.IsChecked == true) { waveformColors.Add(System.Drawing.Color.Red); BasicDSP.Waveform waveformAlpha = analyzer.FilterBand(EEGBand.ALPHA, normalize); eegGraph.PlotWaveform(1, ref waveformAlpha, "Alpha"); } if (BetaWaveCheckBox.IsChecked == true) { waveformColors.Add(System.Drawing.Color.Green); BasicDSP.Waveform waveformBeta = analyzer.FilterBand(EEGBand.BETA, normalize); eegGraph.PlotWaveform(1, ref waveformBeta, "Beta"); } if (ThetaWaveCheckBox.IsChecked == true) { waveformColors.Add(System.Drawing.Color.DarkMagenta); BasicDSP.Waveform waveformTheta = analyzer.FilterBand(EEGBand.THETA, normalize); eegGraph.PlotWaveform(1, ref waveformTheta, "Theta"); } if (DeltaWaveCheckBox.IsChecked == true) { waveformColors.Add(System.Drawing.Color.Orange); BasicDSP.Waveform waveformDelta = analyzer.FilterBand(EEGBand.DELTA, normalize); eegGraph.PlotWaveform(1, ref waveformDelta, "Delta"); } EEGZedGraphRefresh(); } }
/// <summary> /// Draw spectrum on ZedGraph /// </summary> private void DrawSpectrum() { if (csvDataProcessed) { spectrumGraph.PlotClear(1); BasicDSP.Waveform waveform = emotionizer.Sampler.GetEEGWaveform(currentSpectrumElectrode); EEGAnalyzer analyzer = new EEGAnalyzer(waveform); int spectrumIndex = Convert.ToInt32(Convert.ToDouble(analyzer.Waveform.Count) * currentVideoPositionInPercent); BasicDSP.Spectrum spectrum = analyzer.GetSpectrum(spectrumIndex, currentSpectrumSize); spectrumGraph.PlotDbSpectrum(1, ref spectrum, ""); SpectrumZedGraphRefresh(); } }