• Martes 21 de Abril de 2026, 12:00

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Temas - lUis_mIguel

Páginas: [1]
1
C# / Rectangulo con esquinas redondas
« en: Domingo 14 de Septiembre de 2008, 19:05 »
Saludos al foro!
Estoy programando (aficionado) en c# con VS2008 en un winform.
Quisiera pedir vuestra ayuda, pues estoy atascado en lo siguiente:
He creado una clase que dibuja cuatro líneas que no se tocan en las esquinas, así formo un rectángulo (SIN ESQUINAS); ahora quiero dibujar cuatro arcos una en cada esquina, pero no me aclaro con esto último, ¿podríais echarme una manita por favor?
ESTO ES LO QUE TENGO HECHO:
protected override void OnPaint( PaintEventArgs e )
      {
         System.Drawing.Graphics areaToPaint = this.CreateGraphics();
         System.Drawing.Pen myPen = new System.Drawing.Pen( System.Drawing.Color.MediumSlateBlue );
         System.Drawing.Rectangle myRect = new System.Drawing.Rectangle( 50, 50, 500, 100 );
         ExtensionesGraficas.RectRoundCorner( areaToPaint, myPen, myRect, 8 );
      }
public static void RectRoundCorner( this Graphics g, Pen pen, Rectangle rect, int radio )
      {
         g.DrawLine( pen, rect.Left + radio, rect.Top, rect.Right - radio, rect.Top );
         g.DrawLine( pen, rect.Left + radio, rect.Bottom, rect.Right - radio, rect.Bottom );
         g.DrawLine( pen, rect.Left, rect.Top + radio, rect.Left, rect.Bottom - radio );
         g.DrawLine( pen, rect.Right, rect.Top + radio, rect.Right, rect.Bottom - radio );
         //(aquí tengo que dibujar las cuatro esquinas)
      }
Espero haberme expresado con claridad y se entienda el código. Si me podéis orientar os lo agradezco de antemano,
LMiguel
------------
Como podéis ver en el adjunto ya lo he conseguido. Solo se requería pasar a Draw.Arc las coordenadas del vértice, y la anchura y altura, del cuadrado imaginario en cuyo interior se dibuja la circunferencia de la cual estamos pintando un arco.

Páginas: [1]