public override void SetValue(double value, Dimension dimension)
 {
     if (!Dimensions.Values.Contains(dimension))
     {
         throw new ArgumentException(dimension.ToString() +
                                     " не является размерностью для измеряемой величины " + Name);
     }
     if (dimension == C)
     {
         value -= AbsoluteNullInC;
     }
     if (value < 0)
     {
         throw new ArgumentException(Name + " не может иметь отрицательное значение в К " +
                                     "или меньше " + AbsoluteNullInC + " в C");
     }
     this.value = value;
     if (dimension == K || dimension == C)
     {
         return;
     }
     else
     {
         throw new ArgumentException("Неизвестная или неучтенная размерность в классе Temperature.");
     }
 }
        protected override string FormatString(int length, char dimension)
        {
            Dimension dim = dimension == 'd' ? dB : unit;
            double    val = GetValue(dim);

            return(MeasMath.SignifyString(val, length) + " " + dim.ToString());
        }
Beispiel #3
0
        public override void SetValue(double value, Dimension dimension)
        {
            if (!Dimensions.Values.Contains(dimension))
            {
                throw new ArgumentException(dimension.ToString() +
                                            " не является размерностью для измеряемой величины " + Name);
            }
            double t = value;

            if (dimension.Id % 3 == 0)
            {
                if (t < 0)
                {
                    throw new ArgumentException(Name + " мощность не может иметь отрицательное значение");
                }
                this.value = t * Math.Pow(10, dimension.Id);
            }
            else if (dimension == Power.dBm)
            {
                this.value = Math.Pow(10, t / 10) * Math.Pow(10, Power.mW.Id);
            }
            else
            {
                throw new ArgumentException("Неизвестная или неучтенная размерность в классе Power.");
            }
        }
        protected override string FormatString(int length, char dimension)
        {
            Dimension dim = Dimensions.ContainsKey(dimension.ToString()) ? Dimensions[dimension.ToString()] : DefaultDimension;

            double val = GetValue(dim);

            return(MeasMath.SignifyString(val, length) + " " + dim.ToString());
        }
Beispiel #5
0
        public override string ToString(Dimension dimension)
        {
            StringBuilder sb = new StringBuilder(20);

            sb.Append(GetValue(dimension));
            sb.Append(" " + dimension.ToString());
            return(sb.ToString());
        }
Beispiel #6
0
 public override string ToString(Dimension dimension)
 {
     if (!Dimensions.ContainsValue(dimension))
     {
         throw new ArgumentException(dimension.ToString() + " не является размерностью для величины " + Name);
     }
     else
     {
         return(ToString());
     }
 }
 public override string ToString(Dimension dimension)
 {
     if (dimension == dB)
     {
         return(GetValue(dB).ToString() + " " + dB.ToString());
     }
     else
     {
         return(ToString());
     }
 }
Beispiel #8
0
 public override void SetValue(Complex value, Dimension dimension)
 {
     if (Dimensions.ContainsValue(dimension))
     {
         throw new ArgumentException(dimension.ToString() + " не является размерностью для величины " + Name);
     }
     else
     {
         this.value = value;
     }
 }
Beispiel #9
0
 public override Complex GetValue(Dimension dimension)
 {
     if (!Dimensions.Values.Contains(dimension))
     {
         throw new ArgumentException(dimension.ToString() +
                                     " не является размерностью для измеряемой величины " + Name);
     }
     if (dimension == unit)
     {
         return(value);
     }
     else
     {
         throw new ArgumentException("Неизвестная или неучтенная размерность в классе " + Name);
     }
 }
Beispiel #10
0
 public override double GetValue(Dimension dimension)
 {
     if (!Dimensions.Values.Contains(dimension))
     {
         throw new ArgumentException(dimension.ToString() +
                                     " не является размерностью для измеряемой величины " + Name);
     }
     if (dimension.Id % 3 == 0)
     {
         return(value / Math.Pow(10, dimension.Id));
     }
     else
     {
         throw new ArgumentException("Неизвестная или неучтенная размерность в классе " + Name);
     }
 }
Beispiel #11
0
        protected override string FormatString(int length, char dimension)
        {
            Dimension dim = DefaultDimension;

            switch (dimension)
            {
            case 'm':
            case 'k':
            case 'M':
            case 'G':
            case 'T':
                dim = Dimensions[dimension + "Hz"];
                break;
            }
            double val = GetValue(dim);

            return(MeasMath.SignifyString(val, length) + " " + dim.ToString());
        }
Beispiel #12
0
 public override double GetValue(Dimension dimension)
 {
     if (!Dimensions.Values.Contains(dimension))
     {
         throw new ArgumentException(dimension.ToString() +
                                     " не является размерностью для измеряемой величины " + Name);
     }
     if (dimension == unit)
     {
         return(value);
     }
     else if (dimension == dB)
     {
         return(10 * Math.Log10(this / new NoiseFactor(1, NoiseFactor.unit)));
     }
     else
     {
         throw new ArgumentException("Неизвестная или неучтенная размерность в классе " + Name);
     }
 }
Beispiel #13
0
 public override void SetValue(double value, Dimension dimension)
 {
     if (!Dimensions.Values.Contains(dimension))
     {
         throw new ArgumentException(dimension.ToString() +
                                     " не является размерностью для измеряемой величины " + Name);
     }
     if (dimension == unit)
     {
         this.value = value;
     }
     else if (dimension == dB)
     {
         this.value = Math.Pow(10, value / 10);
     }
     else
     {
         throw new ArgumentException("Неизвестная или неучтенная размерность в классе Power.");
     }
 }
Beispiel #14
0
 public override void SetValue(double value, Dimension dimension)
 {
     if (!Dimensions.Values.Contains(dimension))
     {
         throw new ArgumentException(dimension.ToString() +
                                     " не является размерностью для измеряемой величины " + Name);
     }
     if (dimension.Id % 3 == 0)
     {
         if (value < 0)
         {
             throw new ArgumentException(Name + " не может иметь отрицательное значение");
         }
         this.value = value * Math.Pow(10, dimension.Id);
     }
     else
     {
         throw new ArgumentException("Неизвестная или неучтенная размерность в классе Frequency.");
     }
 }
Beispiel #15
0
 public override string ToString(Dimension dimension)
 {
     return(((dimension == Temperature.C) ? value + AbsoluteNullInC : value).ToString() +
            " " + dimension.ToString());
 }
Beispiel #16
0
 public override string ToString(Dimension dimension)
 {
     return((value / Math.Pow(10, dimension.Id)).ToString() + " " + dimension.ToString());
 }
Beispiel #17
0
 public override string ToString()
 {
     return(value.ToString() + " " + DefaultDimension.ToString());
 }