Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (GNU/Linux, *NIX, *BSD und Co) » C++ Newbie: bmp in array laden

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
03.04.2008, 14:39 Uhr
KOR



hi,
ich bin relativ neu in c++. Ich habe eine bmp datei. Diese möchte ich in mein program einlesen. aund am ende ein 2d array haben was für graustufen so aussehen könnte
[255,200,200,240,...
10,120,...
...]
zb vector<vector<int>> Farbwerttabelle;
graustufen würde mir erstmal vollkommen ausreichen. Ich habe im internet schon ein bisschen gesucht leider bekomme ich bei den meisten codes nur errormessages weil sie zum beispiel die windows.h brauchen. außerdem lesen die nur immer den header ein.


Ich benutze openSuse mit kdevelop.
vielen dank für eure hilfe

Dieser Post wurde am 03.04.2008 um 14:59 Uhr von KOR editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
03.04.2008, 19:39 Uhr
stephanw
localhorst


Geht auch Qt ?

Qt hast Du mit dabei und das liegt wahrscheinlich in /usr/lib/qt3 oder /usr/lib/qt4 .

Mal ein Beispiel für Qt 3 :


C++:

// g++ -I/usr/lib/qt3/include -L/usr/lib/qt3/lib -lqt-mt yourCppFile.cpp

#include <qimage.h>

int main()
{
  QImage img;
  img.load("image.bmp");
  // ...
}


--
Reden ist Schweigen und Silber ist Gold.

Dieser Post wurde am 03.04.2008 um 19:46 Uhr von stephanw editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
07.04.2008, 19:51 Uhr
KOR



ich habe mal in der doku gestöbert von Qimage aber da habe ich nicht gefunden was mir ne matrix erstellt. Kannst du mir mal schreiben wie du das machen würdest mit Qimage.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
07.04.2008, 22:00 Uhr
0xdeadbeef
Gott
(Operator)


QImage hat Methoden width(), height() und pixel(int, int), die dich darauf zugreifen lassen. QImage::pixel gibt einen QRgb-Wert zurück, das ist ein typedef auf einen 32 bit unsigned integer, in dem der ARGB-Wert in der Form AARRGGBB gespeichert ist - die einzelnen Farbwerte kriegst du dann mit bitshift-Operationen und -Masken raus - oder, besser, mit den entsprechenden Qt-Funktionen.

C++:
// Header nach Qt4-Bezeichnung, in Qt3 wahrscheinlich qimage.h und qcolor.h
#include <QColor>
#include <QImage>

Qimage img;

// ...

// Achte darauf, dass der erste Parameter kleiner als img.width() und
// der zweite kleiner als img.height() ist
QRgb farbwert = img.pixel(10, 20);

std::cout << "img hat an (10, 20) den Grünwert " << qGreen(farbwert) << std::endl;


--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra

Dieser Post wurde am 07.04.2008 um 22:02 Uhr von 0xdeadbeef editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (GNU/Linux, *NIX, *BSD und Co) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: