Klassen DataBuffer - Methode um Array in eine Bank zu schreiben

fever3

Mitglied
Hallo zusammen,

ich möchte in einer Java-Oberfläche ein Bild anzeigen.
Die Daten für das Bild (Grauwerte) erhalte ich nur Spaltenweiße. Deshalb möchte ich die Spalten nacheinander in einen Databuffer schreiben, der am Ende das komplette Bild enthält.

Leider kann ich für die Klasse DataBuffer (im speziellen DataBufferUShort) keine Methode finden, die ein short[]-Array einer Bank des DataBuffers hinzufügt.
Muss ich jedes Element, das ich in den DataBuffer schreiben möchte einzeln schreiben?
Oder gibt es Möglichkeiten komplette Array's hinzuzufügen?
Oder findet ihr die ganze Idee aus einem DataBufferUShort ein BufferedImage zu bauen schlecht? Wenn ja, was wäre ein besseres vorgehen?

Vielen Dank für Eure Unterstützung.

Mit freundlichen Grüßen
fever
 
Also ich würde einen CharBuffer nehmen, und das Array als Chars einlesen. Dann kann man dem Buffer einfach einen String rüberschieben.
Da Du aber sicherlich nicht ohne Grund diesen Buffer und Short gewählt hast, wird das nicht so einfach sein. (Es sei denn Du castest Dein Array in einen Char-Puffer und übergibst es dann)
 
Ich bekomme 8Bit unsigned Grauwerte.
Da es in Java kein unsigned 8bit-Datentyp gibt, hatte ich mich für UShort entschieden.
Vom Datenbereich her wäre aber natürlich auch 'char' vorstellbar.

Worauf muss ich achten, wenn ich die unsigned 8Bit-Werte in ein char umwandle?

Gibt es keine Möglichkeit (außer Element für Element) ein short[] einem DataBufferUShort hinzuzufügen?
Ich dachte diese wären eigentlich für solche Aufgaben gemacht:
"This class exists to wrap one or more data arrays. Each data array in the DataBuffer is referred to as a bank. "
Link zur Doku

Vielen Dank im Voraus für die Hilfe.
fever
 

Zurück
Oben