void GraficarEncabezadosColumna(EncabezadosColumna encolum, int nivel) { if (encolum.GetPrimero() != null) { int cont = 0; NodoEncabezado auxiliar = encolum.GetPrimero(); sw.Write("{rank = same\n"); while (auxiliar != null) { sw.Write("ec" + auxiliar.Get_Id() + nivel + "[label = \"Numero de columna: " + (char)auxiliar.Get_Id() + "\"];\n"); auxiliar = auxiliar.siguiente; cont++; } sw.Write("}\n"); auxiliar = encolum.GetPrimero(); while (auxiliar.siguiente != null) { sw.Write("ec" + auxiliar.Get_Id() + nivel + "->ec" + auxiliar.siguiente.Get_Id() + nivel + "\n"); sw.Write("ec" + auxiliar.Get_Id() + nivel + "->c" + auxiliar.cont.fila + auxiliar.cont.columna + nivel + "\n"); auxiliar = auxiliar.siguiente; } sw.Write("ec" + auxiliar.Get_Id() + nivel + "->c" + auxiliar.cont.fila + auxiliar.cont.columna + nivel + "\n"); } }
void GraficarContenido(EncabezadoFila enfila, EncabezadosColumna encol, int nivel) { NodoEncabezado auxiliar = enfila.GetPrimero(); while (auxiliar != null) { NodoMatriz auxiliarcontenido = auxiliar.cont; while (auxiliarcontenido.siguiente != null) { sw.Write("c" + auxiliarcontenido.fila + auxiliarcontenido.columna + nivel + "->c" + auxiliarcontenido.fila + auxiliarcontenido.siguiente.columna + nivel + "\n"); auxiliarcontenido = auxiliarcontenido.siguiente; } while (auxiliarcontenido.anterior != null) { sw.Write("c" + auxiliarcontenido.fila + auxiliarcontenido.columna + nivel + "->c" + auxiliarcontenido.fila + auxiliarcontenido.anterior.columna + nivel + "\n"); auxiliarcontenido = auxiliarcontenido.anterior; } auxiliar = auxiliar.siguiente; } //relaciones verticales auxiliar = encol.GetPrimero(); while (auxiliar != null) { NodoMatriz auxiliarcontenido = auxiliar.cont; while (auxiliarcontenido.abajo != null) { sw.Write("c" + auxiliarcontenido.fila + auxiliarcontenido.columna + nivel + "->c" + auxiliarcontenido.abajo.fila + auxiliarcontenido.columna + nivel + "\n"); auxiliarcontenido = auxiliarcontenido.abajo; } while (auxiliarcontenido.arriba != null) { sw.Write("c" + auxiliarcontenido.fila + auxiliarcontenido.columna + nivel + "->c" + auxiliarcontenido.arriba.fila + auxiliarcontenido.columna + nivel + "\n"); auxiliarcontenido = auxiliarcontenido.arriba; } auxiliar = auxiliar.siguiente; } }
void GraficarEncabezadosColumnaVivos(EncabezadosColumna encolum, int nivel) { if (encolum.GetPrimero() != null) { int cont = 0; NodoEncabezado auxiliar = encolum.GetPrimero(); sw.Write("{rank = same\n"); while (auxiliar != null) { NodoMatriz auxiliarcontenido = auxiliar.cont; while (auxiliarcontenido != null) { if (auxiliarcontenido.vidad != 0) { sw.WriteLine("ec" + auxiliar.Get_Id() + nivel + "[label = \"Numero de columna: " + (char)auxiliar.Get_Id() + "\"];\n"); break; } auxiliarcontenido = auxiliarcontenido.abajo; } auxiliar = auxiliar.siguiente; cont++; } sw.Write("}\n"); auxiliar = encolum.GetPrimero(); string anterior = ""; while (auxiliar != null) { NodoMatriz auxiliarcontenido = auxiliar.cont; while (auxiliarcontenido != null) { if (auxiliarcontenido.vidad != 0) { if (anterior == "") { anterior = "ec" + auxiliar.Get_Id() + nivel; } else { sw.WriteLine(anterior + "->ec" + auxiliar.Get_Id() + nivel); anterior = "ec" + auxiliar.Get_Id() + nivel; } break; } auxiliarcontenido = auxiliarcontenido.abajo; } auxiliar = auxiliar.siguiente; } auxiliar = encolum.GetPrimero(); anterior = ""; while (auxiliar != null) { NodoMatriz auxiliarcontenido = auxiliar.cont; anterior = ""; while (auxiliarcontenido != null) { if (auxiliarcontenido.vidad != 0) { if (anterior == "") { sw.WriteLine("ec" + auxiliar.Get_Id() + nivel + "->c" + auxiliarcontenido.fila + auxiliarcontenido.columna + nivel); anterior = "c" + auxiliarcontenido.fila + auxiliarcontenido.columna + nivel; } else { sw.WriteLine(anterior + "->c" + auxiliarcontenido.fila + auxiliarcontenido.columna + nivel); sw.WriteLine("c" + auxiliarcontenido.fila + auxiliarcontenido.columna + nivel + "->" + anterior); anterior = "c" + auxiliarcontenido.fila + auxiliarcontenido.columna + nivel; } } auxiliarcontenido = auxiliarcontenido.abajo; } auxiliar = auxiliar.siguiente; } } }