Example #1
0
 public ArbolUsuarios Espejo(ArbolUsuarios arbol1)
 {
     if (arbol1.espejo)
     {
         arbol1.espejo = false;
     }
     else
     {
         arbol1.espejo = true;
     }
     arbol1.SetRaiz(nespejo(arbol1.GetRaiz()));
     return(arbol1);
 }
Example #2
0
        public void GraficarArbol(ArbolUsuarios arbol, string tipo)
        {
            if (tipo == "normal")
            {
                sw = new StreamWriter(ruta + "\\arbol.dot");
            }
            else
            {
                sw = new StreamWriter(ruta + "\\arbolespejo.dot");
            }
            sw.WriteLine("digraph{");
            sw.WriteLine("node[shape = record];");
            sw.WriteLine("subgraph clusterdatos{");
            sw.WriteLine("label = \"Datos del arbol\"");
            sw.WriteLine("alt[label=\"Altura: " + arbol.Altura(arbol.GetRaiz(), 1) + "\"];");
            sw.WriteLine("niv[label=\"Niveles: " + arbol.AuxAltura(arbol.GetRaiz(), 0, 0) + "\"];");
            sw.WriteLine("hoja[label=\"Numero de nodos hoja: " + arbol.AuxNodosHoja(arbol.GetRaiz(), 0) + "\"];");
            sw.WriteLine("rama[label=\"Numero de nodos rama: " + arbol.AuxNodosRama(arbol.GetRaiz(), 0) + "\"];");
            sw.WriteLine("}");
            sw.WriteLine("subgraph clusterarbol{");
            if (tipo == "normal")
            {
                sw.WriteLine("label = \"Arbol de usuarios \"");
            }
            else
            {
                sw.WriteLine("label = \"Arbol espejo de usuarios\"");
            }
            sw.WriteLine(GraficarNodos(arbol.GetRaiz(), "r"));
            sw.WriteLine(GraficarConexiones(arbol.GetRaiz(), "r"));
            sw.WriteLine("}");
            sw.WriteLine("}");
            sw.Close();
            var comando = "";

            if (tipo == "normal")
            {
                comando = string.Format("dot -Tjpg {0} -o {1}", ruta + "\\arbol.dot", ruta + "\\arbol.jpg");
            }
            else
            {
                comando = string.Format("dot -Tjpg {0} -o {1}", ruta + "\\arbolespejo.dot", ruta + "\\arbolespejo.jpg");
            }

            var informacion = new System.Diagnostics.ProcessStartInfo("cmd", "/C" + comando);
            var proceso     = new System.Diagnostics.Process();

            proceso.StartInfo = informacion;
            proceso.Start();
            proceso.WaitForExit();
        }
Example #3
0
        public void GraficarArbol(ArbolUsuarios arbol)
        {
            sw = new StreamWriter(ruta + "\\arbol.dot");
            sw.WriteLine("digraph{");
            sw.WriteLine("node[shape = record];");
            sw.WriteLine("label = \"Arbol de usuarios \"");
            sw.WriteLine(GraficarNodos(arbol.GetRaiz(), "r"));
            sw.WriteLine(GraficarConexiones(arbol.GetRaiz(), "r"));
            sw.WriteLine("}");
            sw.Close();
            var comando     = string.Format("dot -Tjpg {0} -o {1}", ruta + "\\arbol.dot", ruta + "\\arbol.jpg");
            var informacion = new System.Diagnostics.ProcessStartInfo("cmd", "/C" + comando);
            var proceso     = new System.Diagnostics.Process();

            proceso.StartInfo = informacion;
            proceso.Start();
            proceso.WaitForExit();
        }
 public void IniciarArbol()
 {
     arbol = new ArbolUsuarios();
 }