Thema: Tangeskurve

Einzelnen Beitrag anzeigen

Benutzerbild von faux
faux

Registriert seit: 18. Apr 2004
Ort: Linz
2.044 Beiträge
 
Turbo Delphi für Win32
 
#1

Tangeskurve

  Alt 15. Feb 2005, 15:11
Hallo!

Ich stell' mich anscheinend gerade etwas dumm an, aber ich versuche das jetzt schon seit über zwei Stunden und ich hab anscheinend einen Denkfehler:

Delphi-Quellcode:
procedure TForm1.DrawTangens;
var
  x, y: Integer;
begin
  with Image1.Canvas do
  begin
    MoveTo(0, Image1.Height div 2);
    for x := 0 to Image1.Width do
      if x mod 90 mod 2 = 0 then //Hier will ich sicherstellen, dass der Tangeswert ein gültiger ist
      begin
        y := round(Amp.Value * tan(x / Image1.Width * Frq.Value * pi)); //Amp und Frq sind zwei SpinEdits
        LineTo(x, Image1.Height div 2 - y); //Hier ziehe ich den Wert von der Nullinie der Funktion ab
      end;
  end;
end;
Zur Zeile 9:
cos ist null, bei 90, 270, 450, etc. und tan = sin / cos

Delphi-Quellcode:
function tan(const X: Extended): Extended;
begin
  result := sin(X) / cos(X)
end;
Das ganze funktioniert mal, wenn Frq.Val 4 ist. Verändere ich Frq aber, gibts wieder einen Fehler...
Warum aber? Wo liegt mein Fehler?

Danke für die Antwort.
Faux Manuel
Wer weiß, dass er nichts weiß, weiß mehr, als der der nicht weiß, dass er nichts weiß.
GoTrillian
  Mit Zitat antworten Zitat