AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Darstellung einer Kurve in Delphi

Ein Thema von Hoffi1990 · begonnen am 2. Mär 2008 · letzter Beitrag vom 2. Mär 2008
Antwort Antwort
Hoffi1990

Registriert seit: 2. Mär 2008
3 Beiträge
 
#1

Darstellung einer Kurve in Delphi

  Alt 2. Mär 2008, 13:52
Hi also ich bin ein ziemliche Neuling im Thema delphi und muss von der Schule aus ein programm erstellen du darstellung der gleichmäßig beschleunigten bewegung. wir sollen das erst in einer wertetabelle die werte darstellen un diese dann in ein diagramm übertragen un es soll ein kurve entstehen. alos das v-t und a-t diagramm kriege ich ja noch hin, weil das ja nur lineare funktionen sind, aber bei dem s-t diagramm ist es ja ein kurve und ich habe ehrlich gesagt keine ahnung, wie ich das hinbekomme.

wär echt nett wenn ihr mir helfen könnten es geht um mein abi will mir das nich durch info versauen.
danke schon mal für eure hilfe
mfg Hoffi
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Darstellung einer Kurve in Delphi

  Alt 2. Mär 2008, 13:53
Schau dir mal die TChart-Komponente an.
Markus Kinzler
  Mit Zitat antworten Zitat
Hoffi1990

Registriert seit: 2. Mär 2008
3 Beiträge
 
#3

Re: Darstellung einer Kurve in Delphi

  Alt 2. Mär 2008, 13:59
TChart...hmmm naja kenn ich mich ehrlich gesagt überhaupt nich mit aus wie stell ich das an?
  Mit Zitat antworten Zitat
Looper

Registriert seit: 28. Sep 2007
Ort: Hamburg
131 Beiträge
 
Delphi XE2 Professional
 
#4

Re: Darstellung einer Kurve in Delphi

  Alt 2. Mär 2008, 14:03
Also ich habe auch mal so ein Programm geschrieben und mit TCanvas realisiert. Wenn er dir hilft kannst du dir den Code ja mal anschauen. Der ist aber sicherlich verbesserungsfähig .

mfg Looper
Angehängte Dateien
Dateityp: exe project1_936.exe (425,0 KB, 51x aufgerufen)
Dateityp: pas unit1_192.pas (12,9 KB, 23x aufgerufen)
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.768 Beiträge
 
Delphi 10.4 Sydney
 
#5

Re: Darstellung einer Kurve in Delphi

  Alt 2. Mär 2008, 14:07
Zitat von Hoffi1990:
... alos das v-t und a-t diagramm kriege ich ja noch hin, weil das ja nur lineare funktionen sind, aber bei dem s-t diagramm ist es ja ein kurve und ich habe ehrlich gesagt keine ahnung, wie ich das hinbekomme.
Wo ist denn zeichnerisch der Unterschied, ob Du nun eine lineare Funktion oder eine nichtlineare Funktion
darstellen willst.
Du brauchst doch nur für ein x das y berechnen, schon hast Du die Koordinaten und musst
nur noch einen Punkt dahin malen.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Hoffi1990

Registriert seit: 2. Mär 2008
3 Beiträge
 
#6

Re: Darstellung einer Kurve in Delphi

  Alt 2. Mär 2008, 14:10
gut danke ihr wart echt ne hilfe ich probiers mal falls ich noch fragen hab stell ich sie noch mal
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

Registriert seit: 3. Mär 2006
Ort: Waldbronn
4.303 Beiträge
 
Delphi 2009 Professional
 
#7

Re: Darstellung einer Kurve in Delphi

  Alt 2. Mär 2008, 14:17
Hi Hoffi,
ich würde es folgendermaßen machen:
Und zwar gibst du an in welchen Schritten er die Werte berechnen soll (also bei s-t z.B. einen Definitionsbereich von 10 Sekunden und dann ein Intervall von einer Sekunde).
Und dann berechnest du die Werte für 0, 1, 2 ... 9, 10 Sekunden:
Entweder du speicherst das in einem dynamischen Array, oder du zeichntest du gleich ein.
Dabei ist es von Vorteil den obersten und untersten zu wissen.
Und dann kannst du diese Punkte miteinander verbinden.

Delphi-Quellcode:
Canvas.MoveTo(0, <Höhe für t = 0>);
for i := 1 to <Max> div <Interval> - 1 do
begin
  Canvas.LineTo(i * <Breite>, <Höhe für t = i * Interval>);
end;
Ich hoffe damit kommst du zurecht
Max wäre 10 sein (s.o.) und Interval wäre 1.
Das "div" macht eine Integerdivision: Teilt also zwei Integer und schneidet den Rest ab (kann auch sein, dass er abrundet ^^): 3 div 2 = 1 oder 9 div 3 = 3
Und wir müssen ein Wert runtergehen, da wir - jedenfalls ist es so üblich beim Programmieren - bei 0 beginnen. Müssen also bei 10 Werten von 0. Wert bis zum (10 - 1).Wert gehen.
Die Breite ist der Abstand zwischen den Werten.
Wenn du 10 Werte darstellen willst und eine Breite für deinen Graph (ohne Achsen) von 100 hast, wäre die Breite maximal 10 (Also 10 Pixel abstand zwischen den Werten).
Und die Höhe kannst du einfach jedesmal berechnen.
Wobei du zu Anfang einmal die Höhe für t = Max - 1 berechnen würde, um den Graphen passend zu machen.
Ein Beispiel dazu: Wenn die Höhe für den Graphen 100 Pixel hoch ist, und der hächste Wert einen Wert von 200 hat, und der kleinste Wert von 0 hat, dann empfiehlt es sich, dass du die Höhe durch zwei teilst, damit die Werte zwischen 0 und 100 sind.

MfG
xZise
Fabian
Eigentlich hat MS Windows ab Vista den Hang zur Selbstzerstörung abgewöhnt – mkinzler
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:38 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