Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Dynamisches Koordinatensystem programmieren (https://www.delphipraxis.net/41865-dynamisches-koordinatensystem-programmieren.html)

dragi 9. Mär 2005 21:10


Dynamisches Koordinatensystem programmieren
 
Hallo,

ich brauche mal wieder ein paar Tips bzw Idden von euch denn ich weiss nicht wie ich beginnen soll. Es hapert in der Theorie :)

Also, ich möchte ein Koordinatensystem programmieren das auf der Y-Achse Bar anzeigt und auf der X-Achse die Zeit in Sekunden. Das Problem ist, das man zoomen können muss. Dabei muss dann z.B. auch aus Sekunden irgendwann Millisekunden werden. Ich bin absolut überfragt wie ich da anfangen soll. Ein normales statisches Koordinatensystem ist kein Problem und das zoomen wohl auch nciht...aber das korrekte umrechnen... :(

Bin für jeden Tip dankbar wie man da am besten rangeht.

Vielen Dank

Dragi

Nikolas 9. Mär 2005 21:38

Re: Dynamisches Koordinatensystem programmieren
 
Du hast doch einen Minimal und einen Maximal-Wert der auf der t-Achse dargestellt wird.
Wenn du dann für jeden Pixel den passenden Funktionsterm ausgeben willst, könntest du es so machen:
Delphi-Quellcode:
d: real;
w: integer;

d:= tMax-tMin;
w:= image1.width; // Oder die Länge deines Zeichenbereichs

d:= d/w; // Ein Pixel nach rechts entspricht jetzt d/w Zeiteinheiten nach rechts

for i:=0 to w do
y:= f(i*d+tmin); // f() ist die Funktion die du darstellen willst.
Damit müsstest du was hinbekommen können.

Binärbaum 9. Mär 2005 23:43

Re: Dynamisches Koordinatensystem programmieren
 
Bei einem dynamischen Koordinatensystem gibt es aber auch ein Minimal- und Maximalwert auf der y-Achse. Jetzt muss man nur noch den Funktionswert f in die entsprechende y-Koordinate auf dem Canvas/ Image umrechenen. Das müsste nach folgender Formel gehen:

Delphi-Quellcode:
 Y:= Image1.Heigth - (f(...) -pMin)/ (pMax-pMin) *Image1.Height;
Zur Erklärung:
pMin, pMax ... Minimal- und Maximalwert auf der Y-Achse
f(...) ... Funktionswert der darzustellenden Funktion an der entsprechenden Stelle (siehe Beitrag von Toxman)
Image1.Heigth ... Höhe des Image/ der Zeichenfläche in Pixeln
Y ... zugehörige Y-Koordinate auf der Zeichenfläche


MfG
Binärbaum

dragi 10. Mär 2005 11:43

Re: Dynamisches Koordinatensystem programmieren
 
Vielen Dank für eure Hilfe!

Dann werd ich mal schauen was ich daraus basteln werde :)

Gruss
Dragi


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:52 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