/// <summary> /// Adds in drawInSensorData list /// </summary> /// <param name="sensor">sensor to be added in sensor log</param> public void AddSensorLogData(SensorOption.Sensor sensor) { if (sensor != null) { this.SensorsLog.Add(sensor); } }
/// <summary> /// Remove sensor from chart graph /// </summary> /// <param name="sensor">Which sensor is going to be removed</param> public void RemoveSensorFromGraph(SensorOption.Sensor sensor) { this.SensorList.Remove(sensor); LineSeries ls = null; for (int i = 0; i < this.SeriesCollection.Count; i++) { LineSeries aux = (LineSeries)this.SeriesCollection[i]; if (aux.Tag.ToString() == sensor.Id) { ls = aux; break; } } if (ls != null) { this.SeriesCollection.Remove(ls); } }
/// <summary> /// Add sensor in linesgraph /// </summary> /// <param name="sensor">sensor to add</param> public void AddSensorToGraph(SensorOption.Sensor sensor) { Color nextColor = this.GetNextDefaultColor(); LineSeries newLs = new LineSeries { Title = sensor.SensorName, Values = new ChartValues <DateModel>(), Tag = sensor.Id, Fill = new SolidColorBrush(nextColor) { Opacity = 0.15d } }; Brush textBrush = newLs.Fill.Clone(); textBrush.Opacity = 1d; this.SensorList.Add(sensor); this.SeriesCollection.Add(newLs); }
/// <summary> /// Show loaded sensors when load windows /// </summary> /// <param name="sensorList">Sensor list</param> /// <param name="analysisName">Analysis name</param> public void ShowLoadedSensors(ObservableCollection <SensorOption.Sensor> sensorList, string analysisName) { ObservableCollection <SensorOption.Sensor> list = new ObservableCollection <SensorOption.Sensor>(); foreach (SensorOption.Sensor sensor in sensorList) { Color nextColor = this.GetNextDefaultColor(); LineSeries newLs = new LineSeries { Title = sensor.SensorName, Values = new ChartValues <DateModel>(), Tag = sensor.Id, Fill = new SolidColorBrush(nextColor) { Opacity = 0.15d } }; Brush textBrush = newLs.Fill.Clone(); textBrush.Opacity = 1d; SensorOption.Sensor newSensor = new SensorOption.Sensor(sensor.SensorName, sensor.X, sensor.Y, sensor.Z); newSensor.Id = sensor.Id; this.SensorList.Add(newSensor); int index = this.SensorList.IndexOf(newSensor); if (sensor.Values != null) { ObservableCollection <SensorOption.Sensor> asd = new ObservableCollection <SensorOption.Sensor>(); foreach (SensorOption.SensorValue v in sensor.Values) { if (v.AnalysisName == analysisName) { DateModel dm = new DateModel() { DateTime = v.Timestamp, Value = v.Value }; // Chart if (v.Parameter != this.parameterString) { newLs.Values.Add(dm); } // Update Log SensorOption.Sensor s = new SensorOption.Sensor(sensor.SensorName); s.Values.Add(v); list.Add(s); // Sensor List this.SensorList.ElementAt(index).Values.Add(v); } } } if (newLs.Values.Count > 0) { this.AxisMin = ((DateModel)newLs.Values[0]).DateTime.Ticks; this.AxisMax = ((DateModel)newLs.Values[newLs.Values.Count - 1]).DateTime.Ticks; } list = new ObservableCollection <SensorOption.Sensor>(list.OrderBy(a => a.Values[0].Timestamp)); this.SensorsLog = list; this.SeriesCollection.Add(newLs); } }