public static void ShowHistogram(int[][] value) { if (value[0].SequenceEqual(value[1]) == false && value[0].SequenceEqual(value[2]) == false) { CharWindow formR = FormFactory.CreateCharForm(value[0]); formR.Name = "ValueR"; formR.Histogram.Series[0].Name = "valueR"; formR.Histogram.Series[0].ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Spline; CharWindow formG = FormFactory.CreateCharForm(value[1]); formG.Name = "ValueG"; formG.Histogram.Series[0].Name = "valueG"; formG.Histogram.Series[0].ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Spline; CharWindow formB = FormFactory.CreateCharForm(value[2]); formB.Name = "ValueB"; formB.Histogram.Series[0].Name = "valueB"; formB.Histogram.Series[0].ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Spline; formR.Show(); formG.Show(); formB.Show(); } else { CharWindow form = FormFactory.CreateCharForm(value[2]); form.Name = "ValueLight"; form.Histogram.Series[0].Name = "ValueLight"; form.Histogram.Series[0].ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Spline; form.Show(); } }
public static CharWindow CreateCharForm(int[] value) { CharWindow form = new CharWindow(); form.Histogram.Series.Clear(); form.Histogram.Series.Add("Value"); for (int i = 0; i < 256; i++) { form.Histogram.Series["Value"].Points.AddXY(i, value[i]); } return(form); }
protected override void OnInit(Point2D position, object[] args) { var studyId = args.Length > 0 ? (int)args[0] : -1; widget = new CharWindow(Parent.Widget, Parent.Session); widget.Move(position); widget.AttributesChanged += OnAttributesChanged; widget.BeliefChanged += OnBeliefChanged; widget.SkillLearned += OnSkillLearned; widget.Worship.Forfeit += () => SendMessage("forfeit", 0); widget.Closed += () => SendMessage("close"); // HACK: study widget is not created through a server message // but passed in the arguments to the char window if (studyId != -1) { var study = new ServerContainer((ushort)studyId, this, widget.Study); Parent.Session.Widgets.Add(study); } }
private void notCausal_Click(object sender, EventArgs e) { int windowSize; int hopSize; int filterSize; int fc; int.TryParse(this.WindowSize.Text, out windowSize); int.TryParse(this.R.Text, out hopSize); int.TryParse(this.L.Text, out filterSize); int.TryParse(this.Fc.Text, out fc); Stopwatch time = new Stopwatch(); time.Start(); float[] result = _audio.FrequencyFiltration(windowSize, filterSize, fc, hopSize, windowType.SelectedIndex, "notCasual"); time.Stop(); MessageBox.Show(time.ElapsedMilliseconds.ToString() + " ms"); #region filterChar CharWindow resultSignalChar = new CharWindow(); resultSignalChar.setPropert(); resultSignalChar.Histogram.Series.Add("WindowCharm"); resultSignalChar.Text = "SignalChar"; resultSignalChar.Histogram.Series["WindowCharm"].ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.FastLine; resultSignalChar.Histogram.Series["WindowCharm"].MarkerSize = 2; resultSignalChar.Histogram.ChartAreas[0].AxisX.Title = "Index"; resultSignalChar.Histogram.ChartAreas[0].AxisY.Title = "signal value"; for (int i = 0; i < result.Count(); i++) { resultSignalChar.Histogram.Series["WindowCharm"].Points.AddXY(i, result[i]); } resultSignalChar.Show(); #endregion SoundUtil.SaveSound("freqNotCasualFilter", _audio.fileName, _audio.sampleRate, result); }