/// <summary> /// Mode2のグラフを設定する /// </summary> /// <param name="graphSetting">グラフ設定</param> private void CreateGraphInfo2(GraphSetting graphSetting) { GraphLib.GraphInfo graphinfo = this.GraphInfo; graphinfo.GraphNo = 1; graphinfo.GraphName = graphSetting.Title; graphinfo.IsEnabled = true; graphinfo.AxisNameX = AppResource.GetString("TXT_UNIT_DEGREE"); graphinfo.AxisNameY = this.tagSetting.GetUnitFromTagNo(graphSetting.GraphTagList[0].GraphTagNo); var chSetting = (this.IsMeasure) ? SystemSetting.ChannelsSetting : this.AnalyzeData.ChannelsSetting; graphinfo.MinValueX = (double)chSetting.ChannelMeasSetting.Degree1; graphinfo.MaxValueX = (double)chSetting.ChannelMeasSetting.Degree2; graphinfo.DistanceX = graphSetting.DistanceX_Mode2; graphinfo.MinValueY = (double)graphSetting.MinimumY_Mode2; graphinfo.MaxValueY = (double)graphSetting.MaxY_Mode2; graphinfo.DistanceY = graphSetting.DistanceY_Mode2; graphinfo.AxisPositionX = null; graphinfo.AxisPositionY = null; graphinfo.MinMaxRangeX = graphinfo.MaxValueX - graphinfo.MinValueX; if (graphinfo.MaxDataSizeX == 0) { graphinfo.MaxDataSizeX = Convert.ToInt32(graphinfo.MaxValueX - graphinfo.MinValueX); graphinfo.PlotCountX = graphinfo.MaxDataSizeX; } if (graphinfo.IncrementX == 0) graphinfo.IncrementX = 1; graphinfo.DecimalPointY = GetDecimalPoint(graphSetting); graphinfo.ShotCount = (this.IsMeasure) ? 1 : graphSetting.NumbeOfShotMode2; graphinfo.GraphMode = GraphLib.GraphMode.Normal; graphinfo.IsLineGraph = true; graphinfo.ShowDateTimeAxisX = false; graphinfo.ShowValueLabelX = !this.IsMeasure || SystemSetting.SystemConfig.IsDebugMode; graphinfo.ShowValueLabelY = true; graphinfo.MeasureButtonShow = !this.IsMeasure; graphinfo.DecimalPointX = 1; graphinfo.AddIndex = 0; graphinfo.ChannelInfos = new List<GraphLib.ChannelInfo>(); graphinfo.ChannelInfos.Clear(); var d = new System.Windows.Media.ColorConverter(); for (int ch = 0; ch < graphSetting.GraphTagList.Length; ch++) { if (graphSetting.GraphTagList[ch].GraphTagNo != -1 && (this.chIndexList[ch].Index >= 0 || this.calcTagList[ch].Index >= 0)) { GraphLib.ChannelInfo chinfo = new GraphLib.ChannelInfo(); chinfo.CHColor = (System.Windows.Media.Color)d.ConvertFromInvariantString(graphSetting.GraphTagList[ch].Color); //chinfo.CHLineSize = 1.25; chinfo.CHNo = ch + 1; chinfo.CHName = this.tagSetting.GetTagNameFromTagNo(graphSetting.GraphTagList[ch].GraphTagNo); chinfo.IsEnabled = true; graphinfo.ChannelInfos.Add(chinfo); } } graphinfo.MaxChannel = graphinfo.ChannelInfos.Count; this.GraphInfo = graphinfo; if (this.log != null) this.log.PutLog("CreateGraphInfo2" + graphinfo.ToString()); }
/// <summary> /// Mode3のグラフを設定する /// </summary> /// <param name="graphSetting">グラフ設定</param> private void CreateGraphInfo3(GraphSetting graphSetting) { var dt = DateTime.Now; var graphinfo = this.GraphInfo; graphinfo.GraphNo = 1; graphinfo.GraphName = graphSetting.Title; graphinfo.IsEnabled = true; graphinfo.AxisNameX = "[ms]"; graphinfo.AxisNameY = this.tagSetting.GetUnitFromTagNo(graphSetting.GraphTagList[0].GraphTagNo); graphinfo.MinValueX = (double)graphSetting.MinimumX_Mode3; //graphinfo.MaxValueX = (double)graphSetting.MaxX * ((double)this.measSetting.SamplingTiming / 1000); graphinfo.MaxValueX = (double)graphSetting.MaxX_Mode3; graphinfo.DistanceX = graphSetting.DistanceX_Mode3; graphinfo.MinValueY = (double)graphSetting.MinimumY_Mode3; graphinfo.MaxValueY = (double)graphSetting.MaxY_Mode3; graphinfo.DistanceY = graphSetting.DistanceY_Mode3; graphinfo.AxisPositionX = null; graphinfo.AxisPositionY = null; if (graphinfo.DistanceX < 1) graphinfo.DecimalPointX = 2; else graphinfo.DecimalPointX = 0; //graphinfo.DecimalPointY = 2; if (graphinfo.DistanceY < 1) graphinfo.DecimalPointY = 2; else graphinfo.DecimalPointY = GetDecimalPoint(graphSetting); graphinfo.ShotCount = 1; if (this.IsMeasure) graphinfo.GraphMode = GraphLib.GraphMode.Moving; else graphinfo.GraphMode = GraphLib.GraphMode.Normal; graphinfo.StartDateTime = dt; graphinfo.DateTimeFormat = "ss.ffff"; graphinfo.IsLineGraph = (this.IsMeasure) ? true : false; graphinfo.ShowDateTimeAxisX = false; graphinfo.ShowValueLabelX = !this.IsMeasure || SystemSetting.SystemConfig.IsDebugMode; graphinfo.ShowValueLabelY = true; graphinfo.MeasureButtonShow = !this.IsMeasure; graphinfo.IncrementX = ((double)this.measSetting.SamplingTiming_Mode3 / 1000); if (graphinfo.MaxValueX < graphinfo.IncrementX) { graphinfo.MaxValueX = graphinfo.IncrementX; graphinfo.DistanceX = Convert.ToDecimal(graphinfo.IncrementX); } graphinfo.MinMaxRangeX = graphinfo.MaxValueX - graphinfo.MinValueX; graphinfo.MaxDataSizeX = Convert.ToInt32((graphinfo.MaxValueX - graphinfo.MinValueX) / graphinfo.IncrementX) + 1; graphinfo.PlotCountX = graphinfo.MaxDataSizeX - 1; graphinfo.AddIndex = 0; graphinfo.ChannelInfos = new List<GraphLib.ChannelInfo>(); graphinfo.ChannelInfos.Clear(); var d = new System.Windows.Media.ColorConverter(); for (int ch = 0; ch < graphSetting.GraphTagList.Length; ch++) { if (graphSetting.GraphTagList[ch].GraphTagNo != -1 && (this.chIndexList[ch].Index >= 0 || this.calcTagList[ch].Index >= 0)) { GraphLib.ChannelInfo chinfo = new GraphLib.ChannelInfo(); chinfo.CHColor = (System.Windows.Media.Color)d.ConvertFromInvariantString(graphSetting.GraphTagList[ch].Color); //chinfo.CHLineSize = 1.25; chinfo.CHNo = ch + 1; chinfo.CHName = this.tagSetting.GetTagNameFromTagNo(graphSetting.GraphTagList[ch].GraphTagNo); chinfo.IsEnabled = true; graphinfo.ChannelInfos.Add(chinfo); } } graphinfo.MaxChannel = graphinfo.ChannelInfos.Count; this.GraphInfo = graphinfo; }
/// <summary> /// Mode1のグラフを設定する /// </summary> /// <param name="graphSetting">グラフ設定</param> private void CreateGraphInfo1(GraphSetting graphSetting) { DateTime dt = DateTime.Now; GraphLib.GraphInfo graphinfo = this.GraphInfo; // Check this graph includes B and R type board only. var boardBR = CheckBoardBR(graphSetting); graphinfo.GraphNo = 1; graphinfo.GraphName = graphSetting.Title; graphinfo.IsEnabled = true; graphinfo.AxisNameX = "Shot"; graphinfo.AxisNameY = this.tagSetting.GetUnitFromTagNo(graphSetting.GraphTagList[0].GraphTagNo); graphinfo.MinValueX = (double)graphSetting.MinimumX_Mode1 + 1; graphinfo.MaxValueX = (double)graphSetting.MaxX_Mode1; graphinfo.DistanceX = graphSetting.DistanceX_Mode1; if (boardBR) { graphinfo.MinValueY = (double)(graphSetting.CenterScale - graphSetting.Scale); graphinfo.MaxValueY = (double)(graphSetting.CenterScale + graphSetting.Scale); graphinfo.AxisPositionY = (double)graphSetting.CenterScale; graphinfo.DistanceY = graphSetting.DistanceY_CenterScale_Mode1; } else { graphinfo.MinValueY = (double)graphSetting.MinimumY_Mode1; graphinfo.MaxValueY = (double)graphSetting.MaxY_Mode1; graphinfo.AxisPositionY = null; graphinfo.DistanceY = graphSetting.DistanceY_Mode1; } graphinfo.AxisPositionX = null; graphinfo.MinMaxRangeX = graphinfo.MaxValueX - graphinfo.MinValueX; if (this.IsMeasure) graphinfo.MaxDataSizeX = Convert.ToInt32(graphinfo.MaxValueX - graphinfo.MinValueX) + 1; else graphinfo.MaxDataSizeX = Convert.ToInt32(graphinfo.MaxValueX - graphinfo.MinValueX); graphinfo.PlotCountX = graphinfo.MaxDataSizeX; graphinfo.ShotCount = 1; if (this.IsMeasure) graphinfo.GraphMode = GraphLib.GraphMode.Moving; else graphinfo.GraphMode = GraphLib.GraphMode.Normal; graphinfo.StartDateTime = dt; graphinfo.DateTimeFormat = "mm:ss.ff"; graphinfo.IsLineGraph = (this.IsMeasure) ? true : false; graphinfo.ShowDateTimeAxisX = false; graphinfo.ShowValueLabelX = !this.IsMeasure || SystemSetting.SystemConfig.IsDebugMode; graphinfo.ShowValueLabelY = true; graphinfo.MeasureButtonShow = !this.IsMeasure; graphinfo.IncrementX = 1; graphinfo.AddIndex = 1; graphinfo.DecimalPointY = GetDecimalPoint(graphSetting); graphinfo.ChannelInfos = new List<GraphLib.ChannelInfo>(); graphinfo.ChannelInfos.Clear(); var d = new System.Windows.Media.ColorConverter(); for (int ch = 0; ch < graphSetting.GraphTagList.Length; ch++) { if (graphSetting.GraphTagList[ch].GraphTagNo != -1 && (this.chIndexList[ch].Index >= 0 || this.calcTagList[ch].Index >= 0)) { GraphLib.ChannelInfo chinfo = new GraphLib.ChannelInfo(); chinfo.CHColor = (System.Windows.Media.Color)d.ConvertFromInvariantString(graphSetting.GraphTagList[ch].Color); //chinfo.CHLineSize = 1.5; chinfo.CHNo = ch + 1; chinfo.CHName = this.tagSetting.GetTagNameFromTagNo(graphSetting.GraphTagList[ch].GraphTagNo); chinfo.IsEnabled = true; graphinfo.ChannelInfos.Add(chinfo); } } graphinfo.MaxChannel = graphinfo.ChannelInfos.Count; this.GraphInfo = graphinfo; }