public PrzebiegiViewModel(IConfig configuration, IDataMeasure dataMeasure, ICancelTaskService ctss) { config = configuration; dataMeasureService = dataMeasure; cancelTaskService = ctss; DataPlotModel = new PlotModel { Title = "Przebiegi czasowe" }; DataPlotModel.Axes.Add(new LinearAxis() { Position = AxisPosition.Bottom, Minimum = 0, Maximum = config.GetSettings().XAxisMax, Key = "Horizontal", Unit = "sec", Title = "Time" }); DataPlotModel.Axes.Add(new LinearAxis() { Position = AxisPosition.Left, Minimum = -100, Maximum = 100, Key = "Temp", Unit = "C", Title = "temperature", TitlePosition = 0.3 }); DataPlotModel.Axes.Add(new LinearAxis() { Position = AxisPosition.Right, Minimum = 0, Maximum = 4000, Key = "Press", Unit = "mbar", Title = "preasure" }); DataPlotModel.Axes.Add(new LinearAxis() { Position = AxisPosition.Left, Minimum = 0, Maximum = 100, Key = "Hum", Unit = "%", Title = "humidity", AxisDistance = 30.0, TitlePosition = 0.7, TitleClippingLength = 1.2, Angle = 40, }); DataPlotModel.Series.Add(new LineSeries() { Title = "Temperature", Color = OxyColor.Parse("#FFFF00FF"), YAxisKey = "Temp", XAxisKey = "Horizontal" }); DataPlotModel.Series.Add(new LineSeries() { Title = "Preasure", Color = OxyColor.Parse("#FFFFFF00"), YAxisKey = "Press", XAxisKey = "Horizontal" }); DataPlotModel.Series.Add(new LineSeries() { Title = "Humidity", Color = OxyColor.Parse("#FFFF0000"), YAxisKey = "Hum", XAxisKey = "Horizontal" }); StartButtonAsync = new AsyncCommand(Start); StopButton2 = new ButtonCommand(Cancle); UpdateConfigButton = new ButtonCommand(UpdateConfig); DefaultConfigButton = new ButtonCommand(DefaultConfig); ipAddress = config.GetSettings().IpAddress; sampleTime = config.GetSettings().SampleTime; }
public MainViewModel() { Measurements = new ObservableCollection <MeasurementViewModel>(); IMUChart = new PlotModel { Title = "IMU data" }; ENVChart_temp = new PlotModel { Title = "Temperature" }; ENVChart_press = new PlotModel { Title = "Pressure" }; ENVChart_humid = new PlotModel { Title = "Humidity" }; IMUChart.Axes.Add(new LinearAxis() { Position = AxisPosition.Bottom, Minimum = 0, Maximum = config.XAxisMax, Key = "Horizontal", Unit = "sec", Title = "Time" }); ENVChart_temp.Axes.Add(new LinearAxis() { Position = AxisPosition.Bottom, Minimum = 0, Maximum = config.XAxisMax, Key = "Horizontal", Unit = "sec", Title = "Time" }); ENVChart_press.Axes.Add(new LinearAxis() { Position = AxisPosition.Bottom, Minimum = 0, Maximum = config.XAxisMax, Key = "Horizontal", Unit = "sec", Title = "Time" }); ENVChart_humid.Axes.Add(new LinearAxis() { Position = AxisPosition.Bottom, Minimum = 0, Maximum = config.XAxisMax, Key = "Horizontal", Unit = "sec", Title = "Time" }); IMUChart.Axes.Add(new LinearAxis() { Position = AxisPosition.Left, Minimum = -190, Maximum = 190, Key = "Vertical", Unit = "deg", Title = "IMU values" }); ENVChart_temp.Axes.Add(new LinearAxis() { Position = AxisPosition.Left, Minimum = 0, Maximum = 100, Key = "Vertical", Unit = "°C", Title = "Temperature" }); ENVChart_press.Axes.Add(new LinearAxis() { Position = AxisPosition.Left, Minimum = 250, Maximum = 1270, Key = "Vertical", Unit = "hPa", Title = "Pressure" }); ENVChart_humid.Axes.Add(new LinearAxis() { Position = AxisPosition.Left, Minimum = 0, Maximum = 100, Key = "Vertical", Unit = "g/m3", Title = "Humidity" }); IMUChart.Series.Add(new LineSeries() { Title = "roll", Color = OxyColor.Parse("#FFFF0000") }); IMUChart.Series.Add(new LineSeries() { Title = "pitch", Color = OxyColor.Parse("#0000FF") }); IMUChart.Series.Add(new LineSeries() { Title = "yaw", Color = OxyColor.Parse("#ffff00") }); ENVChart_temp.Series.Add(new LineSeries() { Title = "temperature", Color = OxyColor.Parse("#FFFF0000") }); ENVChart_press.Series.Add(new LineSeries() { Title = "pressure", Color = OxyColor.Parse("#0000FF") }); ENVChart_humid.Series.Add(new LineSeries() { Title = "humidity", Color = OxyColor.Parse("#ffff00") }); StartButton = new ButtonCommand(StartTimer); StopButton = new ButtonCommand(StopTimer); UpdateConfigButton = new ButtonCommand(UpdateConfig); DefaultConfigButton = new ButtonCommand(DefaultConfig); Send_Led = new ButtonCommand(Send_Led_Data); Send_Text = new ButtonCommand(Send_Led_Text); ipAddress = config.IpAddress; sampleTime = config.SampleTime; Server = new IoTServer(IpAddress); }