[gelöst] QPixmap verschluckt sich an einem Bild buffer

Alles rund um die Programmierung mit Qt
Antworten
Vrenn
Beiträge: 28
Registriert: 17. Oktober 2005 10:16

[gelöst] QPixmap verschluckt sich an einem Bild buffer

Beitrag von Vrenn »

Hallo,

Zu meinem Problem: Ich versuche einen gegebenen Bildbuffer in ein QPixmap zu laden und anzuzeigen. Doch irgendwie erkennt QPixmap nicht, was es da verdauen soll. Was genau braucht QPixmap jetzt um das Bild zu "erkennen"?

Code: Alles auswählen

bload = tempsmallimagedata->loadFromData ( (const uchar*)((const void**)(smalldicomimage->getOutputData ( 0, i))), smalldicomimage->getOutputDataSize() );
Nähere Informationen zu getOutputdata.
Im Moment bekomme ich nur bunte Flecken und QPixmap::convertFromImage: Cannot convert a null image

Wenn es an dem smalldicomimage-Objekt liegt, was muss ich dann von ihm verlangen?

Danke für jede Hilfe, jeden Versuch und jeden Schuss ins Blaue.
Zuletzt geändert von Vrenn am 6. November 2005 14:47, insgesamt 1-mal geändert.
lepsai
Beiträge: 573
Registriert: 14. September 2004 21:33
Wohnort: Berlin
Kontaktdaten:

Beitrag von lepsai »

Probier mal:

bload = tempsmallimagedata->loadFromData ( (const char**)smalldicomimage->getOutputData( 0, i) );

Aber ich denke, dass das nicht funktionieren wird. Schon der Ansatz. Wie der Speicher beim dieser DicomImage Klasse aussieht, weiss keine Sau...
Bzw. ist schwer nachvollziehbar, was man tun soll, um an die Pixelwerte ranzukommen. Wenn du es aber schaffst, solltest du zuerst ein QImage erstellen und mit diesem weiterarbeiten...
Vrenn
Beiträge: 28
Registriert: 17. Oktober 2005 10:16

Beitrag von Vrenn »

Leider, gcc sagt, immer error: no matching function for call to `QPixmap::loadFromData(...
Schon 3 Versionen versucht, die obrige ist die einzige die durch-compiled.
QImage: gute Idee, ich geb den Pixelkram aber gleich an eine Listbox weiter, soll mal nur eine Vorschau sein (wenigstens das sollte mal funktionieren).
Vrenn
Beiträge: 28
Registriert: 17. Oktober 2005 10:16

Lösung gefunden

Beitrag von Vrenn »

Lang gesucht und kaum optimiert, da wahrscheinlich nur auf 8 bit begrenzt und auf qt3 geschrieben. Aber ohne die "Optimiererzeile" gehts :-)

http://forum.dcmtk.org/viewtopic.php?t= ... outputdata
Für alle die es auch mal mit dcmtk versuchen wollen...

Danke euch.
Antworten