Autor Beitrag
danielf
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1012
Erhaltene Danke: 24

Windows XP
C#, Visual Studio
BeitragVerfasst: Di 15.12.09 09:59 
Hallo,

in der Bitmap-Klasse von System.Drawing gibt es eine Methode GetPixel(x,y). Gibt es eine solche Funktion auch für das WPF-Pendant?

Gefunden habe ich die zwei Varianten GetPixel als System-Aufruf (über eine gdi3.DLL www.codeproject.com/...orPickerControl.aspx) oder den Raw-Datenstrom zu nehmen und daraus wiederum einen Farbwert zu generieren (blogs.microsoft.co.i...mage-processing.aspx).

Nun ja.. nicht die schönsten Möglichkeiten... Alternativen???

mfg Daniel
danielf Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1012
Erhaltene Danke: 24

Windows XP
C#, Visual Studio
BeitragVerfasst: Di 15.12.09 11:57 
Okay ich habe nochmal gesucht und eine Implementierung für die zweite Variante gefunden. Werde dies nun vorerst nehmen.
69.10.233.10/KB/WPF/...r.aspx?display=Print

Es existiert auch eine dritte Möglichkeit: Ein neues Bild mit genau dem Pixel generieren und dann diesen Wert in ein Color umwandeln.

Also das Angebot, eine "schöne" Lösung hier hinzuzufügen, steht noch :)

Gruß Daniel
Kha
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 3803
Erhaltene Danke: 176

Arch Linux
Python, C, C++ (vim)
BeitragVerfasst: Di 15.12.09 17:40 

_________________
>λ=
danielf Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1012
Erhaltene Danke: 24

Windows XP
C#, Visual Studio
BeitragVerfasst: Di 15.12.09 17:46 
Was kann die Klasse was ich bräuchte?

Will doch nur den Farbwert eines Pixels bestimmen... (Lesen nicht schreiben)
Kha
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 3803
Erhaltene Danke: 176

Arch Linux
Python, C, C++ (vim)
BeitragVerfasst: Di 15.12.09 18:59 
Oh, BitmapSource kennt ebenfalls schon CopyPixels :oops: ? Da dein zweiter Link einen etwas komplizierteren Weg gewählt hat, bin ich vom Gegenteil ausgegangen.
WriteableBitmap bietet gegenüber CopyPixels einen direkten Pointer auf die Daten an, was beim Lesen aber wahrscheinlich keinen großen Unterschied machen dürfte. Ich würde mich explizit auf 32-Bit-Bitmaps festlegen und dann entsprechende Extension Methods/eine eigene kleine Wrapper-Klasse schreiben.

_________________
>λ=