Registriert seit: 8. Mai 2005
Ort: Sondershausen
4.274 Beiträge
Delphi 6 Personal
|
Re: Lissajous-Figuren
5. Jun 2006, 23:17
Delphi-Quellcode:
procedure TForm1.DrawLissajous(x, y, z: Single);
var
sinX, sinY, sinZ, Pi_ : single;
step: Integer;
begin
GLLines1.Nodes.Clear;
for step := 0 to 360 do
begin
sinX := sin(Pi * step * x / 180) * 180;
sinY := -sin(Pi * step * y / 180) * 180;
sinZ := sin(Pi * step * z / 180) * 180;
GLLines1.Nodes.Add.AsAffineVector :=
AffineVectorMake(sinX / 100, sinY / 100, sinZ / 100);
if step mod 10 = 0 then // a little Speed
Application.ProcessMessages;
Label7.Caption := Format('X: %8.2f; Y: %8.2f; Z: %8.2f', [sinX, sinY, sinZ]);
if CancelCalculate then Break;
end;
GLSceneViewer1.Refresh;
end;
So.
Einfach ein Sinus in die z-Richtung. Ob das korrekt ist bin ich noch am nachforschen.
|
|
Zitat
|