AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Probleme mit atan/atan2

Ein Thema von Pflaumi · begonnen am 22. Mai 2019 · letzter Beitrag vom 3. Jun 2019
Antwort Antwort
Andreas13

Registriert seit: 14. Okt 2006
Ort: Nürnberg
721 Beiträge
 
Delphi XE5 Professional
 
#1

AW: Probleme mit atan/atan2

  Alt 23. Mai 2019, 16:21
Delphi-Quellcode:
Function DegToRad(x: Extended): Extended;
Begin
  Result:= x*Pi/180; // Pi/180 = 0,0174532925199432
End;


Function RadToDeg(x: Extended): Extended;
Begin
  Result:= x/(Pi/180); // Pi/180 = 0,0174532925199432
End;
Gruß
Andreas
  Mit Zitat antworten Zitat
Benutzerbild von Pflaumi
Pflaumi

Registriert seit: 21. Mai 2019
Ort: Reichenschwand
36 Beiträge
 
Delphi 7 Professional
 
#2

AW: Probleme mit atan/atan2

  Alt 26. Mai 2019, 14:59
Danke
kann mir noch jemand eine Funktion (oder etwass anderes) nennen,
wie man die Zahl auf ganze Grad runden kann.
Oder einfach allgemein eine Funktion zum Runden!
Das wäre cool
Felix
  Mit Zitat antworten Zitat
Heuman
(Gast)

n/a Beiträge
 
#3

AW: Probleme mit atan/atan2

  Alt 26. Mai 2019, 15:12
Hallo,

z.B. so

function cnc_round(fzahl: Extended): Extended;

begin

result := round(fzahl * 10000) / 10000;

end;


Gruß
  Mit Zitat antworten Zitat
Andreas13

Registriert seit: 14. Okt 2006
Ort: Nürnberg
721 Beiträge
 
Delphi XE5 Professional
 
#4

AW: Probleme mit atan/atan2

  Alt 26. Mai 2019, 17:43
Hallo Felix,
etwas professioneller geht es so:
Delphi-Quellcode:
Function ArithRound(x: Extended): Int64;
Begin
  IF Frac(x) < 0.5 Then
    Result:= Floor(x)
  Else
    Result:= Ceil(x);
End;{ArithRound}
{--------------}
oder
Delphi-Quellcode:
Function ArithRound(x: Extended): Int64;
Begin
  Result:= Trunc(x + 0.5);
End;{ArithRound}
{--------------}
Gruß
Andreas

Geändert von Andreas13 (26. Mai 2019 um 17:45 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Pflaumi
Pflaumi

Registriert seit: 21. Mai 2019
Ort: Reichenschwand
36 Beiträge
 
Delphi 7 Professional
 
#5

AW: Probleme mit atan/atan2

  Alt 2. Jun 2019, 14:39
Danke,
wenn wir gleich beim Thema sind, schneidet die Funktion FloatToStrF alle Kommastellen weg oder rundet diese genauso?
Dazu habe ich auch noch eine Frage:
Ich weiß, dass hinter der Funktion eine Klammer mit vier Parametern hingehört.
Kann mir jemand sagen, welcher Parameter für was zuständig ist?

Schon mal Danke !
Felix
  Mit Zitat antworten Zitat
peterbelow

Registriert seit: 12. Jan 2019
Ort: Hessen
711 Beiträge
 
Delphi 12 Athens
 
#6

AW: Probleme mit atan/atan2

  Alt 2. Jun 2019, 16:42
Danke,
wenn wir gleich beim Thema sind, schneidet die Funktion FloatToStrF alle Kommastellen weg oder rundet diese genauso?
Dazu habe ich auch noch eine Frage:
Ich weiß, dass hinter der Funktion eine Klammer mit vier Parametern hingehört.
Kann mir jemand sagen, welcher Parameter für was zuständig ist?

Schon mal Danke !
Lern die Hilfe zu benutzen, auch die online-Version.
http://docwiki.embarcadero.com/Libra...ls.FloatToStrF

Die Funktion erlaubt es, die Zahl der Nachkommastellen zu spezifizieren, und auch, ob man das scientific format verwenden will oder fixed format.

http://docwiki.embarcadero.com/Libra...s.TFloatFormat
Peter Below
  Mit Zitat antworten Zitat
Andreas13

Registriert seit: 14. Okt 2006
Ort: Nürnberg
721 Beiträge
 
Delphi XE5 Professional
 
#7

AW: Probleme mit atan/atan2

  Alt 2. Jun 2019, 16:52
Hallo Felix,

die Online-Hilfe führt einen (wenigstens bei XE5 Pro) in die Irre: ms-help://embarcadero.rs_xe5/libraries/System.UnicodeString.FloatToStrF.html
denn FloatToStrF befindet sich nicht in der Unit „System.UnicodeString.pas“ (die gibt’s ja gar nicht), sondern in
System.SysUtils.pas

Dort findest Du u.a.:
function FloatToStrF(Value: Extended; Format: TFloatFormat; Precision, Digits: Integer): string;
// TFloatFormat = (ffGeneral, ffExponent, ffFixed, ffNumber, ffCurrency);

FloatToStrF converts the floating-point value given by Value to its string representation. The Format parameter controls the format of the resulting string. The Precision parameter specifies the precision of the given value.
It should be 7 or less for values of type Single, 15 or less for values of type Double, and 18 or less for values of type Extended. The meaning of the Digits parameter depends on the particular format selected.
usw. usf.

Gruß
Andreas
  Mit Zitat antworten Zitat
Antwort Antwort

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:01 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 by Thomas Breitkreuz