private void Kuratowski_Paint(object sender, PaintEventArgs e) { Graphics gAux = CreateGraphics(); gAux = Graphics.FromImage(bmp); gAux.Clear(this.BackColor); if (bandFinal) { switch (opcion) { case 1: // Nodo gAux.FillEllipse(this.brushRelleno, pe.X, pe.Y, tamNodo, tamNodo); gAux.DrawEllipse(this.penNodo, pe.X + (anchoLineaN / 2), pe.Y + (anchoLineaN / 2), tamNodo - (anchoLineaN / 2), tamNodo - (anchoLineaN / 2)); gAux.DrawString(this.nombre.ToString(), font, brushName, pe.X + (tamNodo / 2) - tamName, pe.Y + (tamNodo / 2) - tamName); numNodos++; this.nombre = ConvierteNombre(numNodos); if (bandNombre) { grafo.CambiaNombre(); gAux.Clear(BackColor); grafo.DibujaGrafo(gAux); bandNombre = false; } this.grafo.actualizaId(); bandFinal = false; break; } } grafo.DibujaGrafo(gAux); g.DrawImage(bmp, 0, 0); }
private void GrafoSecundario_Paint(object sender, PaintEventArgs e) { Graphics gAux = CreateGraphics(); gAux = Graphics.FromImage(bmp); gAux.Clear(this.BackColor); if (band) { Pen p = new Pen(Color.GreenYellow, penArista.Width + 1); switch (opcion) { case 2: //AristaNoDirigida pI1 = MetodosAuxiliares.PuntoInterseccion(p1, p2, tamNodo / 2); gAux.DrawLine(p, pI1, p2); break; case 7: //AristaDirigida p.CustomEndCap = new AdjustableArrowCap(5, 5); pI1 = MetodosAuxiliares.PuntoInterseccion(p1, p2, tamNodo / 2); gAux.DrawLine(p, pI1, p2); break; } } else { //BanderaFinal if (bandFinal) { switch (opcion) { case 1: // Nodo gAux.FillEllipse(this.brushRelleno, pe.X, pe.Y, tamNodo, tamNodo); gAux.DrawEllipse(this.penNodo, pe.X + (anchoLineaN / 2), pe.Y + (anchoLineaN / 2), tamNodo - (anchoLineaN / 2), tamNodo - (anchoLineaN / 2)); gAux.DrawString(this.nombre.ToString(), font, brushName, pe.X + (tamNodo / 2) - tamName, pe.Y + (tamNodo / 2) - tamName); numNodos++; this.nombre = ConvierteNombre(numNodos); if (bandNombre) { grafo.CambiaNombre(); gAux.Clear(BackColor); grafo.DibujaGrafo(gAux); bandNombre = false; } bandFinal = false; break; case 2: //AristaNoDirigida gAux.DrawLine(penArista, pI1, pI2); bandFinal = false; break; case 7: //AristaDirigida gAux.DrawLine(penArista, pI1, pI2); bandFinal = false; break; } } } grafo.DibujaGrafo(gAux); g.DrawImage(bmp, 0, 0); }