Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private void Form1_Paint(object sender, PaintEventArgs e)
- {
- Graphics gaux = CreateGraphics();
- gaux.Clear(BackColor);
- if (band)
- {
- bmp2 = (Bitmap)bmp1.Clone();
- g = Graphics.FromImage(bmp2);
- switch (opcion)
- {
- case 2:
- g.DrawLine(grafo.penA, grafo.BuscaInterseccion(nodoP.centro, p2), p2);
- break;
- }
- gaux.DrawImage(bmp2, 0, 0);
- bmp2.Dispose();
- band = false;
- }
- else
- {
- g = Graphics.FromImage(bmp1);
- if (bandF)
- {
- switch (opcion)
- {
- case 1:
- g.FillEllipse(grafo.brushN, p1.X - grafo.radio, p1.Y - grafo.radio, grafo.radio * 2, grafo.radio * 2);
- g.DrawEllipse(grafo.penN, p1.X - grafo.radio + (grafo.penN.Width /2), p1.Y - grafo.radio + (grafo.penN.Width / 2), grafo.radio * 2 - (grafo.penN.Width / 2), grafo.radio * 2 - (grafo.penN.Width / 2));
- if (grafo.numN >= 28 || grafo.edoNom)
- g.DrawString(nodoP.nombre.ToString(), grafo.font, grafo.brushF, p1.X - 6, p1.Y - 6);
- else
- g.DrawString(((char)(nodoP.nombre + 64)).ToString(), grafo.font, grafo.brushF, p1.X - 6, p1.Y - 6);
- break;
- case 2:
- g.DrawLine(grafo.penA, grafo.BuscaInterseccion(nodoP.centro, nodoAux.centro), grafo.BuscaInterseccion(nodoAux.centro, nodoP.centro));
- break;
- }
- bandF = false;
- }
- if(bandI)
- {
- g.Clear(BackColor);
- grafo.ImprimirGrafo(g);
- bandI = false;
- }
- if(opcion == 6 || opcion == 7)
- {
- g.Clear(BackColor);
- if (opcion == 7)
- {
- grafo.Clear();
- grafo.numN = 1;
- grafo.edoNom = false;
- }
- }
- gaux.DrawImage(bmp1, 0, 0);
- }
- gaux.Dispose();
- }
Add Comment
Please, Sign In to add comment