Einzelnen Beitrag anzeigen

Antigo

Registriert seit: 14. Mär 2005
274 Beiträge
 
#5

Re: Vektor mit bestimmtem winkel erzeugen

  Alt 21. Dez 2006, 21:14
erstmal danke für eure Hilfe. meine Prozedur sieht jetzt so aus:

Delphi-Quellcode:
procedure TVektor.setzewinkel(alpha:double);
begin
 if alpha <= 0 then alpha:=360+alpha;
 x1:=cos(degtorad(alpha))*giblaenge;
 x2:=sin(degtorad(alpha))*giblaenge;
end;
meine Prozedur gibwinkel sieht so aus:
Delphi-Quellcode:
function TVektor.Gibwinkel2;
begin
  if x2 >= 0 then result:=radtodeg(arccos(x1/giblaenge))
  else result:=360-radtodeg(arccos(x1/giblaenge))
end;
Generell funktioniert das ganze auch. Zumindest ungefähr. Ich mache nun bei meinem kleinens SPielchen folgendes:

Delphi-Quellcode:
   
  kanone.vrohr.setzewinkel(45);
  showmessage(floattostr(kanone.vrohr.gibwinkel));
Ich setze den Winkel also auf 45 Grad und lasse ihne sofort danach ausgeben. Heraus kommt aber nicht 45 ° sondern
~50,76. Durch diese UNgenauigkeiten wird alles ziemlich unschön. Ich arbeite aber überall mit doppelter Genauigkeit. WIe kann ich da wo etwas verbessern? Ich danke schonmal im vorraus
Michael
"How should I know if it works? That's what beta testers are for. I only coded it."
  Mit Zitat antworten Zitat