Пример #1
0
 internal Measure(string name)
 {
     Name = name;
     IsBasicIsMeasure = true;
     SIequivalent = new Dictionary<Measure, int>();
     SIequivalent.Add(this, 1);
     Equivalent = SIequivalent;
 }
Пример #2
0
 public Measure(string name, IDictionary<Measure, int> sIequivalent)
 {
     Name = name;
     SIequivalent = sIequivalent;
     IsBasicIsMeasure = false;
     Equivalent = new Dictionary<Measure, int>();
     Equivalent.Add(this, 1);
 }
        //поиск формулы
        public static PhysValue SearchFormula(Dictionary dictionary, List<OneElementInFormula> results)
        {
            var newPhysValue = new PhysValue();

            foreach (var formula in dictionary.AllFormulas.Where(formula => CompareList(formula.Oneform, results)))
            {
                newPhysValue.Value = formula.Calculate(results);
                newPhysValue.Measure = formula.Measure;
                return newPhysValue;
            }
            return newPhysValue;
        }
 public static IDictionary<Measure, int> Clone(IDictionary<Measure, int> obj)
 {
     var clone = new Dictionary<Measure, int>();
     foreach (var variable in obj)
     {
         var objClone = variable.Key.Clone();
         var tmp = objClone as Measure;
         if (tmp != null)
         {
             clone.Add(tmp, variable.Value);
         }
     }
     return clone;
 }
Пример #5
0
 private static void Main()
 {
     DerivedMeasure derivedMeasure = new DerivedMeasure();
     var siMeasures = new SIMeasuresList();
     var d = new Dictionary<Measure, int> {{siMeasures.Kilogram, 1}};
     var pound = new Measure("фунт", d);
     var op1 = new Operand(2, derivedMeasure.Becquerel);
     var op2 = new Operand(4, derivedMeasure.Volt);
     var force = new Vector2DOperand(new Vector2D(Math.Sqrt(2.0)*2, Math.PI/4), derivedMeasure.Newton);
     var path = new Vector2DOperand(new Vector2D(2, 0), siMeasures.Metre);
     Operand op3 = force*path;
     /*  Measure meter = new Measure("meter", 1, new Dictionary<BasicMeasures, int> { { BasicMeasures.Metre, 1 } });
     Operand op1 = new Operand(2, new Dictionary<Measure, int> { { meter, 1 } });
     Operand op2 = new Operand(1, new Dictionary<Measure, int> { { meter, 1 } });
     var op3 = PhysicsMath.Pow(op1,3);*/
 }
Пример #6
0
 public Measure()
 {
     Name = "unmeasured";
     IsBasicIsMeasure = true;
     SIequivalent = new Dictionary<Measure, int>();
 }