Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Wie kann ich die Parabel zeichnen?? (https://www.delphipraxis.net/113526-wie-kann-ich-die-parabel-zeichnen.html)

NickelM 9. Mai 2008 08:23


Wie kann ich die Parabel zeichnen??
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo Leute

Ich wollte fragen, wie ich in einem Image die geschwungene Parabel zeichnen kann???

Ich meine die Parabeln aus Mathe mit der Formel X² = Y (wer die formal noch kennt)

Wie kann ich dass umsetzen???? Die Parabel hatt ja auch ne Y und X Achse, weil sie in einem Koordinatensystem ist.

So in etwa siehe Bild (ist frei hand in computer :oops: )

Ich hab vor eine Prozedure zuschreiben:
Delphi-Quellcode:
procedure DrawParabel;
begin
Image1.Canvas.//und dann????
end;

Klaus01 9. Mai 2008 08:39

Re: Wie kann ich die Parabel zeichnen??
 
Guten Morgen,

prinzipiel sollte es so gehen:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  x : Integer;
begin
  for x := 0 to image1.Width do
    begin
       Image1.Canvas.LineTo(x,Image1.Height-trunc((sqr(x-image1.Width div 2))/10));
    end;
end;
Du mußt die Wertebereiche nur noch anpassen.

[edit] prozedur getauscht.

Grüße
Klaus

BurtaN 9. Mai 2008 08:42

Re: Wie kann ich die Parabel zeichnen??
 
F1 + TCanvas => Methoden, da steht alles was man braucht.

Entweder du benutzt Canvas.Draw oder zeichnest Koordinatensystem und Parabel mit Hilfe von penPos und lineto.

Tyrael Y. 9. Mai 2008 08:44

Re: Wie kann ich die Parabel zeichnen??
 
Du brauchst ja mehr angaben.

Erst mal in welchem Bereich willst du etwas zeichnen.
Du willst ja nicht von -Unendlich bis +Unendlich zeichnen. ;)

Als nächstes überleg doch mal wie du es von Hand machst.
Du hast ein gegebenes X und rechnest ein Y dazu aus.
Also mach es doch hier genauso.

Delphi-Quellcode:

function QuadratischeFunktion(X: integer): integer;
begin
  result := SQR(X); // x wird quadriert
end;
Du hast also jetzt ein X und dazu das Y.
Jetzt möchtest du es zeichnen.

Delphi-Quellcode:
...
  GraphikObjekt.Canvas.LineTo(X, Y);
...

...es geht natürlich geschickter, zum Üben ist das schon mal ne Grundlage

NickelM 9. Mai 2008 09:01

Re: Wie kann ich die Parabel zeichnen??
 
@Tyrael
Daran hab ich auch schon gedacht, aber diese sind ja dan nicht rund.
Das heißt ich müsste den X durch mehrer Punkte zerlegen und dan zeichen oder wei???
Gibt es keien einfacher Methode???

Wenn nicht wüßte ich ja schon wie es geht, weil der X Wert wird durch eine Eingabe von Y bereits berechnet.

Tyrael Y. 9. Mai 2008 09:10

Re: Wie kann ich die Parabel zeichnen??
 
Zitat:

Zitat von NickelM
Daran hab ich auch schon gedacht, aber diese sind ja dan nicht rund.

Ein Kreis ist auch nur eine Ansammlung von Punkten.
Wenn die Punkte direkt hintereinander liegen wird daraus ein Kreis bzw. eine Ellipse.

Probiere es einfach aus.

Canvas besitzt noch mehr Methoden zum zeichnen von Punkten.
Guck sie dir mal an. Es gibt auch Methoden, denene du viele
bzw. alle Punkte auf einmal übergeben kannst und diese dann gezeichnet werden.

Spiel einfach damit etwas rum, dann wirst du es besser kennenlernen.

guidok 9. Mai 2008 09:14

Re: Wie kann ich die Parabel zeichnen??
 
Zitat:

Zitat von NickelM
@Tyrael
Wenn nicht wüßte ich ja schon wie es geht, weil der X Wert wird durch eine Eingabe von Y bereits berechnet.

Der Wert von Y wird durch die Vorgabe von X berechnet. Y=X² Oder?

Die kleinset Auflösung von X ist dann ein Pixel.


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