Einzelnen Beitrag anzeigen

Benutzerbild von Fussball-Robby
Fussball-Robby

Registriert seit: 22. Okt 2007
Ort: Nähe Köln
1.063 Beiträge
 
Delphi 7 Enterprise
 
#1

In Koordinatensystem auf Punkt "zuzoomen"

  Alt 16. Okt 2010, 22:37
Hey,
ich programmiere gerade ein dynamisches Koordinatensystem zur Darstellung von Funktionsgraphen. Man soll auch zoomen können. Das Fenster ist begrenzt durch einen Start-/Endwert von X bzw. Y (sprich: X-Werte gehen von StartX bis EndX, y-Werte von StartY bis EndY).
Das Zoomen ohne Verschieben des Koordinatenursprungs ist kein Problem, dazu versehe ich einfach alle 4 Grenzwerte mit einem Faktor, beispielsweise 1,1.

Nun will ich aber auf einen Punkt "zuzoomen". Wenn man also die Maus auf eine bestimmte Stelle des Graphen hält und hochscrollt, soll das Fenster sich nach und auf diesen Punkt zentrieren. Die 4 Grenzwerte StartX, EndX, StartY und EndY müssen also verschieden verändert werden. Aber wie? Koordinaten des Cursors sind natürlich bekannt. Hat jemand Ideen?

[Edit]Habs selbst gelöst. Musste für den x-Zoom beispielsweise die relative x-Position (also in Prozent) ausrechnen. Die linke Grenze wird dann um diese "X" Prozent größer, die rechte Grenze um (1-X) Prozent kleiner. Grüße

[Edit2] Igrendwie will das doch noch nicht so recht.. Denn wenn eine Grenze bei 0 ist, bringt eine prozentuale Veränderung nichts mehr.. Ich probiere gerade eigentlich nur rum. Ideen sind immer noch willkommen!
Robert L.
Der folgende Satz ist richtig!
Der vorherige Satz ist falsch!

Paradox

Geändert von Fussball-Robby (16. Okt 2010 um 23:19 Uhr)
  Mit Zitat antworten Zitat