WriteableBitmapExtensions

StockSharp.Xaml.Charting.Rendering.HighSpeedRasterizer.WBX

Sammlung von Draw Extension Methoden für die Silverlight WriteableBitmap Klasse.

Methoden

AlphaBlend
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

AlphaBlendNormalOnPremultiplied
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)
Blit
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.
Blit
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.
Blit
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.
Blit
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.
Clear
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.
Clear
internal static void Clear(WriteableBitmap bmp)
WriteableBitmapExtensions.Clear(bmp)

Füllt das ganze WriteableBitmap mit einer leeren Farbe (0).

bmp
Die WriteableBitmap.
Clone
internal static WriteableBitmap Clone(WriteableBitmap bmp)
result = WriteableBitmapExtensions.Clone(bmp)

Klonen Sie die angegebene WriteableBitmap.

bmp
Die WriteableBitmap.

Rückgabe: Eine Kopie des WriteableBitmap.

CohenSutherlandLineClip
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

ComputeBezierPoints
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.
ComputeOutCode
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.
ComputeSegmentPoints
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.

DrawBezier
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.
DrawBezier
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.
DrawBeziers
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.
DrawBeziers
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.
DrawCurve
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.
DrawCurve
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.
DrawCurveClosed
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.
DrawCurveClosed
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.
DrawCurveSegment
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.
DrawEllipse
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
DrawEllipseCentered
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.
DrawEllipseCentered
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.
DrawLine
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.
DrawLine
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.
DrawLine
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.
DrawLineAa
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.

DrawLineAa
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.

DrawLineAa
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.

DrawLineBresenham
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.
DrawLineBresenham
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.
DrawLineDDA
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.
DrawLineDDA
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.
DrawPolyline
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.
DrawPolyline
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.
DrawQuad
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.
DrawQuad
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.
DrawRectangle
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.
DrawRectangle
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.
DrawTriangle
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.
DrawTriangle
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.
DrawWuLine
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
FillBeziers
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.
FillBeziers
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.
FillCurve
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.
FillCurve
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.
FillCurveClosed
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.
FillCurveClosed
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.
FillEllipse
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.
FillEllipse
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.
FillEllipseCentered
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.
FillEllipseCentered
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.
FillPolygon
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
FillPolygon
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
FillPolygon
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.
FillQuad
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.
FillQuad
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.
FillRectangle
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.
FillRectangle
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.
FillRectangle
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.
FillTriangle
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.
FillTriangle
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.
Flip
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.

ForEach
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
ForEach
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
FromByteArray
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.

FromByteArray
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.

FromByteArray
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.

FromContent
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.

FromResource
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.

GetBrightness
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.

GetPixel
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.

GetPixeli
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.

Invert
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.

Resize
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.

Resize
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.

Rotate
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.

RotateFree
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.

SetPixel
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.
SetPixel
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.
SetPixel
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.
SetPixel
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.
SetPixel
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.
SetPixeli
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.
SetPixeli
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.
SetPixeli
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.
SetPixeli
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.
SetPixeli
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.
ToByteArray
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.

ToByteArray
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.

ToByteArray
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.

WriteTga
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

INSIDE
private const byte INSIDE
value = WriteableBitmapExtensions.INSIDE

Bitfields verwendet, um den Raum in 9 Regionsteile zu partitionieren

KernelGaussianBlur3x3
internal static int[] KernelGaussianBlur3x3
value = WriteableBitmapExtensions.KernelGaussianBlur3x3

Gaußscher Unschärfekern mit der Größe 3x3

KernelGaussianBlur5x5
internal static int[] KernelGaussianBlur5x5
value = WriteableBitmapExtensions.KernelGaussianBlur5x5

Gaußscher Unschärfekern mit der Größe 5x5

KernelSharpen3x3
internal static int[] KernelSharpen3x3
value = WriteableBitmapExtensions.KernelSharpen3x3

Scharfer Kernel mit der Größe 3x3