Thema: Delphi 3x3 Matrix erstellen

Einzelnen Beitrag anzeigen

Benutzerbild von Boyington
Boyington

Registriert seit: 12. Apr 2012
43 Beiträge
 
#4

AW: 3x3 Matrix erstellen

  Alt 9. Mai 2012, 16:53
Danke für die schnelle Antwort!

1. Double und Extended habe ich schon probiert, leider geht's immer nicht.

2. Ich denke, die Fehlermeldung hat mit sin() und cos() nichts zu tun,

da ich gerade NUR "Rotationsmatrix[1.1]:=3;" geschrieben habe, tritt der Fehler immer wieder auf.



1.)
Datentyp real wird nicht direkt von der FPU unterstützt und sollte vermieden werden:
Delphi-Quellcode:
type
    Matrix_3x3 = array[1..3, 1..3] of Double; // oder Extended
2.)
Sin() und Cos() erwarten ein Argument im Bogenmass.
Ich vermute mal ganz stark, dass deine Trackbars auf "Grad" ausgerichtet sind.
Daher müsstest du die Funktion DegToRad() benützen.
Um Schreibarbeit zu vermeiden würde ich folgende Hilfs-Funktionen verwenden:
Delphi-Quellcode:
function SinDeg(value:Extended):Extended;
begin
  result := Sin(DegToRad(value));
end;
function CosDeg(value:Extended):Extended;
begin
  result := Cos(DegToRad(value));
end;

Rotationsmatrix[1.1]:=CosDeg(TrackBar4.Position)*CosDeg(TrackBar3.Position);
3.) ich glaub' nicht, dass der Fehler in dem Codestückchen ist, dass du uns gezeigt hast.
Do the best job, leave the rest in the hands of God!
  Mit Zitat antworten Zitat