Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Graphen einer Funktion zeichnen (https://www.delphipraxis.net/10014-graphen-einer-funktion-zeichnen.html)

Matze 9. Okt 2003 16:15


Graphen einer Funktion zeichnen
 
Hi!

Ich möchte den Graphen einer beliebigen Funktion auf eine PaintBox zeichnen lassen,. Es geht auch, aber irgendwie nicht so richtig. :(

Hier mal mein bisheriger Code:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var a,b,c: real;
    x,y: integer;
begin
  a:=StrToInt(Edit1.Text);
  b:=StrToInt(Edit2.Text);
  c:=StrToInt(Edit3.Text);

  for x:=1 to 10 do
  begin
    PaintBox1.Canvas.Moveto(x,50-y);
    y:=round(a*(x*x)+b*x+c);
    ListBox1.Items.Add(IntToStr(x)+' ==> '+IntToStr(y));
    PaintBox1.Canvas.LineTo(x,50-y);
  end;
end;
Wie kann ich ein Achsenkreuz machen, das in der Mitte (0/0) hat und nach links hin negativ wird, nach rechts positiv, ...

Wenn ich das mit den canvas mache, dann gibt es da ja keine negative Koordinaten. :gruebel:

Jens Schumann 9. Okt 2003 16:20

Re: Graphen einer Funktion zeichnen
 
Hallo Matze,
dort Beispielhabe ich mal rudimentäres Beipsiel gebracht. Die Umsetzung auf 4 Quadranten musst Du schon selbst machen. Tip: Der Ursprung muss ja nicht immer in der linken oberen Ecke sein. Du kannst jeweils in X- und in Y-Richtiung einen Konstanten Wert addieren. Diesen Wert addierst Du dann auch zu den Funktionswerten.

mandumoal 9. Okt 2003 16:22

Re: Graphen einer Funktion zeichnen
 
Hi Matze!

Damit kannst du denn "Nullpunkt" eines Steuerelemets auf einen beliebigne Punkt setzen:
Delphi-Quellcode:
SetViewPortOrgEx(Paintbox1.Canvas.Handle, yKoordinate, xKoordinate, nil);
yKoordinate und xKoordinate müssen integer sein.

mfg mandumoal

Matze 9. Okt 2003 16:36

Re: Graphen einer Funktion zeichnen
 
Oh, danke, das probiere ich gleich mal.

Matze 9. Okt 2003 16:45

Re: Graphen einer Funktion zeichnen
 
Das geht irgendwie nicht, ich hab's einfach bei ButtonClick eingefügt.

Matze 9. Okt 2003 17:59

Re: Graphen einer Funktion zeichnen
 
Danke nochmal, ich hab's jetzt gelöst.


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:28 Uhr.

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