Exemplo n.º 1
0
        private void CalculateNormalizedValue()
        {
            foreach (var scaleType in new[] { ScaleType.First, ScaleType.Second, })
            {
                var data = Rows.Where(_ => _.ScaleType == scaleType).ToArray();
                if (0 == data.Length)
                {
                    continue;
                }

                var scale = scaleType == ScaleType.First ? FirstScale : SecondScale;
                foreach (var row in data)
                {
                    foreach (var item in row.Items)
                    {
                        item.NormalizedValue = BrickDataSetHelper.GetNormalizedValue(scale.Min, item.Value, scale.ValueInPixel);
                        if (scaleType == ScaleType.First)
                        {
                            item.NormalizedValue += Preferences.FisrtScaleMormalizeCorrector;
                        }
                        else if (scaleType == ScaleType.Second)
                        {
                            item.NormalizedValue += Preferences.SecondScaleNormalizeCorrector;
                        }
                        if (item.NormalizedValue < 0)
                        {
                            item.NormalizedValue = 0;
                        }
                    }
                }
            }
        }
Exemplo n.º 2
0
 /// <summary>
 ///		Убеждается в корректном расположении элементов данных
 /// </summary>
 protected void EnsureNormalized()
 {
     if (_isNormalized)
     {
         return;
     }
     foreach (var dataItem in _dataItems)
     {
         if (0 != dataItem.NormalizedValue)
         {
             continue;
         }
         dataItem.NormalizedValue = BrickDataSetHelper.GetNormalizedValue(ScaleMin, ScaleMax, Height, dataItem.Value);
         if (dataItem.NormalizedValue < 0)
         {
             throw new Exception("Normalized value below zero - marks that scales was counted invalid");
         }
         dataItem.LabelHeight = LabelHeight.ToInt();
     }
     _isNormalized = true;
 }