Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi graph in abhängigkeit von der zeit (https://www.delphipraxis.net/75155-graph-abhaengigkeit-von-der-zeit.html)

Andre_Schmidt 15. Aug 2006 10:03


graph in abhängigkeit von der zeit
 
Hallo Leute

ich möchte von einem (phasenmodulierten) signal, also einer cosinusfunktion einen graph in abhängigkeit von der zeit zeichnen.
wie könnte ich das realisieren? hab da noch nichts gefunden.

hoffe es kann mir jemand ein wenig auf die sprünge helfen.

Nikolas 15. Aug 2006 10:24

Re: graph in abhängigkeit von der zeit
 
Wo liegt denn dein Problem? In der Funktion oder im Zeichnen?
Fürs zeichnen bräuchtest du eine TTImer-Komponente in der du zeichnen lässt.

Der_Unwissende 15. Aug 2006 11:05

Re: graph in abhängigkeit von der zeit
 
Hi,
woher kommt denn dein Signal? Also ich meine jetzt nur die Schnittstelle, über die du es einliesst.
Es gibt hier zwei Möglichkeiten, die unterschiedliche Ansätze mit sich bringen, der Weg von Toxman bietet sich natürlich an, wenn du die Daten selbst abholen musst. Hast du also eine asynchrone Kommunikation, so kannst du mit dem TTimer Objekt einen Timer erstellen. Dieser führt in einem gewissen Intervall eine beliebige Funktion aus.
Hast du hingegen eine Benachrichtigung (z.B. eine Callback-Methode), die automatisch aufgerufen wird, musst hier nur noch für das Zeichnen des Graphen sorgen.

Das Zeichnen kannst du am leichtesten mit dem TChart Objekt realisieren. Dies ist eine Komponente die zumindest in den nicht persönlichen Versionen beiliegen sollte. Seit welcher Version und wie es mit den Personals aussieht kann ich nicht sagen. Jedenfalls findet man auch eine freie Version zum Download (die dann aber beim Start auf ihren Hersteller hinweist). Solltest du die Komponente nicht finden (liegt im Tab Zusätzlich, so ein Tortendiagramm in Rot, Blau, Gelb, Grün), lohnt es sich auf jeden Fall mal die Testversion auszuprobieren.
Die Komponente ist sehr praktisch (und sehr Umfangreich). Hier alles zu erklären würde etwas dauern, zum Glück ist sie in vielem Selbsterklärend. Was sie eigentlich macht ist, Charts zu zeichnen. Der klare Vorteil ist, dass sie nur dafür gemacht wurde. Du kannst sehr einfach ein Diagramm deinen Bedürfnissen anpassen. Es wird autom. skaliert, du kannst eine Logarithmische oder halblogarithmische Darstellung wählen, Legenden verwenden, Mehrachsig arbeiten (z.B. einmal linear und einmal log. aufgetragen), ....
Was du für dein Diagramm tun müsstest ist eigentlich nur eine TChartSeries hinzufügen. Dies ist einfach der Diagrammtyp. Bei einer Cosinusfunktion wird sich sicherlich kein Balkendigramm anbieten. Hast du eine Series eingefügt, kannst du nun im Programm einfach mittels addXY(X, Y) einen Wert diesem Diagram (der Series) hinzufügen. Das TChart Objekt kümmert sich um das Zeichnen und skalieren der Anzeige.

Sicherlich kannst du das auch per Hand mit einer Bitmap machen, aber der Aufwand wäre hier doch erheblich höher (und würde sich imho kaum lohnen).

Gruß Der Unwissende


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