Übungsblatt 1
Moderator: Graphische Datenverarbeitung 1
-
- Windoof-User
- Beiträge: 39
- Registriert: 1. Okt 2008 09:28
Übungsblatt 1
Das 1. Übungsblatt und alle notwendigen Unterlagen findet ihr jetzt auf der Vorlesungs-Homepage http://www.gris.informatik.tu-darmstadt ... sele/GDV1/.
Bei Fragen zum Einlesen/Ausgeben der Daten oder Handling der Programmierumgebung postet bitte hier ins Forum. Wir werden versuchen, alles so schnell wie möglich zu beantworten.
Viele Grüße,
Ronny
Bei Fragen zum Einlesen/Ausgeben der Daten oder Handling der Programmierumgebung postet bitte hier ins Forum. Wir werden versuchen, alles so schnell wie möglich zu beantworten.
Viele Grüße,
Ronny
Re: Übungsblatt 1
Hallo,
ich habe mir die sache mal angeschaut und versucht ein Bild mit pixbuf zu laden.
Jedoch erhalte ich folgenden Fehler. Konnte (bisher) mit googlen nichts erreichen.
Hat das jemand auch? Oder gibt's ne Lösung?
gruß Jochen
ich habe mir die sache mal angeschaut und versucht ein Bild mit pixbuf zu laden.
Code: Alles auswählen
Glib::RefPtr<Gdk::Pixbuf> picture;
std::string path = picturePath+filenames[0];
picture = Gdk::Pixbuf::create_from_file(path.c_str());
//mit filenames[0] ohne den picturePath davor (wie in den kommentaren) wurde die Datei nicht gefunden
Code: Alles auswählen
(GDVPraktikum1:2086): glibmm-CRITICAL **:
unhandled exception (type Glib::Error) in signal handler:
domain: gdk-pixbuf-error-quark
code : 3
what : Das Format der Bilddatei ?/Users/.../Fire Extinguisher/(1).jpg? konnte nicht erkannt werden
gruß Jochen
- Maradatscha
- Computerversteher
- Beiträge: 353
- Registriert: 2. Okt 2006 18:53
Re: Übungsblatt 1
Komplettupdate:
Ich habe Ubuntu auf einer VirtualBox installiert und damit geht es jetzt. Ich denke ich werde einfach darin arbeiten.
mein tipp wäre dass dir vielleicht die jpg tools in deiner Glib fehlen
vor dem kompilieren der Glib musst du dazu die jpgtools installiert haben. schau mal ob dir das was hilft
edit:
verdammt jetzt bekomme ich den gleichen Fehler! Aber nur wenn ich das Fileöffnen in der scanner.cc mache. Wenn ich sie direkt in Application.cc öffne bekomme ich den Fehler nicht...
mal schauen ob ich das rausbekomme.
edit2:
hat sonst noch wer diesen Fehler? Wenn nicht dann hat das was mit unseren macs zu tun... kann sich mal jemand äußern bitte?
edit3:
ich denke das liegt an unserer installation von gdk-pixbuf.
bin grad dran denke das könnte daran liegen, dass gdk (gtk+ oder gtk+2) und die jpg pakete in der falschen reihenfolge kompiliert wurden
edit4: es liegt wohl wirklich an der OSX installation die wir hier haben. Ich schau mal weiter
Ich habe Ubuntu auf einer VirtualBox installiert und damit geht es jetzt. Ich denke ich werde einfach darin arbeiten.
mein tipp wäre dass dir vielleicht die jpg tools in deiner Glib fehlen
vor dem kompilieren der Glib musst du dazu die jpgtools installiert haben. schau mal ob dir das was hilft
edit:
verdammt jetzt bekomme ich den gleichen Fehler! Aber nur wenn ich das Fileöffnen in der scanner.cc mache. Wenn ich sie direkt in Application.cc öffne bekomme ich den Fehler nicht...
mal schauen ob ich das rausbekomme.
edit2:
hat sonst noch wer diesen Fehler? Wenn nicht dann hat das was mit unseren macs zu tun... kann sich mal jemand äußern bitte?
edit3:
ich denke das liegt an unserer installation von gdk-pixbuf.
bin grad dran denke das könnte daran liegen, dass gdk (gtk+ oder gtk+2) und die jpg pakete in der falschen reihenfolge kompiliert wurden
edit4: es liegt wohl wirklich an der OSX installation die wir hier haben. Ich schau mal weiter
Re: Übungsblatt 1
moin,
ich hab's auch aufgegeben.
nach studenlangem package neu installieren und anders installieren und lib's kopieren und ersetzen und hier und da
... werd ich wohl die sache auf meiner xp VM installieren..
ich hab's auch aufgegeben.
nach studenlangem package neu installieren und anders installieren und lib's kopieren und ersetzen und hier und da

... werd ich wohl die sache auf meiner xp VM installieren..
Fehler in Scanner.cc ?
In der Scanner.cc steht als beispiel, dass man um den ersten Pixel der zweiten Zeile zu ermitteln einfach nur mit der Bildbreite multiplizieren müsste. Fehlen hier nicht noch die Farbkanäle? Sprich, Pixel (1,0) liegt bei Breite*3 im array?
+++++++++[->+++++++++>+>+>+<<<<]>+.>[-<->]<----.-.>>[-<<+>>]<<+.-----.---.>>>[-<<<+>>>]<<<+++.-------------.
Re: Fehler in Scanner.cc ?
Du hast natürlich Recht.RedNifre hat geschrieben:In der Scanner.cc steht als beispiel, dass man um den ersten Pixel der zweiten Zeile zu ermitteln einfach nur mit der Bildbreite multiplizieren müsste. Fehlen hier nicht noch die Farbkanäle? Sprich, Pixel (1,0) liegt bei Breite*3 im array?
Da ist mit tatsächlich ein Fehler unterlaufen

Re: Übungsblatt 1
Dürfen wir eigentlich auch die scanner.h bearbeiten und zb. Hilfsmethoden einbauen oder muss das alles in die .cc?
Re: Übungsblatt 1
Natürlich dürft ihr das. Wer sollte das euch verbieten? Ihr könnt im Grunde denn kompletten Code umkrempeln. Wenn ihr dabei aber auf völlig andere Bibliotheken umsteigt, können wir nurnoch bedingt Support bieten.banshee hat geschrieben:Dürfen wir eigentlich auch die scanner.h bearbeiten und zb. Hilfsmethoden einbauen oder muss das alles in die .cc?
Re: Übungsblatt 1
Beim Versuch ein Bild zu laden, stürzt das Programm ab:
Dies geschieht in folgender Zeile:(main.exe:2268): glibmm-CRITICAL **:
unhandled exception (type Glib::Error) in signal handler:
domain: g-file-error-quark
code : 4
what : Datei »(1).jpg« konnte nicht geöffnet werden: No such file or directory
Code: Alles auswählen
picture = Gdk::Pixbuf::create_from_file(filenames[i].c_str()); //loading a picture
Gäbe es die letzte Minute nicht,
so würde niemals etwas fertig.
- Mark Twain
so würde niemals etwas fertig.
- Mark Twain
Re: Übungsblatt 1
Hi,
ist ganz klar..
in filenames[] steht jeweils nur der dateiname.. nicht aber der absolute pfad zur datei.
dieser steht in picture_path oder so ähnlich. jedenfalls auch in der Scanner Klasse vorhanden.
einfach die strings aneinanderhängen.. also etwa:
gruß
ist ganz klar..
in filenames[] steht jeweils nur der dateiname.. nicht aber der absolute pfad zur datei.
dieser steht in picture_path oder so ähnlich. jedenfalls auch in der Scanner Klasse vorhanden.
einfach die strings aneinanderhängen.. also etwa:
Code: Alles auswählen
picture = Gdk::Pixbuf::create_from_file(picture_path+filenames[i].c_str());
Re: Übungsblatt 1
Danke, so funktionierts.j0chen hat geschrieben:Hi,
ist ganz klar..
in filenames[] steht jeweils nur der dateiname.. nicht aber der absolute pfad zur datei.
dieser steht in picture_path oder so ähnlich. jedenfalls auch in der Scanner Klasse vorhanden.
einfach die strings aneinanderhängen.. also etwa:grußCode: Alles auswählen
picture = Gdk::Pixbuf::create_from_file(picture_path+filenames[i].c_str());
Aber das hätte man ja auch so in den auskommentierten Code schreiben können, oder?

Gäbe es die letzte Minute nicht,
so würde niemals etwas fertig.
- Mark Twain
so würde niemals etwas fertig.
- Mark Twain
Re: Übungsblatt 1
Das wäre ja auch zu einfach gewesen, oder Martin?
"Copy & Passed"
Wahlspruch der Plagiatoren
Wahlspruch der Plagiatoren
-
- Windoof-User
- Beiträge: 39
- Registriert: 1. Okt 2008 09:28
Re: Übungsblatt 1
Um es noch einmal klar zu stellen:
Die Theorieaufgaben sind nachwievor schriftlich zu Beginn der Vorlesung am 03.11. abzugeben (1 Exemplar pro Gruppe, zusammengeheftet, Namen auf JEDES Blatt).
Die Deadline fuer die Programmieraufgaben ist eine Woche spaeter als urspruenglich geplant, d.h. Montag, 10.11. um 23:59 Uhr (MEZ). Zur Abnahme werden nur Versionen in Betracht gezogen, die bis zu dahin auf dem svn-Server liegen.
Viel Erfolg!
Die Theorieaufgaben sind nachwievor schriftlich zu Beginn der Vorlesung am 03.11. abzugeben (1 Exemplar pro Gruppe, zusammengeheftet, Namen auf JEDES Blatt).
Die Deadline fuer die Programmieraufgaben ist eine Woche spaeter als urspruenglich geplant, d.h. Montag, 10.11. um 23:59 Uhr (MEZ). Zur Abnahme werden nur Versionen in Betracht gezogen, die bis zu dahin auf dem svn-Server liegen.
Viel Erfolg!
Re: Übungsblatt 1
Stichwort Compilezeit:
Braucht der bei euch auch so lange? Bei mir ackert er 5 Minuten (ok, um mir am Ende 6000 Errors und 500 Warnings über fehlende Include-Dateien auszuspucken) - finde ich etwas seltsam, da er auf den Poolrechnern nur 5 Sekunden oder etwas in der Größenordnung braucht.
Ich hab MinGW, Eclipse 3.2.irgendwas mit dazu passendem CDT installiert.
Stichwort Includes:
Wie gesagt, ich bekomme nach wie vor Warnungen über fehlende includes, obwohl ich in den Projektoptionen jetzt schon so gut wie alles includiert habe, was man nur includieren kann.
Interessanterweise kommen in den Warnungen sogar Dateien vor, die *definitiv* in Ordnern liegen, dich ich der Projektoptionen/C++-Compiler/Directories-Liste hinzugefügt habe.
(Btw: *wa-rum* checkt er die Directories nicht rekursiv durch? Echt nervig so, jedes Ördnerchen *einzeln* hinzuzufügen. *grummel*. Oder liegt das an der alten CDT-Version?)
Any ideas? Hat(te) wer das gleiche Problem?
Wir würden's ja wieder auf den Poolrechnern machen, aber da (bereits von jemand anderem genannter Bug hier im Forum) stürzt leider X ab, deshalb dachte ich, ich programmiere mal zu Hause weiter... tja, programmieren kann ich's ja auch, nur leider halt nicht erfolgreich compilieren -.-
Braucht der bei euch auch so lange? Bei mir ackert er 5 Minuten (ok, um mir am Ende 6000 Errors und 500 Warnings über fehlende Include-Dateien auszuspucken) - finde ich etwas seltsam, da er auf den Poolrechnern nur 5 Sekunden oder etwas in der Größenordnung braucht.
Ich hab MinGW, Eclipse 3.2.irgendwas mit dazu passendem CDT installiert.
Stichwort Includes:
Wie gesagt, ich bekomme nach wie vor Warnungen über fehlende includes, obwohl ich in den Projektoptionen jetzt schon so gut wie alles includiert habe, was man nur includieren kann.
Interessanterweise kommen in den Warnungen sogar Dateien vor, die *definitiv* in Ordnern liegen, dich ich der Projektoptionen/C++-Compiler/Directories-Liste hinzugefügt habe.
(Btw: *wa-rum* checkt er die Directories nicht rekursiv durch? Echt nervig so, jedes Ördnerchen *einzeln* hinzuzufügen. *grummel*. Oder liegt das an der alten CDT-Version?)
Any ideas? Hat(te) wer das gleiche Problem?
Wir würden's ja wieder auf den Poolrechnern machen, aber da (bereits von jemand anderem genannter Bug hier im Forum) stürzt leider X ab, deshalb dachte ich, ich programmiere mal zu Hause weiter... tja, programmieren kann ich's ja auch, nur leider halt nicht erfolgreich compilieren -.-
Was Sonnenschein für das schwarze Erdreich ist,
ist wahre Aufklärung für die Verwandten des Erdreichs.
- N.F.S. Grundtvig
ist wahre Aufklärung für die Verwandten des Erdreichs.
- N.F.S. Grundtvig
Re: Übungsblatt 1
Hallo,
deine compile / link errors werden von fehlenden includes / libraries kommen.
du solltest dir die anleitung im andern thread (beispielprogramm unter windows) anschauen.
und vorerst NICHT mit eclipse kompilieren sondern über die console mit mingw32-make all.
Dazu muss das mitgelieferte Makefile im Ordner sein. pkg-config bestimmt dann (wenn du alles korrekt installiert hast) automatisch die nötigen compiler/linker flags.
das hat bei mir problemlos auf anhieb funktioniert.
gruß
deine compile / link errors werden von fehlenden includes / libraries kommen.
du solltest dir die anleitung im andern thread (beispielprogramm unter windows) anschauen.
und vorerst NICHT mit eclipse kompilieren sondern über die console mit mingw32-make all.
Dazu muss das mitgelieferte Makefile im Ordner sein. pkg-config bestimmt dann (wenn du alles korrekt installiert hast) automatisch die nötigen compiler/linker flags.
das hat bei mir problemlos auf anhieb funktioniert.
gruß