Example #1
0
 /// <summary>
 /// Sets formula argument
 /// </summary>
 /// <param name="arg"></param>
 public void Set(ElementaryObjectArgument arg)
 {
     foreach (char c in labels)
     {
         arg[c] = this[c].Parameter();
     }
 }
        void Set(Dictionary <string, string> variables)
        {
            MathFormula f = MathFormula.FromString(MathSymbolFactory.Sizes, formula);

            measures.Clear();
            Dictionary <char, object> table = new Dictionary <char, object>();

            foreach (string key in variables.Keys)
            {
                IMeasurement m = this.FindMeasurement(variables[key], false);
                measures[key[0]] = m;
                table[key[0]]    = m.Type;
            }
            IFormulaObjectCreator creator = VariableDetector.GetCreator(table);

            f    = f.FullTransform(null);
            tree = ObjectFormulaTree.CreateTree(f, creator);
            arg  = new ElementaryObjectArgument();
            arg.Add(tree);
            this.variables = variables;
        }
Example #3
0
        /// <summary>
        /// Accepts parameters
        /// </summary>
        /// <param name="s">String of parameters</param>
        public void AcceptParameters(string s)
        {
            parameters.Clear();
            par = null;
            arg = new ElementaryObjectArgument();
            arg.Add(tree);
            string str = arg.Variables;

            foreach (char c in s)
            {
                if (str.IndexOf(c) < 0)
                {
                    throw new Exception("Illegal formula parameter");
                }
            }
            foreach (char c in s)
            {
                double a = 0;
                parameters["" + c] = a;
                arg[c]             = a;
            }
        }