Feedback

C# - DrawPoint als Erweiterungsmethode für Graphics

Veröffentlicht von am 02.01.2013
(0 Bewertungen)
Öfters braucht man eine Funktion fie einen einfachen Punkt auf die Graphics-Fläche zeichnet. Doch da bietet das .NET Framework leider nichts, darum habe ich diese Erweiterungsmethoden für die Graphics-Klasse erstellt.
Ich habe gleich mehrere Überladungen zum zeichnen von einem oder mehreren Punkten geschrieben. Die Farbe muss als Color-Objekt übergeben werden. Der Mittelpunkt des Punktes als Point-, PointF- oder Paar von int oder float. Optional kann der Durchmesser des Punktes angegeben werden.

Hinweis: Wenn Sie 0 als durchmesser angeben, dannwird der Punkt 1*1 Pixel groß. In den meisten größen, sieht der Punkt leicht verpixelt aus. Das liegt an der Art, wie Windows Forms die Punkte rendert.
GFU-Schulungen  [Anzeige]

Visual Studio Team Foundation Server 2017/2015 (TFS) - Komplett 

VB.NET Einführung

Die Schulung zeigt Ihnen, wie Sie einfache, benutzerorientierte Programme, die auf Datenbanken zugreifen, in VB.NET eigenständig entwickeln. 

        public static void DrawPoint(this Graphics g, Color color, Point point)
        {
            g.FillEllipse(new SolidBrush(color), point.X, point.Y, 0.1f, 0.1f);
        }
        public static void DrawPoint(this Graphics g, Color color, Point point, float d)
        {
            g.FillEllipse(new SolidBrush(color), point.X - d / 2, point.Y - d / 2, 0.1f + d, 0.1f + d);
        }
        public static void DrawPoint(this Graphics g, Color color, PointF point)
        {
            g.FillEllipse(new SolidBrush(color), point.X, point.Y, 0.1f,0.1f);
        }
        public static void DrawPoint(this Graphics g, Color color, PointF point, float d)
        {
            g.FillEllipse(new SolidBrush(color), point.X - d / 2, point.Y - d / 2, 0.1f + d, 0.1f + d);
        }
        public static void DrawPoint(this Graphics g, Color color, float x, float y)
        {
            g.FillEllipse(new SolidBrush(color), x, y,  0.1f,0.1f);
        }
        public static void DrawPoint(this Graphics g, Color color, float x, float y, float d)
        {
            g.FillEllipse(new SolidBrush(color), x - d / 2, y - d / 2, 0.1f +  d, 0.1f + d);
        }
        public static void DrawPoint(this Graphics g, Color color, int x, int y)
        {
            g.FillEllipse(new SolidBrush(color), x, y, 0.1f, 0.1f);
        }
        public static void DrawPoint(this Graphics g, Color color, int x, int y, float d)
        {
            g.FillEllipse(new SolidBrush(color), x - d / 2, y - d / 2, 0.1f + d, 0.1f + d);
        }
        public static void DrawPoints(this Graphics g, Color color, Point[] points)
        {
            foreach (Point point in points)
                DrawPoint(g, color, point);
        }
        public static void DrawPoints(this Graphics g, Color color, Point[] points, float d)
        {
            foreach (Point point in points)
                DrawPoint(g, color, point, d);
        }
        public static void DrawPoints(this Graphics g, Color color, PointF[] points)
        {
            foreach (PointF point in points)
                DrawPoint(g, color, point);
        }
        public static void DrawPoints(this Graphics g, Color color, PointF[] points, float d)
        {
            foreach (PointF point in points)
                DrawPoint(g, color, point d);
        }

Kommentare zum Snippet

 

Logge dich ein, um hier zu kommentieren!