protected override void SaveSettings() { AccelerometerAxis axis = AccelerometerAxis.X; if (this.rbYAxis.Checked) { axis = AccelerometerAxis.Y; } else if (this.rbZAxis.Checked) { axis = AccelerometerAxis.Z; } ComparativeOp operation = (ComparativeOp)Enum.ToObject(typeof(ComparativeOp), this.cbOperator.SelectedIndex); Variable variable = null; decimal value = 0; if (this.cbCompareVariable.SelectedIndex != 0) { variable = GraphManager.GetVariable(this.cbCompareVariable.SelectedItem.ToString()); } else { value = this.nudCompareValue.Value; } this.action.UpdateSettings(axis, operation, variable, value); }
public void UpdateSettings(AccelerometerAxis axis, ComparativeOp operation, Variable compareVariable, decimal compareValue) { this.axis = axis; this.operation = operation; this.compareVariable = compareVariable; this.compareValue = compareValue; }
public AssignAccelerometerAction(string key, XmlElement properties, System.Collections.Generic.SortedList <string, Variable> variables) { this.key = key; if (properties.Name != "properties") { throw new ActionException("Can't create the action"); } foreach (XmlElement property in properties.ChildNodes) { switch (property.Name) { case "version": break; case "assignVariable": if (property.InnerText != "none") { this.assignVariable = variables[property.InnerText]; } break; case "axis": this.axis = (AccelerometerAxis)Enum.Parse(typeof(AccelerometerAxis), property.InnerText); break; default: throw new ProjectException("Error el crear la acción"); } } }
public CompareAccelerometerAction(string key, AccelerometerAxis axis, ComparativeOp operation, Variable compareVariable, decimal compareValue) { this.key = key; this.axis = axis; this.operation = operation; this.compareVariable = compareVariable; this.compareValue = compareValue; }
protected override void SaveSettings() { Variable variable = GraphManager.GetVariable(this.cbAssignVariable.SelectedItem.ToString()); AccelerometerAxis axis = AccelerometerAxis.X; if (this.rbYAxis.Checked) { axis = AccelerometerAxis.Y; } else if (this.rbZAxis.Checked) { axis = AccelerometerAxis.Z; } this.action.UpdateSettings(variable, axis); }
public CompareAccelerometerAction(string key, XmlElement properties, System.Collections.Generic.SortedList <string, Variable> variables) { this.key = key; if (properties.Name != "properties") { throw new ActionException("Can't create the action"); } foreach (XmlElement property in properties.ChildNodes) { switch (property.Name) { case "version": break; case "axis": this.axis = (AccelerometerAxis)Enum.Parse(typeof(AccelerometerAxis), property.InnerText); break; case "operation": this.operation = (ComparativeOp)Enum.Parse(typeof(ComparativeOp), property.InnerText); break; case "compareVariable": if (property.InnerText != "none") { this.compareVariable = variables[property.InnerText]; } break; case "compareValue": this.compareValue = System.Convert.ToDecimal(property.InnerText.Replace(',', '.'), new System.Globalization.CultureInfo("en-GB")); break; default: throw new ProjectException("Error el crear la acción"); } } }
private void FFTDisplay(AccelerometerAxis axis) { // Clear points s4.Points.Clear(); List <DataPoint> pointsList; List <DataPoint> pointsList2; //Additional for Imaginary , Added by JP switch (axis) { case AccelerometerAxis.X_Axis: pointsList = s1.Points; pointsList2 = s1.Points; //Additional for Imaginary , Added by JP break; case AccelerometerAxis.Y_Axis: pointsList = s2.Points; pointsList2 = s2.Points; //Additional for Imaginary , Added by JP break; case AccelerometerAxis.Z_Axis: pointsList = s3.Points; pointsList2 = s3.Points; //Additional for Imaginary , Added by JP break; default: // This should not happen pointsList = null; pointsList2 = null; break; } //var pointsList = s1.Points; var pointsRealList = new List <double>(); var pointsImagList = new List <double>(); //Additional for Imaginary , Added by JP foreach (var dataPoint in pointsList) { pointsRealList.Add(dataPoint.Y); } foreach (var dataPoint in pointsList2) //Additional for Imaginary , Added by JP { pointsImagList.Add(dataPoint.Y * 0); // Multiply by 0, all imaginary values are 0. } int numSamples = pointsRealList.Count; int numSamples2 = pointsImagList.Count; //Additional for Imaginary , Added by JP if (pointsRealList.Count.IsEven()) { pointsRealList.Add(0); pointsRealList.Add(0); } else { pointsRealList.Add(0); } if (pointsImagList.Count.IsEven()) //Additional for Imaginary , Added by JP { pointsImagList.Add(0); pointsImagList.Add(0); } else { pointsImagList.Add(0); } var pointsRealArray = pointsRealList.ToArray(); var pointsImagArray = pointsImagList.ToArray(); //Additional for Imaginary , Added by JP var FFT_Count = pointsRealArray.Count(); int ctr = 0; //Additional for Imaginary , Added by JP Complex32[] For_FFTval = new Complex32[FFT_Count]; //Additional for Imaginary , Added by JP foreach (var data_points in pointsRealArray) //Additional for Imaginary , Added by JP { For_FFTval[ctr] = new Complex32((float)pointsRealArray[ctr], (float)pointsImagArray[ctr]); ctr = ctr + 1; } Fourier.Forward(For_FFTval); //Additional for Imaginary , Added by JP ctr = 0; double[] FFT_plot = new double[FFT_Count]; //Additional for Imaginary , Added by JP foreach (var data_points in For_FFTval) { FFT_plot[ctr] = Complex32.Abs(For_FFTval[ctr]); //Additional for Imaginary , Added by JP ctr = ctr + 1; } var x = 0; foreach (var realPoint in FFT_plot) { var count = (double)s4.Points.Count; s4.Points.Add(new DataPoint(count, realPoint)); } FFTPlotModel = fFTPlot; FFTPlotModel.InvalidatePlot(true); }
public void UpdateSettings(Variable assignVariable, AccelerometerAxis axis) { this.assignVariable = assignVariable; this.axis = axis; }
public AssignAccelerometerAction(string key, Variable assignVariable, AccelerometerAxis axis) { this.key = key; this.assignVariable = assignVariable; this.axis = axis; }
public void Reset() { Calibrated = false; CalibrationValue = 0; CalibrationAxis = AccelerometerAxis.Z; }