Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi image vergößern und neu berechnen (https://www.delphipraxis.net/56282-image-vergoessern-und-neu-berechnen.html)

julez 3. Nov 2005 09:20


image vergößern und neu berechnen
 
bracuhe hilfe mit nem image, in dem image stelle ich ein berechnetes ampfelmännchen da, mit hilfe der maus möchte ich in einen markierten bereich hereinzoomen bzw heauszoomen. die soll aber neu berchnet werden so das es nicht nur gestrekt wird.

MFG julez

Der_Unwissende 3. Nov 2005 09:25

Re: image vergößern und neu berechnen
 
Sorry, aber ich versteh noch nicht ganz was genau du möchtest. Wenn du in etwas hereinzoomst, berechnest du eigentlich nur die Verhältnisse neu (= strecken), beim herauszoomen wird dann gestaucht. Was meinst du jetzt genau mit es soll eben nicht nur gestreckt oder gestaucht werden?

Gruß Der Unwissende

Khabarakh 3. Nov 2005 09:27

Re: image vergößern und neu berechnen
 
Wie berechnest du bis jetzt denn die Mandelbrotmenge? Du musst den Algorithmus so umschreiben, dass er mit einem Begrenzungsrechteck rechnet. Dieses setzt du dann beim Zoomen auf die neuen Maße.

[add]@Der_Unwissende: Ich denke, er will die Menge neu berechnen, anstatt das Bild an sich z.B. mit Stretchdraw zu vergrößern. [/add]

julez 3. Nov 2005 09:32

Re: image vergößern und neu berechnen
 
@ Khabarakh

genau das will ich machen, nur weiß ich nicht genau, bzw. eigentlich gar ncht wieich das anstelen soll. ich will das das programm sich durch das rechteck 2 punkte merkt x/y 1 und x/y 2 die sollen gengeüber liegen und diesen bereich soll er nun durch weiter iterationen neu berchen und dann auf der ganen größe ds image anzeigen.

sry für die rechtschreibung aber die tastatur des notebooks ist einfach scheiße


bis jetzt habe ich das:


procedure TGUIMandelbrotmenge.ImageBmpMouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
von := MandelbrotBmp.GetKomplex(X,Y);
end;

procedure TGUIMandelbrotmenge.ImageBmpMouseUp(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
bis := MandelbrotBmp.GetKomplex(X,Y);
MandelbrotBmp.SetBereich(von, bis);
MandelbrotBmp.Berechne;
ImageBmp.Canvas.Draw(0, 0, Mandelbrotbmp.GetBitmap);
end;



nur jetzt berchnet er das ganze image neu und nicht den ausschnitt, und er gibt auch nur den alten ausschnitt im image aus.

Khabarakh 3. Nov 2005 09:43

Re: image vergößern und neu berechnen
 
Wie gesagt, mit welchem Code berechnest du bisher die Mandelbrotmenge? Die Koordinaten musst du auf jeden Fall als globale Variablen (bzw. als Felder im private-Teil deiner Form) deklarieren und bei Programmstart (z.B. im FormCreate) mit vernünftigen Startwerten füllen.

julez 3. Nov 2005 09:53

Re: image vergößern und neu berechnen
 
Also, wir haben es jetzt geschafft, beim MouseDown die von position zu setzen. also welche kordinate als erstes setzt wid. anschließend setzen wir beim MouseUp die zweite Koordinate. ich weiß jetzt nur nicht, wi ch dann diesen usshnit vergößere und über das alte Image rüberschreibe.

julez 3. Nov 2005 10:07

Re: image vergößern und neu berechnen
 
hat sich alles erledigt, danke für den aufwand, der zoom läuft. noch einwenig feintuning und es sollte alles so sein wie wir es wollten.

thx :!:


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:30 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz