WriteableBitmapExtensions
Sammlung von Draw Extension Methoden für die Silverlight WriteableBitmap Klasse.
Methoden
public static int AlphaBlend(int sa, int sr, int sg, int sb, int destPixel)
result = WriteableBitmapExtensions.AlphaBlend(sa, sr, sg, sb, destPixel)
Alpha mischt 2 vorvervielfachte Farben miteinander
- sa
- Alpha-Farben-Quellkomponente
- sr
- Vorvervielfachte rote Farbkomponente
- sg
- Vorvervielfachte grüne Farbkomponente
- sb
- Vorvervielfachte blaue Quellfarbkomponente
- destPixel
- Vorvervielfachte Zielfarbe
Rückgabe: Vormultiplizierter gemischter Farbwert
private static void AlphaBlendNormalOnPremultiplied(Int32* pixels, int index, int sa, uint srb, uint sg)
WriteableBitmapExtensions.AlphaBlendNormalOnPremultiplied(pixels, index, sa, srb, sg)
Mischt eine bestimmte Quellfarbe auf einer Zielvormultiplizierten Farbe
- pixels
- Pixel-Array
- index
- Index des Zielpixels
- sa
- Quelle Alpha (0..255)
- srb
- Quelle nicht vorvervielfachte rote und blaue Komponente im Format 0x00rr00bb
- sg
- Grüne Ausgangskomponente (0..255)
internal static void Blit(WriteableBitmap bmp, Rect destRect, WriteableBitmap source, Rect sourceRect, Color color, BlendMode BlendMode)
WriteableBitmapExtensions.Blit(bmp, destRect, source, sourceRect, color, BlendMode)
Kopiert (blits) die Pixel von der WriteableBitmap Quelle zum Ziel WriteableBitmap @ (dies).
- bmp
- Das Ziel WriteableBitmap.
- destRect
- Das Rechteck, das die Zielregion definiert.
- source
- Die Quelle WriteableBitmap.
- sourceRect
- Das Rechteck, das von der Quelle zum Ziel kopiert wird.
- color
- Wenn nicht Colors.White, wird das Quellbild getönt. Eine teilweise transparente Farbe und das Bild wird teilweise transparent gezeichnet. Wenn BlendMode ColorKeying ist, wird diese Farbe als Farbschlüssel verwendet, um alle Pixel mit diesem Wert auszublenden.
- BlendMode
- Der Mischmodus BlendMode.
internal static void Blit(WriteableBitmap bmp, Point destPosition, WriteableBitmap source, Rect sourceRect, Color color, BlendMode BlendMode)
WriteableBitmapExtensions.Blit(bmp, destPosition, source, sourceRect, color, BlendMode)
Kopiert (blits) die Pixel von der WriteableBitmap Quelle zum Ziel WriteableBitmap @ (dies).
- bmp
- Das Ziel WriteableBitmap.
- destPosition
- Die Zielposition in der Zielbitmap.
- source
- Die Quelle WriteableBitmap.
- sourceRect
- Das Rechteck, das von der Quelle zum Ziel kopiert wird.
- color
- Wenn nicht Colors.White, wird das Quellbild gefärbt. Eine teilweise transparente Farbe und das Bild wird teilweise transparent gezeichnet.
- BlendMode
- Der Mischmodus BlendMode.
internal static void Blit(WriteableBitmap bmp, Rect destRect, WriteableBitmap source, Rect sourceRect)
WriteableBitmapExtensions.Blit(bmp, destRect, source, sourceRect)
Kopiert (blits) die Pixel von der WriteableBitmap Quelle zum Ziel WriteableBitmap @ (dies).
- bmp
- Das Ziel WriteableBitmap.
- destRect
- Das Rechteck, das die Zielregion definiert.
- source
- Die Quelle WriteableBitmap.
- sourceRect
- Das Rechteck, das von der Quelle zum Ziel kopiert wird.
internal static void Blit(WriteableBitmap bmp, Rect destRect, WriteableBitmap source, Rect sourceRect, BlendMode BlendMode)
WriteableBitmapExtensions.Blit(bmp, destRect, source, sourceRect, BlendMode)
Kopiert (blits) die Pixel von der WriteableBitmap Quelle zum Ziel WriteableBitmap @ (dies).
- bmp
- Das Ziel WriteableBitmap.
- destRect
- Das Rechteck, das die Zielregion definiert.
- source
- Die Quelle WriteableBitmap.
- sourceRect
- Das Rechteck, das von der Quelle zum Ziel kopiert wird.
- BlendMode
- Der Mischmodus BlendMode.
internal static void Clear(WriteableBitmap bmp, Color color)
WriteableBitmapExtensions.Clear(bmp, color)
Füllt das ganze WriteableBitmap mit einer Farbe.
- bmp
- Die WriteableBitmap.
- color
- Die Farbe, die zum Füllen verwendet wird.
internal static void Clear(WriteableBitmap bmp)
WriteableBitmapExtensions.Clear(bmp)
Füllt das ganze WriteableBitmap mit einer leeren Farbe (0).
- bmp
- Die WriteableBitmap.
internal static WriteableBitmap Clone(WriteableBitmap bmp)
result = WriteableBitmapExtensions.Clone(bmp)
Klonen Sie die angegebene WriteableBitmap.
- bmp
- Die WriteableBitmap.
Rückgabe: Eine Kopie des WriteableBitmap.
internal static bool CohenSutherlandLineClip(Rect extents, double x0, double y0, double x1, double y1)
result = WriteableBitmapExtensions.CohenSutherlandLineClip(extents, x0, y0, x1, y1)
Cohen-Sutherland-Clip-Algorithmus schneidet eine Linie von P0 = (x0, y0) nach P1 = (x1, y1) gegen ein Rechteck mit Diagonale von (xmin, ymin) nach (xmax, ymax).
Rückgabe: eine Liste von zwei Punkten in der resultierenden Schnittlinie oder Null
private static List<int> ComputeBezierPoints(int x1, int y1, int cx1, int cy1, int cx2, int cy2, int x2, int y2, int color, BitmapContext context, int w, int h)
result = WriteableBitmapExtensions.ComputeBezierPoints(x1, y1, cx1, cy1, cx2, cy2, x2, y2, color, context, w, h)
Zeichnet einen gefüllten, kubischen Bezier-Spline, der durch Start, Ende und zwei Kontrollpunkte definiert ist.
- x1
- Die x-Koordinate des Startpunkts.
- y1
- Die y-Koordinate des Startpunkts.
- cx1
- Die x-Koordinate des 1. Kontrollpunktes.
- cy1
- Die y-Koordinate des 1. Kontrollpunktes.
- cx2
- Die x-Koordinate des 2. Kontrollpunktes.
- cy2
- Die y-Koordinate des 2. Kontrollpunktes.
- x2
- Die x-Koordinate des Endpunktes.
- y2
- Die y-Koordinate des Endpunktes.
- color
- Die Farbe.
- context
- Der Bitmap-Kontext.
- w
- Die Breite der Bitmap.
- h
- Die Höhe der Bitmap.
private static byte ComputeOutCode(Rect extents, double x, double y)
result = WriteableBitmapExtensions.ComputeOutCode(extents, x, y)
Berechnen Sie den Bitcode für einen Punkt (x, y) mit dem Clip-Rechteck, das diagonal durch (xmin, ymin) und (xmax, ymax) begrenzt ist, SUMM, DASS xmax, xmin, ymax und ymin globale Konstanten sind.
- extents
- Die Ausmaße.
- x
- Das x.
- y
- Die y.
private static List<int> ComputeSegmentPoints(int x1, int y1, int x2, int y2, int x3, int y3, int x4, int y4, float tension, int color, BitmapContext context, int w, int h)
result = WriteableBitmapExtensions.ComputeSegmentPoints(x1, y1, x2, y2, x3, y3, x4, y4, tension, color, context, w, h)
Berechnen Sie die diskreten Segmentpunkte eines Kardinal-Spline (kubisch), der durch vier Kontrollpunkte definiert ist.
- x1
- Die x-Koordinate des 1. Kontrollpunktes.
- y1
- Die y-Koordinate des 1. Kontrollpunktes.
- x2
- Die x-Koordinate des 2. Kontrollpunktes.
- y2
- Die y-Koordinate des 2. Kontrollpunktes.
- x3
- Die x-Koordinate des 3. Kontrollpunktes.
- y3
- Die y-Koordinate des 3. Kontrollpunktes.
- x4
- Die x-Koordinate des 4. Kontrollpunktes.
- y4
- Die y-Koordinate des 4. Kontrollpunktes.
- tension
- Die Spannung der Kurve definiert die Form. Normalerweise wäre zwischen 0 und 1,0 eine Gerade.
- color
- Die Farbe.
- context
- Der Kontext, der das Pixel-Array enthält.
- w
- Die Breite der Bitmap.
- h
- Die Höhe der Bitmap.
Convolute(WriteableBitmap, Int32[0:,0:]) : WriteableBitmap
Erstellt ein neues gefiltertes WriteableBitmap.
- bmp
- Die WriteableBitmap.
- kernel
- Der Kernel, der für die Faltung verwendet wird.
Rückgabe: Ein neues WriteableBitmap @, das ist eine gefilterte Version der Eingabe.
Convolute(WriteableBitmap, Int32[0:,0:], int, int) : WriteableBitmap
Erstellt ein neues gefiltertes WriteableBitmap.
- bmp
- Die WriteableBitmap.
- kernel
- Der Kernel, der für die Faltung verwendet wird.
- kernelFactorSum
- Der Faktor, der für die Kernel-Summierung verwendet wird.
- kernelOffsetSum
- Der für die Kernel-Summierung verwendete Offset.
Rückgabe: Ein neues WriteableBitmap @, das ist eine gefilterte Version der Eingabe.
internal static void DrawBezier(WriteableBitmap bmp, int x1, int y1, int cx1, int cy1, int cx2, int cy2, int x2, int y2, Color color)
WriteableBitmapExtensions.DrawBezier(bmp, x1, y1, cx1, cy1, cx2, cy2, x2, y2, color)
Zeichnet einen kubischen Beziér-Spline, der durch Start, Ende und zwei Kontrollpunkte definiert ist.
- bmp
- Die WriteableBitmap.
- x1
- Die x-Koordinate des Startpunkts.
- y1
- Die y-Koordinate des Startpunkts.
- cx1
- Die x-Koordinate des 1. Kontrollpunktes.
- cy1
- Die y-Koordinate des 1. Kontrollpunktes.
- cx2
- Die x-Koordinate des 2. Kontrollpunktes.
- cy2
- Die y-Koordinate des 2. Kontrollpunktes.
- x2
- Die x-Koordinate des Endpunktes.
- y2
- Die y-Koordinate des Endpunktes.
- color
- Die Farbe.
internal static void DrawBezier(WriteableBitmap bmp, int x1, int y1, int cx1, int cy1, int cx2, int cy2, int x2, int y2, int color)
WriteableBitmapExtensions.DrawBezier(bmp, x1, y1, cx1, cy1, cx2, cy2, x2, y2, color)
Zeichnet einen kubischen Beziér-Spline, der durch Start, Ende und zwei Kontrollpunkte definiert ist.
- bmp
- Die WriteableBitmap.
- x1
- Die x-Koordinate des Startpunkts.
- y1
- Die y-Koordinate des Startpunkts.
- cx1
- Die x-Koordinate des 1. Kontrollpunktes.
- cy1
- Die y-Koordinate des 1. Kontrollpunktes.
- cx2
- Die x-Koordinate des 2. Kontrollpunktes.
- cy2
- Die y-Koordinate des 2. Kontrollpunktes.
- x2
- Die x-Koordinate des Endpunktes.
- y2
- Die y-Koordinate des Endpunktes.
- color
- Die Farbe.
internal static void DrawBeziers(WriteableBitmap bmp, int[] points, int color)
WriteableBitmapExtensions.DrawBeziers(bmp, points, color)
Zeichnet eine Reihe von kubischen Beziér-Splines, die jeweils durch Anfangs-, End- und zwei Kontrollpunkte definiert sind. Der Endpunkt der vorherigen Kurve wird als Ausgangspunkt für die nächste verwendet. Die Anfangskurve benötigt daher vier Punkte und die darauffolgende 3 (2 Kontroll- und 1 Endpunkt).
- bmp
- Die WriteableBitmap.
- points
- Die Punkte für die Kurve in x- und y-Paaren, daher wird das Array als (x1, y1, cx1, cy1, cx2, cy2, x2, y2, cx3, cx4 ..., xn, yn) interpretiert.
- color
- Die Farbe für den Spline.
internal static void DrawBeziers(WriteableBitmap bmp, int[] points, Color color)
WriteableBitmapExtensions.DrawBeziers(bmp, points, color)
Zeichnet eine Reihe von kubischen Beziér-Splines, die jeweils durch Anfangs-, End- und zwei Kontrollpunkte definiert sind. Der Endpunkt der vorherigen Kurve wird als Ausgangspunkt für die nächste verwendet. Die Anfangskurve benötigt daher vier Punkte und die darauffolgende 3 (2 Kontroll- und 1 Endpunkt).
- bmp
- Die WriteableBitmap.
- points
- Die Punkte für die Kurve in x- und y-Paaren, daher wird das Array als (x1, y1, cx1, cy1, cx2, cy2, x2, y2, cx3, cx4 ..., xn, yn) interpretiert.
- color
- Die Farbe für den Spline.
internal static void DrawCurve(WriteableBitmap bmp, int[] points, float tension, int color)
WriteableBitmapExtensions.DrawCurve(bmp, points, tension, color)
Zeichnet einen Kardinal-Spline (kubisch), der durch eine Punktsammlung definiert wird.
- bmp
- Die WriteableBitmap.
- points
- Die Punkte für die Kurve in x- und y-Paaren, daher wird das Array als (x1, y1, x2, y2, x3, y3, x4, y4, x1, x2 ..., xn, yn) interpretiert.
- tension
- Die Spannung der Kurve definiert die Form. Normalerweise wäre zwischen 0 und 1,0 eine Gerade.
- color
- Die Farbe für den Spline.
internal static void DrawCurve(WriteableBitmap bmp, int[] points, float tension, Color color)
WriteableBitmapExtensions.DrawCurve(bmp, points, tension, color)
Zeichnet einen Kardinal-Spline (kubisch), der durch eine Punktsammlung definiert wird.
- bmp
- Die WriteableBitmap.
- points
- Die Punkte für die Kurve in x- und y-Paaren, daher wird das Array als (x1, y1, x2, y2, x3, y3, x4, y4, x1, x2 ..., xn, yn) interpretiert.
- tension
- Die Spannung der Kurve definiert die Form. Normalerweise wäre zwischen 0 und 1,0 eine Gerade.
- color
- Die Farbe für den Spline.
internal static void DrawCurveClosed(WriteableBitmap bmp, int[] points, float tension, int color)
WriteableBitmapExtensions.DrawCurveClosed(bmp, points, tension, color)
Zeichnet einen geschlossenen Kardinal-Spline (kubisch), der durch eine Punktsammlung definiert wird.
- bmp
- Die WriteableBitmap.
- points
- Die Punkte für die Kurve in x- und y-Paaren, daher wird das Array als (x1, y1, x2, y2, x3, y3, x4, y4, x1, x2 ..., xn, yn) interpretiert.
- tension
- Die Spannung der Kurve definiert die Form. Normalerweise wäre zwischen 0 und 1,0 eine Gerade.
- color
- Die Farbe für den Spline.
internal static void DrawCurveClosed(WriteableBitmap bmp, int[] points, float tension, Color color)
WriteableBitmapExtensions.DrawCurveClosed(bmp, points, tension, color)
Zeichnet einen geschlossenen Kardinal-Spline (kubisch), der durch eine Punktsammlung definiert wird.
- bmp
- Die WriteableBitmap.
- points
- Die Punkte für die Kurve in x- und y-Paaren, daher wird das Array als (x1, y1, x2, y2, x3, y3, x4, y4, x1, x2 ..., xn, yn) interpretiert.
- tension
- Die Spannung der Kurve definiert die Form. Normalerweise wäre zwischen 0 und 1,0 eine Gerade.
- color
- Die Farbe für den Spline.
private static void DrawCurveSegment(int x1, int y1, int x2, int y2, int x3, int y3, int x4, int y4, float tension, int color, BitmapContext context, int w, int h)
WriteableBitmapExtensions.DrawCurveSegment(x1, y1, x2, y2, x3, y3, x4, y4, tension, color, context, w, h)
Zeichnet ein Segment eines Kardinals Spline (kubisch), definiert durch vier Kontrollpunkte.
- x1
- Die x-Koordinate des 1. Kontrollpunktes.
- y1
- Die y-Koordinate des 1. Kontrollpunktes.
- x2
- Die x-Koordinate des 2. Kontrollpunktes.
- y2
- Die y-Koordinate des 2. Kontrollpunktes.
- x3
- Die x-Koordinate des 3. Kontrollpunktes.
- y3
- Die y-Koordinate des 3. Kontrollpunktes.
- x4
- Die x-Koordinate des 4. Kontrollpunktes.
- y4
- Die y-Koordinate des 4. Kontrollpunktes.
- tension
- Die Spannung der Kurve definiert die Form. Normalerweise wäre zwischen 0 und 1,0 eine Gerade.
- color
- Die Farbe.
- context
- Der Kontext, der das Pixel-Array enthält.
- w
- Die Breite der Bitmap.
- h
- Die Höhe der Bitmap.
internal static void DrawEllipse(WriteableBitmap bmp, int x1, int y1, int x2, int y2, int color, int thickness)
WriteableBitmapExtensions.DrawEllipse(bmp, x1, y1, x2, y2, color, thickness)
Ein schneller Bresenham-Algorithmus zum Zeichnen von Ellipsen http://homepage.smc.edu/kennedy_john/belipse.pdf x2 muss größer als x1 und y2 muss größer als y1 sein.
- bmp
- Die WriteableBitmap.
- x1
- Die x-Koordinate der linken Seite des begrenzenden Rechtecks.
- y1
- Die y-Koordinate der Oberseite des begrenzenden Rechtecks.
- x2
- Die x-Koordinate der rechten Seite des begrenzenden Rechtecks.
- y2
- Die y-Koordinate der Unterseite des begrenzenden Rechtecks.
- color
- Die Farbe für die Linie.
- thickness
- Die Dicke für die Linie
internal static void DrawEllipseCentered(WriteableBitmap bmp, int xc, int yc, int xr, int yr, Color color)
WriteableBitmapExtensions.DrawEllipseCentered(bmp, xc, yc, xr, yr, color)
Ein Fast Bresenham Type Algorithm For Drawing Ellipses http://homepage.smc.edu/kennedy_john/belipse.pdf Verwendet eine andere Parameterdarstellung als DrawEllipse ().
- bmp
- Die WriteableBitmap.
- xc
- Die x-Koordinate des Ellipsenzentrums.
- yc
- Die y-Koordinate des Ellipsenzentrums.
- xr
- Der Radius der Ellipse in x-Richtung.
- yr
- Der Radius der Ellipse in y-Richtung.
- color
- Die Farbe für die Linie.
internal static void DrawEllipseCentered(WriteableBitmap bmp, int xc, int yc, int xr, int yr, int color)
WriteableBitmapExtensions.DrawEllipseCentered(bmp, xc, yc, xr, yr, color)
Ein Fast Bresenham Type Algorithm For Drawing Ellipses http://homepage.smc.edu/kennedy_john/belipse.pdf Verwendet eine andere Parameterdarstellung als DrawEllipse ().
- bmp
- Die WriteableBitmap.
- xc
- Die x-Koordinate des Ellipsenzentrums.
- yc
- Die y-Koordinate des Ellipsenzentrums.
- xr
- Der Radius der Ellipse in x-Richtung.
- yr
- Der Radius der Ellipse in y-Richtung.
- color
- Die Farbe für die Linie.
internal static void DrawLine(WriteableBitmap bmp, int x1, int y1, int x2, int y2, int color)
WriteableBitmapExtensions.DrawLine(bmp, x1, y1, x2, y2, color)
Zeichnet eine farbige Linie, indem zwei Punkte mit einem optimierten DDA verbunden werden.
- bmp
- Die WriteableBitmap.
- x1
- Die x-Koordinate des Startpunkts.
- y1
- Die y-Koordinate des Startpunkts.
- x2
- Die x-Koordinate des Endpunktes.
- y2
- Die y-Koordinate des Endpunktes.
- color
- Die Farbe für die Linie.
internal static void DrawLine(BitmapContext context, int pixelWidth, int pixelHeight, int x1, int y1, int x2, int y2, int color)
WriteableBitmapExtensions.DrawLine(context, pixelWidth, pixelHeight, x1, y1, x2, y2, color)
Zeichnet eine farbige Linie, indem man zwei Punkte mit einem optimierten DDA verbindet. Verwendet das Pixel-Array und die Breite direkt für beste Leistung.
- context
- Ein Kontext, der die Pixel als int RGBA-Wert enthält.
- pixelWidth
- Die Breite einer Scanline im Pixel-Array.
- pixelHeight
- Die Höhe der Bitmap.
- x1
- Die x-Koordinate des Startpunkts.
- y1
- Die y-Koordinate des Startpunkts.
- x2
- Die x-Koordinate des Endpunktes.
- y2
- Die y-Koordinate des Endpunktes.
- color
- Die Farbe für die Linie.
internal static void DrawLine(WriteableBitmap bmp, int x1, int y1, int x2, int y2, Color color)
WriteableBitmapExtensions.DrawLine(bmp, x1, y1, x2, y2, color)
Zeichnet eine farbige Linie, indem zwei Punkte mit einem optimierten DDA verbunden werden.
- bmp
- Die WriteableBitmap.
- x1
- Die x-Koordinate des Startpunkts.
- y1
- Die y-Koordinate des Startpunkts.
- x2
- Die x-Koordinate des Endpunktes.
- y2
- Die y-Koordinate des Endpunktes.
- color
- Die Farbe für die Linie.
internal static void DrawLineAa(WriteableBitmap bmp, int x1, int y1, int x2, int y2, Color color)
WriteableBitmapExtensions.DrawLineAa(bmp, x1, y1, x2, y2, color)
Zeichnet eine anti-aliased Linie, mit einer optimierten Version des Gupta-Sproull Algorithmus Von http://nokola.com/blog/post/2010/10/14/Anti-aliased-Lines-And-Optimizing-Code-for-Windows-Phone-7e28093First-Look.aspx Die WriteableBitmap. Die x-Koordinate des Startpunkts. Die y-Koordinate des Startpunkts. Die x-Koordinate des Endpunkts. Die y-Koordinate des Endpunkts. Die Farbe für die Linie.
internal static void DrawLineAa(BitmapContext context, int pixelWidth, int pixelHeight, int x1, int y1, int x2, int y2, int color, bool skipFirstPixel)
WriteableBitmapExtensions.DrawLineAa(context, pixelWidth, pixelHeight, x1, y1, x2, y2, color, skipFirstPixel)
Zeichnet eine anti-aliased Linie, mit einer optimierten Version des Gupta-Sproull Algorithmus von http://nokola.com/blog/post/2010/10/14/Anti-aliased-Lines-And-Optimizing-Code-for-Windows-Phone-7e28093First-Look.aspx Ein Kontext, der die Pixel als int RGBA Wert enthält. Die Breite einer Scanzeile im Pixel-Array. Die Höhe der Bitmap. Die x-Koordinate des Startpunkts. Die y-Koordinate des Startpunkts. Die x-Koordinate des Endpunkts. Die y-Koordinate des Endpunkts. Die Farbe für die Linie.
internal static void DrawLineAa(WriteableBitmap bmp, int x1, int y1, int x2, int y2, int color)
WriteableBitmapExtensions.DrawLineAa(bmp, x1, y1, x2, y2, color)
Zeichnet eine anti-aliased Linie, mit einer optimierten Version des Gupta-Sproull Algorithmus Von http://nokola.com/blog/post/2010/10/14/Anti-aliased-Lines-And-Optimizing-Code-for-Windows-Phone-7e28093First-Look.aspx Die WriteableBitmap. Die x-Koordinate des Startpunkts. Die y-Koordinate des Startpunkts. Die x-Koordinate des Endpunkts. Die y-Koordinate des Endpunkts. Die Farbe für die Linie.
internal static void DrawLineBresenham(WriteableBitmap bmp, int x1, int y1, int x2, int y2, int color)
WriteableBitmapExtensions.DrawLineBresenham(bmp, x1, y1, x2, y2, color)
Zeichnet eine farbige Linie, indem zwei Punkte mit dem Bresenham-Algorithmus verbunden werden.
- bmp
- Die WriteableBitmap.
- x1
- Die x-Koordinate des Startpunkts.
- y1
- Die y-Koordinate des Startpunkts.
- x2
- Die x-Koordinate des Endpunktes.
- y2
- Die y-Koordinate des Endpunktes.
- color
- Die Farbe für die Linie.
internal static void DrawLineBresenham(WriteableBitmap bmp, int x1, int y1, int x2, int y2, Color color)
WriteableBitmapExtensions.DrawLineBresenham(bmp, x1, y1, x2, y2, color)
Zeichnet eine farbige Linie, indem zwei Punkte mit dem Bresenham-Algorithmus verbunden werden.
- bmp
- Die WriteableBitmap.
- x1
- Die x-Koordinate des Startpunkts.
- y1
- Die y-Koordinate des Startpunkts.
- x2
- Die x-Koordinate des Endpunktes.
- y2
- Die y-Koordinate des Endpunktes.
- color
- Die Farbe für die Linie.
internal static void DrawLineDDA(WriteableBitmap bmp, int x1, int y1, int x2, int y2, int color)
WriteableBitmapExtensions.DrawLineDDA(bmp, x1, y1, x2, y2, color)
Zeichnet eine farbige Linie, indem zwei Punkte mit einem DDA-Algorithmus (Digital Differential Analyzer) verbunden werden.
- bmp
- Die WriteableBitmap.
- x1
- Die x-Koordinate des Startpunkts.
- y1
- Die y-Koordinate des Startpunkts.
- x2
- Die x-Koordinate des Endpunktes.
- y2
- Die y-Koordinate des Endpunktes.
- color
- Die Farbe für die Linie.
internal static void DrawLineDDA(WriteableBitmap bmp, int x1, int y1, int x2, int y2, Color color)
WriteableBitmapExtensions.DrawLineDDA(bmp, x1, y1, x2, y2, color)
Zeichnet eine farbige Linie, indem zwei Punkte mit einem DDA-Algorithmus (Digital Differential Analyzer) verbunden werden.
- bmp
- Die WriteableBitmap.
- x1
- Die x-Koordinate des Startpunkts.
- y1
- Die y-Koordinate des Startpunkts.
- x2
- Die x-Koordinate des Endpunktes.
- y2
- Die y-Koordinate des Endpunktes.
- color
- Die Farbe für die Linie.
internal static void DrawPolyline(WriteableBitmap bmp, int[] points, Color color)
WriteableBitmapExtensions.DrawPolyline(bmp, points, color)
Zeichnet eine Polylinie, fügt den ersten Punkt auch am Ende des Arrays hinzu, wenn die Linie geschlossen werden soll.
- bmp
- Die WriteableBitmap.
- points
- Die Punkte der Polylinie in x- und y-Paaren, daher wird das Array als (x1, y1, x2, y2, ..., xn, yn) interpretiert.
- color
- Die Farbe für die Linie.
internal static void DrawPolyline(WriteableBitmap bmp, int[] points, int color)
WriteableBitmapExtensions.DrawPolyline(bmp, points, color)
Zeichnet eine Polylinie, fügt den ersten Punkt auch am Ende des Arrays hinzu, wenn die Linie geschlossen werden soll.
- bmp
- Die WriteableBitmap.
- points
- Die Punkte der Polylinie in x- und y-Paaren, daher wird das Array als (x1, y1, x2, y2, ..., xn, yn) interpretiert.
- color
- Die Farbe für die Linie.
internal static void DrawQuad(WriteableBitmap bmp, int x1, int y1, int x2, int y2, int x3, int y3, int x4, int y4, Color color)
WriteableBitmapExtensions.DrawQuad(bmp, x1, y1, x2, y2, x3, y3, x4, y4, color)
Zeichnet ein Quad.
- bmp
- Die WriteableBitmap.
- x1
- Die x-Koordinate des 1. Punktes.
- y1
- Die y-Koordinate des 1. Punktes.
- x2
- Die x-Koordinate des 2. Punktes.
- y2
- Die y-Koordinate des 2. Punktes.
- x3
- Die x-Koordinate des 3. Punktes.
- y3
- Die y-Koordinate des 3. Punktes.
- x4
- Die x-Koordinate des 4. Punktes.
- y4
- Die y-Koordinate des 4. Punktes.
- color
- Die Farbe.
internal static void DrawQuad(WriteableBitmap bmp, int x1, int y1, int x2, int y2, int x3, int y3, int x4, int y4, int color)
WriteableBitmapExtensions.DrawQuad(bmp, x1, y1, x2, y2, x3, y3, x4, y4, color)
Zeichnet ein Quad.
- bmp
- Die WriteableBitmap.
- x1
- Die x-Koordinate des 1. Punktes.
- y1
- Die y-Koordinate des 1. Punktes.
- x2
- Die x-Koordinate des 2. Punktes.
- y2
- Die y-Koordinate des 2. Punktes.
- x3
- Die x-Koordinate des 3. Punktes.
- y3
- Die y-Koordinate des 3. Punktes.
- x4
- Die x-Koordinate des 4. Punktes.
- y4
- Die y-Koordinate des 4. Punktes.
- color
- Die Farbe.
internal static void DrawRectangle(WriteableBitmap bmp, int x1, int y1, int x2, int y2, int color)
WriteableBitmapExtensions.DrawRectangle(bmp, x1, y1, x2, y2, color)
Zeichnet ein Rechteck. x2 muss größer als x1 und y2 muss größer als y1 sein.
- bmp
- Die WriteableBitmap.
- x1
- Die x-Koordinate der linken Seite des begrenzenden Rechtecks.
- y1
- Die y-Koordinate der Oberseite des begrenzenden Rechtecks.
- x2
- Die x-Koordinate der rechten Seite des begrenzenden Rechtecks.
- y2
- Die y-Koordinate der Unterseite des begrenzenden Rechtecks.
- color
- Die Farbe.
internal static void DrawRectangle(WriteableBitmap bmp, int x1, int y1, int x2, int y2, Color color)
WriteableBitmapExtensions.DrawRectangle(bmp, x1, y1, x2, y2, color)
Zeichnet ein Rechteck. x2 muss größer als x1 und y2 muss größer als y1 sein.
- bmp
- Die WriteableBitmap.
- x1
- Die x-Koordinate der linken Seite des begrenzenden Rechtecks.
- y1
- Die y-Koordinate der Oberseite des begrenzenden Rechtecks.
- x2
- Die x-Koordinate der rechten Seite des begrenzenden Rechtecks.
- y2
- Die y-Koordinate der Unterseite des begrenzenden Rechtecks.
- color
- Die Farbe.
internal static void DrawTriangle(WriteableBitmap bmp, int x1, int y1, int x2, int y2, int x3, int y3, Color color)
WriteableBitmapExtensions.DrawTriangle(bmp, x1, y1, x2, y2, x3, y3, color)
Zeichnet ein Dreieck.
- bmp
- Die WriteableBitmap.
- x1
- Die x-Koordinate des 1. Punktes.
- y1
- Die y-Koordinate des 1. Punktes.
- x2
- Die x-Koordinate des 2. Punktes.
- y2
- Die y-Koordinate des 2. Punktes.
- x3
- Die x-Koordinate des 3. Punktes.
- y3
- Die y-Koordinate des 3. Punktes.
- color
- Die Farbe.
internal static void DrawTriangle(WriteableBitmap bmp, int x1, int y1, int x2, int y2, int x3, int y3, int color)
WriteableBitmapExtensions.DrawTriangle(bmp, x1, y1, x2, y2, x3, y3, color)
Zeichnet ein Dreieck.
- bmp
- Die WriteableBitmap.
- x1
- Die x-Koordinate des 1. Punktes.
- y1
- Die y-Koordinate des 1. Punktes.
- x2
- Die x-Koordinate des 2. Punktes.
- y2
- Die y-Koordinate des 2. Punktes.
- x3
- Die x-Koordinate des 3. Punktes.
- y3
- Die y-Koordinate des 3. Punktes.
- color
- Die Farbe.
public static void DrawWuLine(BitmapContext context, int pixelWidth, int pixelHeight, short X0, short Y0, short X1, short Y1, int sa, int sr, int sg, int sb)
WriteableBitmapExtensions.DrawWuLine(context, pixelWidth, pixelHeight, X0, Y0, X1, Y1, sa, sr, sg, sb)
Zeichnet eine anti-aliased, alpha gemischte, farbige Linie durch die Verbindung von zwei Punkten mit Wus Anti-Aliasing-Algorithmus Verwendet das Pixel-Array und die Breite direkt für beste Leistung.
- context
- Ein Array, das die Pixel als int RGBA-Wert enthält.
- pixelWidth
- Die Breite einer Scanline im Pixel-Array.
- pixelHeight
- Die Höhe der Bitmap.
- X0
- Die x0.
- Y0
- Die y0.
- X1
- Die x1.
- Y1
- Die y1.
- sa
- Alphafarbenkomponente
- sr
- Vormultiplizierte rote Farbkomponente
- sg
- Vormultiplizierte grüne Farbkomponente
- sb
- Vorvervielfachte blaue Farbkomponente
internal static void FillBeziers(WriteableBitmap bmp, int[] points, Color color)
WriteableBitmapExtensions.FillBeziers(bmp, points, color)
Zeichnet eine Reihe von gefüllten, kubischen Beziér-Splines, die jeweils durch Anfangs-, End- und zwei Kontrollpunkte definiert sind. Der Endpunkt der vorherigen Kurve wird als Ausgangspunkt für die nächste verwendet. Die Anfangskurve benötigt daher vier Punkte und die darauffolgende 3 (2 Kontroll- und 1 Endpunkt).
- bmp
- Die WriteableBitmap.
- points
- Die Punkte für die Kurve in x- und y-Paaren, daher wird das Array als (x1, y1, cx1, cy1, cx2, cy2, x2, y2, cx3, cx4 ..., xn, yn) interpretiert.
- color
- Die Farbe für den Spline.
internal static void FillBeziers(WriteableBitmap bmp, int[] points, int color)
WriteableBitmapExtensions.FillBeziers(bmp, points, color)
Zeichnet eine Reihe von gefüllten, kubischen Beziér-Splines, die jeweils durch Anfangs-, End- und zwei Kontrollpunkte definiert sind. Der Endpunkt der vorherigen Kurve wird als Ausgangspunkt für die nächste verwendet. Die Anfangskurve benötigt daher vier Punkte und die darauffolgende 3 (2 Kontroll- und 1 Endpunkt).
- bmp
- Die WriteableBitmap.
- points
- Die Punkte für die Kurve in x- und y-Paaren, daher wird das Array als (x1, y1, cx1, cy1, cx2, cy2, x2, y2, cx3, cx4 ..., xn, yn) interpretiert.
- color
- Die Farbe für den Spline.
internal static void FillCurve(WriteableBitmap bmp, int[] points, float tension, int color)
WriteableBitmapExtensions.FillCurve(bmp, points, tension, color)
Zeichnet einen gefüllten Kardinal-Spline (kubisch), der durch eine Punktsammlung definiert wird.
- bmp
- Die WriteableBitmap.
- points
- Die Punkte für die Kurve in x- und y-Paaren, daher wird das Array als (x1, y1, x2, y2, x3, y3, x4, y4, x1, x2 ..., xn, yn) interpretiert.
- tension
- Die Spannung der Kurve definiert die Form. Normalerweise wäre zwischen 0 und 1,0 eine Gerade.
- color
- Die Farbe für den Spline.
internal static void FillCurve(WriteableBitmap bmp, int[] points, float tension, Color color)
WriteableBitmapExtensions.FillCurve(bmp, points, tension, color)
Zeichnet einen gefüllten Kardinal-Spline (kubisch), der durch eine Punktsammlung definiert wird.
- bmp
- Die WriteableBitmap.
- points
- Die Punkte für die Kurve in x- und y-Paaren, daher wird das Array als (x1, y1, x2, y2, x3, y3, x4, y4, x1, x2 ..., xn, yn) interpretiert.
- tension
- Die Spannung der Kurve definiert die Form. Normalerweise wäre zwischen 0 und 1,0 eine Gerade.
- color
- Die Farbe für den Spline.
internal static void FillCurveClosed(WriteableBitmap bmp, int[] points, float tension, Color color)
WriteableBitmapExtensions.FillCurveClosed(bmp, points, tension, color)
Zeichnet einen gefüllten, geschlossenen Kardinal-Spline (kubisch), der durch eine Punktsammlung definiert wird.
- bmp
- Die WriteableBitmap.
- points
- Die Punkte für die Kurve in x- und y-Paaren, daher wird das Array als (x1, y1, x2, y2, x3, y3, x4, y4, x1, x2 ..., xn, yn) interpretiert.
- tension
- Die Spannung der Kurve definiert die Form. Normalerweise wäre zwischen 0 und 1,0 eine Gerade.
- color
- Die Farbe für den Spline.
internal static void FillCurveClosed(WriteableBitmap bmp, int[] points, float tension, int color)
WriteableBitmapExtensions.FillCurveClosed(bmp, points, tension, color)
Zeichnet einen gefüllten, geschlossenen Kardinal-Spline (kubisch), der durch eine Punktsammlung definiert wird.
- bmp
- Die WriteableBitmap.
- points
- Die Punkte für die Kurve in x- und y-Paaren, daher wird das Array als (x1, y1, x2, y2, x3, y3, x4, y4, x1, x2 ..., xn, yn) interpretiert.
- tension
- Die Spannung der Kurve definiert die Form. Normalerweise wäre zwischen 0 und 1,0 eine Gerade.
- color
- Die Farbe für den Spline.
internal static void FillEllipse(WriteableBitmap bmp, int x1, int y1, int x2, int y2, Color color)
WriteableBitmapExtensions.FillEllipse(bmp, x1, y1, x2, y2, color)
Ein schneller Bresenham-Typ-Algorithmus Für das Zeichnen gefüllter Ellipsen http://homepage.smc.edu/kennedy_john/belipse.pdf x2 muss größer als x1 und y2 muss größer als y1 sein.
- bmp
- Die WriteableBitmap.
- x1
- Die x-Koordinate der linken Seite des begrenzenden Rechtecks.
- y1
- Die y-Koordinate der Oberseite des begrenzenden Rechtecks.
- x2
- Die x-Koordinate der rechten Seite des begrenzenden Rechtecks.
- y2
- Die y-Koordinate der Unterseite des begrenzenden Rechtecks.
- color
- Die Farbe für die Linie.
internal static void FillEllipse(WriteableBitmap bmp, int x1, int y1, int x2, int y2, int color)
WriteableBitmapExtensions.FillEllipse(bmp, x1, y1, x2, y2, color)
Ein schneller Bresenham-Typ-Algorithmus Für das Zeichnen gefüllter Ellipsen http://homepage.smc.edu/kennedy_john/belipse.pdf x2 muss größer als x1 und y2 muss größer als y1 sein.
- bmp
- Die WriteableBitmap.
- x1
- Die x-Koordinate der linken Seite des begrenzenden Rechtecks.
- y1
- Die y-Koordinate der Oberseite des begrenzenden Rechtecks.
- x2
- Die x-Koordinate der rechten Seite des begrenzenden Rechtecks.
- y2
- Die y-Koordinate der Unterseite des begrenzenden Rechtecks.
- color
- Die Farbe für die Linie.
internal static void FillEllipseCentered(WriteableBitmap bmp, int xc, int yc, int xr, int yr, int color)
WriteableBitmapExtensions.FillEllipseCentered(bmp, xc, yc, xr, yr, color)
Ein Fast Bresenham Type Algorithmus Für das Zeichnen gefüllter Ellipsen http://homepage.smc.edu/kennedy_john/belipse.pdf Verwendet eine andere Parameterdarstellung als DrawEllipse ().
- bmp
- Die WriteableBitmap.
- xc
- Die x-Koordinate des Ellipsenzentrums.
- yc
- Die y-Koordinate des Ellipsenzentrums.
- xr
- Der Radius der Ellipse in x-Richtung.
- yr
- Der Radius der Ellipse in y-Richtung.
- color
- Die Farbe für die Linie.
internal static void FillEllipseCentered(WriteableBitmap bmp, int xc, int yc, int xr, int yr, Color color)
WriteableBitmapExtensions.FillEllipseCentered(bmp, xc, yc, xr, yr, color)
Ein Fast Bresenham Type Algorithmus Für das Zeichnen gefüllter Ellipsen http://homepage.smc.edu/kennedy_john/belipse.pdf Verwendet eine andere Parameterdarstellung als DrawEllipse ().
- bmp
- Die WriteableBitmap.
- xc
- Die x-Koordinate des Ellipsenzentrums.
- yc
- Die y-Koordinate des Ellipsenzentrums.
- xr
- Der Radius der Ellipse in x-Richtung.
- yr
- Der Radius der Ellipse in y-Richtung.
- color
- Die Farbe für die Linie.
internal static void FillPolygon(WriteableBitmap bmp, int[] points, Func<int, int, int> colorCb, BlendMode blendMode)
WriteableBitmapExtensions.FillPolygon(bmp, points, colorCb, blendMode)
Zeichnet ein ausgefülltes Polygon und fügt den ersten Punkt auch am Ende des Arrays hinzu, wenn die Linie geschlossen werden soll.
- bmp
- Die WriteableBitmap.
- points
- Die Punkte des Polygons in x- und y-Paaren, daher wird das Array als (x1, y1, x2, y2, ..., xn, yn) interpretiert.
- colorCb
- Die Farbe für die Füllung.
- blendMode
- Standardmäßig ist Alpha
internal static void FillPolygon(WriteableBitmap bmp, int[] points, int color, BlendMode blendMode)
WriteableBitmapExtensions.FillPolygon(bmp, points, color, blendMode)
Zeichnet ein ausgefülltes Polygon und fügt den ersten Punkt auch am Ende des Arrays hinzu, wenn die Linie geschlossen werden soll.
- bmp
- Die WriteableBitmap.
- points
- Die Punkte des Polygons in x- und y-Paaren, daher wird das Array als (x1, y1, x2, y2, ..., xn, yn) interpretiert.
- color
- Die Farbe für die Linie.
- blendMode
- Standardmäßig ist Alpha
internal static void FillPolygon(WriteableBitmap bmp, int[] points, Color color)
WriteableBitmapExtensions.FillPolygon(bmp, points, color)
Zeichnet ein ausgefülltes Polygon und fügt den ersten Punkt auch am Ende des Arrays hinzu, wenn die Linie geschlossen werden soll.
- bmp
- Die WriteableBitmap.
- points
- Die Punkte des Polygons in x- und y-Paaren, daher wird das Array als (x1, y1, x2, y2, ..., xn, yn) interpretiert.
- color
- Die Farbe für die Linie.
internal static void FillQuad(WriteableBitmap bmp, int x1, int y1, int x2, int y2, int x3, int y3, int x4, int y4, int color)
WriteableBitmapExtensions.FillQuad(bmp, x1, y1, x2, y2, x3, y3, x4, y4, color)
Zeichnet ein gefülltes Quad.
- bmp
- Die WriteableBitmap.
- x1
- Die x-Koordinate des 1. Punktes.
- y1
- Die y-Koordinate des 1. Punktes.
- x2
- Die x-Koordinate des 2. Punktes.
- y2
- Die y-Koordinate des 2. Punktes.
- x3
- Die x-Koordinate des 3. Punktes.
- y3
- Die y-Koordinate des 3. Punktes.
- x4
- Die x-Koordinate des 4. Punktes.
- y4
- Die y-Koordinate des 4. Punktes.
- color
- Die Farbe.
internal static void FillQuad(WriteableBitmap bmp, int x1, int y1, int x2, int y2, int x3, int y3, int x4, int y4, Color color)
WriteableBitmapExtensions.FillQuad(bmp, x1, y1, x2, y2, x3, y3, x4, y4, color)
Zeichnet ein gefülltes Quad.
- bmp
- Die WriteableBitmap.
- x1
- Die x-Koordinate des 1. Punktes.
- y1
- Die y-Koordinate des 1. Punktes.
- x2
- Die x-Koordinate des 2. Punktes.
- y2
- Die y-Koordinate des 2. Punktes.
- x3
- Die x-Koordinate des 3. Punktes.
- y3
- Die y-Koordinate des 3. Punktes.
- x4
- Die x-Koordinate des 4. Punktes.
- y4
- Die y-Koordinate des 4. Punktes.
- color
- Die Farbe.
internal static void FillRectangle(WriteableBitmap bmp, int x1, int y1, int x2, int y2, Color color)
WriteableBitmapExtensions.FillRectangle(bmp, x1, y1, x2, y2, color)
Zeichnet ein ausgefülltes Rechteck. x2 muss größer als x1 und y2 muss größer als y1 sein.
- bmp
- Die WriteableBitmap.
- x1
- Die x-Koordinate der linken Seite des begrenzenden Rechtecks.
- y1
- Die y-Koordinate der Oberseite des begrenzenden Rechtecks.
- x2
- Die x-Koordinate der rechten Seite des begrenzenden Rechtecks.
- y2
- Die y-Koordinate der Unterseite des begrenzenden Rechtecks.
- color
- Die Farbe.
internal static void FillRectangle(WriteableBitmap bmp, int x1, int y1, int x2, int y2, int color, BlendMode blendMode)
WriteableBitmapExtensions.FillRectangle(bmp, x1, y1, x2, y2, color, blendMode)
Zeichnet ein ausgefülltes Rechteck. x2 muss größer als x1 und y2 muss größer als y1 sein.
- bmp
- Die WriteableBitmap.
- x1
- Die x-Koordinate der linken Seite des begrenzenden Rechtecks.
- y1
- Die y-Koordinate der Oberseite des begrenzenden Rechtecks.
- x2
- Die x-Koordinate der rechten Seite des begrenzenden Rechtecks.
- y2
- Die y-Koordinate der Unterseite des begrenzenden Rechtecks.
- color
- Die Farbe.
- blendMode
- Der Blend-Modus.
internal static void FillRectangle(WriteableBitmap bmp, int x1, int y1, int x2, int y2, Func<int, int, int> colorCb, BlendMode blendMode)
WriteableBitmapExtensions.FillRectangle(bmp, x1, y1, x2, y2, colorCb, blendMode)
Zeichnet ein ausgefülltes Rechteck. x2 muss größer als x1 und y2 muss größer als y1 sein.
- bmp
- Die WriteableBitmap.
- x1
- Die x-Koordinate der linken Seite des begrenzenden Rechtecks.
- y1
- Die y-Koordinate der Oberseite des begrenzenden Rechtecks.
- x2
- Die x-Koordinate der rechten Seite des begrenzenden Rechtecks.
- y2
- Die y-Koordinate der Unterseite des begrenzenden Rechtecks.
- colorCb
- Die Farbe.
- blendMode
- Der Blend-Modus.
internal static void FillTriangle(WriteableBitmap bmp, int x1, int y1, int x2, int y2, int x3, int y3, int color)
WriteableBitmapExtensions.FillTriangle(bmp, x1, y1, x2, y2, x3, y3, color)
Zeichnet ein ausgefülltes Dreieck.
- bmp
- Die WriteableBitmap.
- x1
- Die x-Koordinate des 1. Punktes.
- y1
- Die y-Koordinate des 1. Punktes.
- x2
- Die x-Koordinate des 2. Punktes.
- y2
- Die y-Koordinate des 2. Punktes.
- x3
- Die x-Koordinate des 3. Punktes.
- y3
- Die y-Koordinate des 3. Punktes.
- color
- Die Farbe.
internal static void FillTriangle(WriteableBitmap bmp, int x1, int y1, int x2, int y2, int x3, int y3, Color color)
WriteableBitmapExtensions.FillTriangle(bmp, x1, y1, x2, y2, x3, y3, color)
Zeichnet ein ausgefülltes Dreieck.
- bmp
- Die WriteableBitmap.
- x1
- Die x-Koordinate des 1. Punktes.
- y1
- Die y-Koordinate des 1. Punktes.
- x2
- Die x-Koordinate des 2. Punktes.
- y2
- Die y-Koordinate des 2. Punktes.
- x3
- Die x-Koordinate des 3. Punktes.
- y3
- Die y-Koordinate des 3. Punktes.
- color
- Die Farbe.
internal static WriteableBitmap Flip(WriteableBitmap bmp, FlipMode flipMode)
result = WriteableBitmapExtensions.Flip(bmp, flipMode)
Flips (reflektiert das Bild) eiter vertikal oder horizontal.
- bmp
- Die WriteableBitmap.
- flipMode
- Der Flip Mode.
Rückgabe: Ein neues WriteableBitmap @, das ist eine gespiegelte Version der Eingabe.
internal static void ForEach(WriteableBitmap bmp, Func<int, int, Color> func)
WriteableBitmapExtensions.ForEach(bmp, func)
Wendet die angegebene Funktion auf alle Pixel der Bitmap an, um deren Farbe festzulegen.
- bmp
- Die WriteableBitmap.
- func
- Die anzuwendende Funktion. Mit den Parametern x, y und einer Farbe als Ergebnis
internal static void ForEach(WriteableBitmap bmp, Func<int, int, Color, Color> func)
WriteableBitmapExtensions.ForEach(bmp, func)
Wendet die angegebene Funktion auf alle Pixel der Bitmap an, um deren Farbe festzulegen.
- bmp
- Die WriteableBitmap.
- func
- Die anzuwendende Funktion mit den Parametern x, y, Ausgangsfarbe und eine Farbe als Ergebnis
internal static WriteableBitmap FromByteArray(WriteableBitmap bmp, byte[] buffer)
result = WriteableBitmapExtensions.FromByteArray(bmp, buffer)
Kopiert alle Farbinformationen aus einem ARGB-Byte-Array in dieses WriteableBitmap.
- bmp
- Die WriteableBitmap.
- buffer
- Der Farbpuffer als Byte-ARGB-Werte.
Rückgabe: Der WriteableBitmap, der als Parameter übergeben wurde.
internal static WriteableBitmap FromByteArray(WriteableBitmap bmp, byte[] buffer, int count)
result = WriteableBitmapExtensions.FromByteArray(bmp, buffer, count)
Kopiert Farbinformationen aus einem ARGB-Byte-Array in dieses WriteableBitmap.
- bmp
- Die WriteableBitmap.
- count
- Die Anzahl der Bytes, die aus dem Puffer zu kopieren sind.
- buffer
- Der Farbpuffer als Byte-ARGB-Werte.
Rückgabe: Der WriteableBitmap, der als Parameter übergeben wurde.
internal static WriteableBitmap FromByteArray(WriteableBitmap bmp, byte[] buffer, int offset, int count)
result = WriteableBitmapExtensions.FromByteArray(bmp, buffer, offset, count)
Kopiert Farbinformationen aus einem ARGB-Byte-Array in dieses WriteableBitmap, beginnend mit einem bestimmten Pufferindex.
- bmp
- Die WriteableBitmap.
- offset
- Der Startindex im Puffer.
- count
- Die Anzahl der Bytes, die aus dem Puffer zu kopieren sind.
- buffer
- Der Farbpuffer als Byte-ARGB-Werte.
Rückgabe: Der WriteableBitmap, der als Parameter übergeben wurde.
internal static WriteableBitmap FromContent(WriteableBitmap bmp, string relativePath)
result = WriteableBitmapExtensions.FromContent(bmp, relativePath)
Laden Sie ein Bild aus den Inhalten der Anwendungen und füllen Sie dieses WriteableBitmap mit ihm.
- bmp
- Die WriteableBitmap.
- relativePath
- Nur der relative Pfad zur Inhaltsdatei.
Rückgabe: Der WriteableBitmap, der als Parameter übergeben wurde.
internal static WriteableBitmap FromResource(WriteableBitmap bmp, string relativePath)
result = WriteableBitmapExtensions.FromResource(bmp, relativePath)
Laden Sie ein Bild aus der Ressourcendatei der Anwendungen und füllen Sie dieses WriteableBitmap mit.
- bmp
- Die WriteableBitmap.
- relativePath
- Nur der relative Pfad zur Ressourcendatei. Der Assemblyname wird automatisch abgerufen.
Rückgabe: Der WriteableBitmap, der als Parameter übergeben wurde.
internal static byte GetBrightness(WriteableBitmap bmp, int x, int y)
result = WriteableBitmapExtensions.GetBrightness(bmp, x, y)
Bekommt die Helligkeit / Leuchtdichte des Pixels an der x, y-Koordinate als Byte.
- bmp
- Die WriteableBitmap.
- x
- Die x-Koordinate des Pixels.
- y
- Die y-Koordinate des Pixels.
Rückgabe: Die Helligkeit des Pixels bei x, y.
internal static Color GetPixel(WriteableBitmap bmp, int x, int y)
result = WriteableBitmapExtensions.GetPixel(bmp, x, y)
Die Farbe des Pixels wird in der x-y-Koordinate als Farbstruktur angezeigt. Für beste Leistung sollte diese Methode nicht in iterativen Echtzeit-Szenarien verwendet werden. Implementieren Sie den Code direkt in einer Schleife.
- bmp
- Die WriteableBitmap.
- x
- Die x-Koordinate des Pixels.
- y
- Die y-Koordinate des Pixels.
Rückgabe: Die Farbe des Pixels bei x, y als Farbstruktur.
internal static int GetPixeli(WriteableBitmap bmp, int x, int y)
result = WriteableBitmapExtensions.GetPixeli(bmp, x, y)
Die Farbe des Pixels wird als Ganzzahl in x, y-Koordinate angezeigt. Für beste Leistung sollte diese Methode nicht in iterativen Echtzeit-Szenarien verwendet werden.
- bmp
- Die WriteableBitmap.
- x
- Die x-Koordinate des Pixels.
- y
- Die y-Koordinate des Pixels.
Rückgabe: Die Farbe des Pixels bei x, y.
internal static WriteableBitmap Invert(WriteableBitmap bmp)
result = WriteableBitmapExtensions.Invert(bmp)
Erstellt eine neue invertierte WriteableBitmap und gibt sie zurück.
- bmp
- Die WriteableBitmap.
Rückgabe: Die neue invertierte WriteableBitmap.
internal static int[] Resize(BitmapContext srcContext, int widthSource, int heightSource, int width, int height, Interpolation interpolation)
result = WriteableBitmapExtensions.Resize(srcContext, widthSource, heightSource, width, height, interpolation)
Erstellt eine neue Bitmap mit geänderter Größe.
- srcContext
- Der Quellkontext.
- widthSource
- Die Breite der Quellpixel.
- heightSource
- Die Höhe der Quellpixel.
- width
- Die neue gewünschte Breite.
- height
- Die neue gewünschte Höhe.
- interpolation
- Die Interpolationsmethode, die verwendet werden sollte.
Rückgabe: Eine neue Bitmap, die eine verkleinerte Version der Eingabe ist.
internal static WriteableBitmap Resize(WriteableBitmap bmp, int width, int height, Interpolation interpolation)
result = WriteableBitmapExtensions.Resize(bmp, width, height, interpolation)
Erstellt eine neue Größe WriteableBitmap.
- bmp
- Die WriteableBitmap.
- width
- Die neue gewünschte Breite.
- height
- Die neue gewünschte Höhe.
- interpolation
- Die Interpolationsmethode, die verwendet werden sollte.
Rückgabe: Eine neue WriteableBitmap @, die eine verkleinerte Version der Eingabe ist.
internal static WriteableBitmap Rotate(WriteableBitmap bmp, int angle)
result = WriteableBitmapExtensions.Rotate(bmp, angle)
Dreht die Bitmap in 90° Schritten im Uhrzeigersinn und gibt eine neue gedrehte WriteableBitmap zurück.
- bmp
- Die WriteableBitmap.
- angle
- Der Winkel beim Degression der Bitmap sollte im Uhrzeigersinn um 90° gedreht werden.
Rückgabe: Ein neues WriteableBitmap @, das eine gedrehte Version des Eingangs ist.
internal static WriteableBitmap RotateFree(WriteableBitmap bmp, double angle, bool crop)
result = WriteableBitmapExtensions.RotateFree(bmp, angle, crop)
Dreht die Bitmap in einem beliebigen Grad gibt eine neue gedreht WriteableBitmap.
- bmp
- Die WriteableBitmap.
- angle
- Willkürwinkel in 360 Grad (positiv = im Uhrzeigersinn).
- crop
- if true: Behalten Sie die Größe, false: Canvas auf neue Größe einstellen
Rückgabe: Ein neues WriteableBitmap @, das eine gedrehte Version des Eingangs ist.
internal static void SetPixel(WriteableBitmap bmp, int x, int y, int color)
WriteableBitmapExtensions.SetPixel(bmp, x, y, color)
Legt die Farbe des Pixels fest. Um die beste Leistung zu erzielen, sollte diese Methode nicht in iterativen Echtzeit-Szenarien verwendet werden. Implementieren Sie den Code direkt in einer Schleife.
- bmp
- Die WriteableBitmap.
- x
- Die x-Koordinate (Zeile).
- y
- Die y-Koordinate (Spalte).
- color
- Die Farbe.
internal static void SetPixel(WriteableBitmap bmp, int x, int y, byte a, Color color)
WriteableBitmapExtensions.SetPixel(bmp, x, y, a, color)
Legt die Farbe des Pixels mit einem zusätzlichen Alphawert fest. Um die beste Leistung zu erzielen, sollte diese Methode nicht in iterativen Echtzeit-Szenarien verwendet werden. Implementieren Sie den Code direkt in einer Schleife.
- bmp
- Die WriteableBitmap.
- x
- Die x-Koordinate (Zeile).
- y
- Die y-Koordinate (Spalte).
- a
- Der Alpha-Wert der Farbe.
- color
- Die Farbe.
internal static void SetPixel(WriteableBitmap bmp, int x, int y, Color color)
WriteableBitmapExtensions.SetPixel(bmp, x, y, color)
Legt die Farbe des Pixels fest. Um die beste Leistung zu erzielen, sollte diese Methode nicht in iterativen Echtzeit-Szenarien verwendet werden. Implementieren Sie den Code direkt in einer Schleife.
- bmp
- Die WriteableBitmap.
- x
- Die x-Koordinate (Zeile).
- y
- Die y-Koordinate (Spalte).
- color
- Die Farbe.
internal static void SetPixel(WriteableBitmap bmp, int x, int y, byte a, byte r, byte g, byte b)
WriteableBitmapExtensions.SetPixel(bmp, x, y, a, r, g, b)
Legt die Farbe des Pixels einschließlich des Alpha-Werts fest. Um die beste Leistung zu erzielen, sollte diese Methode nicht in iterativen Echtzeit-Szenarien verwendet werden. Implementieren Sie den Code direkt in einer Schleife.
- bmp
- Die WriteableBitmap.
- x
- Die x-Koordinate (Zeile).
- y
- Die y-Koordinate (Spalte).
- a
- Der Alpha-Wert der Farbe.
- r
- Der rote Wert der Farbe.
- g
- Der grüne Wert der Farbe.
- b
- Der blaue Wert der Farbe.
internal static void SetPixel(WriteableBitmap bmp, int x, int y, byte r, byte g, byte b)
WriteableBitmapExtensions.SetPixel(bmp, x, y, r, g, b)
Legt die Farbe des Pixels fest. Um die beste Leistung zu erzielen, sollte diese Methode nicht in iterativen Echtzeit-Szenarien verwendet werden. Implementieren Sie den Code direkt in einer Schleife.
- bmp
- Die WriteableBitmap.
- x
- Die x-Koordinate (Zeile).
- y
- Die y-Koordinate (Spalte).
- r
- Der rote Wert der Farbe.
- g
- Der grüne Wert der Farbe.
- b
- Der blaue Wert der Farbe.
internal static void SetPixeli(WriteableBitmap bmp, int index, byte r, byte g, byte b)
WriteableBitmapExtensions.SetPixeli(bmp, index, r, g, b)
Legt die Farbe des Pixels mit einem vorberechneten Index fest (schneller), um die beste Leistung zu erzielen, sollte diese Methode nicht in iterativen Echtzeit-Szenarien verwendet werden, sondern Implementieren Sie den Code direkt in einer Schleife.
- bmp
- Die WriteableBitmap.
- index
- Der Koordinatenindex.
- r
- Der rote Wert der Farbe.
- g
- Der grüne Wert der Farbe.
- b
- Der blaue Wert der Farbe.
internal static void SetPixeli(WriteableBitmap bmp, int index, byte a, Color color)
WriteableBitmapExtensions.SetPixeli(bmp, index, a, color)
Legt die Farbe des Pixels mit einem zusätzlichen Alpha-Wert und einem vorberechneten Index (schneller) fest. Um die beste Leistung zu erzielen, sollte diese Methode nicht in iterativen Echtzeit-Szenarien verwendet werden. Implementieren Sie den Code direkt in einer Schleife.
- bmp
- Die WriteableBitmap.
- index
- Der Koordinatenindex.
- a
- Der Alpha-Wert der Farbe.
- color
- Die Farbe.
internal static void SetPixeli(WriteableBitmap bmp, int index, byte a, byte r, byte g, byte b)
WriteableBitmapExtensions.SetPixeli(bmp, index, a, r, g, b)
Legt die Farbe des Pixels einschließlich des Alpha-Werts unter Verwendung eines vorberechneten Index (schneller) fest. Für eine optimale Leistung sollte diese Methode nicht in iterativen Echtzeit-Szenarien verwendet werden.
- bmp
- Die WriteableBitmap.
- index
- Der Koordinatenindex.
- a
- Der Alpha-Wert der Farbe.
- r
- Der rote Wert der Farbe.
- g
- Der grüne Wert der Farbe.
- b
- Der blaue Wert der Farbe.
internal static void SetPixeli(WriteableBitmap bmp, int index, Color color)
WriteableBitmapExtensions.SetPixeli(bmp, index, color)
Legt die Farbe des Pixels mit einem vorberechneten Index fest (schneller), um die beste Leistung zu erzielen, sollte diese Methode nicht in iterativen Echtzeit-Szenarien verwendet werden, sondern Implementieren Sie den Code direkt in einer Schleife.
- bmp
- Die WriteableBitmap.
- index
- Der Koordinatenindex.
- color
- Die Farbe.
internal static void SetPixeli(WriteableBitmap bmp, int index, int color)
WriteableBitmapExtensions.SetPixeli(bmp, index, color)
Legt die Farbe des Pixels mit einem vorberechneten Index fest (schneller), um die beste Leistung zu erzielen, sollte diese Methode nicht in iterativen Echtzeit-Szenarien verwendet werden, sondern Implementieren Sie den Code direkt in einer Schleife.
- bmp
- Die WriteableBitmap.
- index
- Der Koordinatenindex.
- color
- Die Farbe.
internal static byte[] ToByteArray(WriteableBitmap bmp, int count)
result = WriteableBitmapExtensions.ToByteArray(bmp, count)
Kopiert die Pixel aus dem WriteableBitmap in ein ARGB-Byte-Array.
- bmp
- Die WriteableBitmap.
- count
- Die Anzahl der zu kopierenden Pixel.
Rückgabe: Der Farbpuffer als Byte-ARGB-Werte.
internal static byte[] ToByteArray(WriteableBitmap bmp)
result = WriteableBitmapExtensions.ToByteArray(bmp)
Kopiert alle Pixel aus dem WriteableBitmap in ein ARGB-Byte-Array.
- bmp
- Die WriteableBitmap.
Rückgabe: Der Farbpuffer als Byte-ARGB-Werte.
internal static byte[] ToByteArray(WriteableBitmap bmp, int offset, int count)
result = WriteableBitmapExtensions.ToByteArray(bmp, offset, count)
Kopiert die Pixel aus dem WriteableBitmap in ein ARGB-Byte-Array, das mit einem bestimmten Pixel-Index beginnt.
- bmp
- Die WriteableBitmap.
- offset
- Der Start-Pixel-Index.
- count
- Die Anzahl der zu kopierenden Pixel, -1 für alle
Rückgabe: Der Farbpuffer als Byte-ARGB-Werte.
internal static void WriteTga(WriteableBitmap bmp, Stream destination)
WriteableBitmapExtensions.WriteTga(bmp, destination)
Schreibt das WriteableBitmap als TGA-Bild in einen Stream. Mit Erlaubnis von Nokola verwendet: http://nokola.com/blog/post/2010/01/21/Quick-and-Dirty-Output-of-WriteableBitmap-as-TGA-Image.aspx
- bmp
- Die WriteableBitmap.
- destination
- Bestimmungsstrom.
Felder
private const byte INSIDE
value = WriteableBitmapExtensions.INSIDE
Bitfields verwendet, um den Raum in 9 Regionsteile zu partitionieren
internal static int[] KernelGaussianBlur3x3
value = WriteableBitmapExtensions.KernelGaussianBlur3x3
Gaußscher Unschärfekern mit der Größe 3x3
internal static int[] KernelGaussianBlur5x5
value = WriteableBitmapExtensions.KernelGaussianBlur5x5
Gaußscher Unschärfekern mit der Größe 5x5
internal static int[] KernelSharpen3x3
value = WriteableBitmapExtensions.KernelSharpen3x3
Scharfer Kernel mit der Größe 3x3