FB18 - Das Forum für Informatik

fb18.de / Bachelorstudieng / PM Praktische Informatik

SE1 - kleines Problem mit Spiegelung

SE1 - kleines Problem mit Spiegelung 2009-01-14 16:28
Anonymer User
Hi Leute. Irgendwie habe ich ein kleines Verständnisproblem bei der Aufgabe 10.3.3 . Da soll man das Bild horizontal spiegeln. Jetzt dachte ich, dass jeder einzelne Bildpunkt im [y][x]_bilddaten Array liegt. Um das also zu spiegeln war meine Idee das ganze erstmal von hinten nach vorne(also verkehrt herum) in ein anderes Array zu spielen und das dann wieder in richtiger Reihenfolge in das alte Array zu überspielen. Jetzt funktioniert das so nicht, weil ich mich bei der größe des neuen übergangsArrays immer verschätze. Ich hätte spontan gedacht, dass es _hoehe * _breite lang sein müsste, doch es kommt leider zu einer exception.

Könnte mir da jemand auf die Sprünge helfen? Verstehe ich das alles komplett falsch oder habe ich lediglich irgendwelche Logikfehler bei der implementierung eingebaut? Wenn alles falsch ist, wäre ich für einen richtigen Ansatz sehr dankbar (wie auch für jeden anderen Tipp).

RE: SE1 - kleines Problem mit Spiegelung 2009-01-14 18:01
Fred
Jetzt funktioniert das so nicht, weil ich mich bei der größe des neuen übergangsArrays immer verschätze. Ich hätte spontan gedacht, dass es _hoehe * _breite lang sein müsste, doch es kommt leider zu einer exception.
Es klingt für mich so, als würdest Du ein 1D-Array anlegegen. Warum nimmst Du nicht auch ein 2D-Array mit den Orginal-Ausdehnungen?

RE: SE1 - kleines Problem mit Spiegelung 2009-01-14 21:40
Anonymer User
Hallo Fred. Danke für deine Hilfestellung, das Problem habe ich gelöst. Ich habe schon ein 2D Array benutzt - mein Fehler war einer von der ganz dümmlichen Sorte: Habe vergessen zu beachten, dass 0-0 der erste Index und das Ende des Hilfsarrays entsprechend array[_hoehe-1][_breite-1] ist. Ich könnte mich gegen die Wand klatschen.

RE: SE1 - kleines Problem mit Spiegelung 2009-01-14 21:45
Fred
Habe vergessen zu beachten, dass 0-0 der erste Index und das Ende des Hilfsarrays entsprechend array[_hoehe-1][_breite-1] ist.
Ah, die guten alten off-by-one-errors. Man wird sie wohl niemals ausmerzen, auch die zusätzlichen Folien scheinen da nicht zu helfen :)