Ejemplo n.º 1
0
        public void agregarPares(List <Pares> pares, string read, Estados est1, Estados est2, List <Estados> st1, List <Estados> st2)
        {
            string p1 = "", p2 = "";

            for (int i = 0; i < est1.transiciones.Count; i++)
            {
                if (est1.transiciones[i].read == read)
                {
                    p1 = obtenerNombrePorId(est1.transiciones[i].to, st1);
                }
            }

            for (int i = 0; i < est2.transiciones.Count; i++)
            {
                if (est2.transiciones[i].read == read)
                {
                    p2 = obtenerNombrePorId(est2.transiciones[i].to, st2);
                }
            }

            pares.Add(new Pares(p2, p1));
        }
Ejemplo n.º 2
0
        public void CargarEstados()
        {
            try
            {
                XmlDocument doc = new XmlDocument();
                doc.Load(this.path);

                XmlNodeList _estadostemp = doc.DocumentElement.SelectNodes("/structure/automaton/state");

                foreach (XmlNode _estados in _estadostemp)
                {
                    bool final = false, inicial = false;
                    int  sizeChilds = _estados.ChildNodes.Count;

                    if (sizeChilds == 7)
                    {
                        if (_estados.ChildNodes[5].Name == "initial")
                        {
                            inicial = true;
                        }
                        else if (_estados.ChildNodes[5].Name == "final")
                        {
                            final = true;
                        }
                    }


                    Estados tmp = new Estados(Convert.ToInt32(_estados.Attributes["id"].Value)
                                              , _estados.Attributes["name"].Value, Convert.ToDouble(_estados.SelectSingleNode("x").InnerText)
                                              , Convert.ToDouble(_estados.SelectSingleNode("y").InnerText), inicial, final);

                    this.estados.Add(tmp);
                }
            }
            catch (Exception e) { MessageBox.Show(e.Message); }
        }