PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : FLTK - Skalierte Bilder



Blaster
15-05-2006, 14:55
Hallo,

ich habe ein Problem mit FLTK.
Mit " fl_draw_image(image, 0, 0, xsize, ysize );" kann man prima Bilder ausgeben lassen, nur wie kann ich diese Bilder skalieren bzw. zoomen.
Mein Fenster lässt sich wunderbar in der Größe verändern und ich möchte gern, dass sich mein dargestelltes Bild ebenfalls der Fenstergröße anpasst oder zumindest per Lupe vergrößert darstellbar ist.

Ich hoffe jemand hat hier sowas schonmal gemacht.
Vieleicht gibt es ja einen Trick dazu.

...
Und nein - dass hat gar nix mit der FLTK-Version zu tun, die ich verwende.

Gruß
Blaster:confused: :confused:

peschmae
15-05-2006, 20:38
Bei der copy() Methode kannst du ja eine neue Grösse angeben. Allerdings weiss ich nicht wie schlau der algorithmus ist. Eventuell verwendest du da besser was anderes.

MfG Peschmä, der FLTK schon ewig nicht mehr benutzt hat und deshalb für eventuelle Schäden keine Haftung übernimmt

P.S. Und *scnr* - was für eine FLTK-Version hast du? ;)

Blaster
16-05-2006, 11:05
;) Danke für die Antwort. Das mit copy() hab ich gesehen, nur der Nachteil ist, dass das Bild dann auch tatsächlich so groß wird wie angegeben und auch dementsprechend Speicher verbraucht. Aber vermutlich wirds keine
andere Möglichkeit geben... oder vieleicht doch?

Gruß
Blaster

peschmae
16-05-2006, 18:08
Willst du denn da stark reinzoomen? Dann eventuell irgendwie den Bildausschnitt ausfindig machen den man nachher sieht und nur das vergrössern.

Ich denke aber das Bild so wies dann angezeigt wird muss schon irgendwo im Speicher sein. Sonst müsste er das ja immer neu hochrechnen wenn er was neu zeichnet. Ist ja am Ende auch nicht soo ne Sache - 2*1024*768 bytes ~= 2 MB oder so ähnlich.

Wobeis natürlich auch sein kann dass ich mich irre ;)

Eventuell, falls du das deinem Englisch zutraust, fragst du auch mal besser Richtung FLTK newsgroups - ich kenne sonst hier keinen der FLTK benutzt. (Was nicht heisst das das schlecht ist oder so ;))

MfG Peschmä

Blaster
17-05-2006, 12:57
Ja genau, ich möchte in das Bild stark reinzoomen (Lupe). Das ganze soll
so eine Art Paint werden. Eigendlich könnte ich das auch mit OpenGL lösen, indem ich einfach mit der Kamera stärker ranzoome. Hardwarebeschleinigtes
Paint :D, find ich persönlich zu übertrieben...

Nun gut, im Momment sitze ich an der "copy()-Lösung" - und Du hast Recht
damit, dass alles im Speicher sein sollte. Jedesmal einen aktuellen Ausschnitt
berechnen ist langsam (was mit OpenGL kein Problem wär, aber siehe
oben...).

Danke für den Tipp mit den Newsgroups, mal sehen was ich da finde.

Gruß
Blaster