/// <summary> /// The constractor of GOM_Point_Value /// </summary> /// <param name="point">The point referred to</param> /// <param name="type">The type of this node (x/y)</param> public GOM_Point_Value(GOM_Point point, ValueType type) { m_point = point; m_type = type; m_values= new GOM_Values(); if ((type != ValueType.X_Value) && (type != ValueType.Y_Value)) { m_type = ValueType.Error_Value; throw new ArgumentException("Invalid type"); } }
/// <summary> /// The constructor of GOM_Num_Value /// </summary> public GOM_Num_Value() { m_value = 0; m_values = new GOM_Values(); }
/// <summary> /// The constructor of GOM_Unary_Value /// </summary> /// <param name="val">The operand</param> /// <param name="type">The type of the operator</param> public GOM_Unary_Value(GOM_Interface_Value val, ValueType type) { m_values = new GOM_Values(); m_values.Add(val); m_type = type; if ((type != ValueType.Sin_Value) && (type != ValueType.Cos_Value) && (type != ValueType.Tan_Value) && (type != ValueType.Sqrt_Value) && (type != ValueType.Neg_Value)) { m_type = ValueType.Error_Value; throw new ArgumentException("Invalid type"); } }
/// <summary> /// The constructor of GOM_Assignment_Constraint /// </summary> /// <param name="lvalue">The lvalue of the assignment</param> /// <param name="rvalue">The rvalue of the assignment</param> public GOM_Assignment_Constraint(GOM_Interface_Value lvalue, GOM_Interface_Value rvalue) { m_values = new GOM_Values(); m_values.Add(lvalue); m_values.Add(rvalue); }
/// <summary> /// The constructor of GOM_Binary_Value /// </summary> /// <param name="val1">The first operand of this node</param> /// <param name="val2">The second operand of this node</param> /// <param name="type">The type of the operator</param> public GOM_Binary_Value(GOM_Interface_Value val1, GOM_Interface_Value val2, ValueType type) { m_values = new GOM_Values(); m_values.Add(val1); m_values.Add(val2); m_type = type; if ((type != ValueType.Add_Value) && (type != ValueType.Minus_Value) && (type != ValueType.Divide_Value) && (type != ValueType.Multiply_Value) && (type != ValueType.Max_Value) && (type != ValueType.Min_Value)) { m_type = ValueType.Error_Value; throw new ArgumentException("Invalid type"); } }