Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Messwerte mit Farbe darstellen (https://www.delphipraxis.net/70066-messwerte-mit-farbe-darstellen.html)

Pinki 1. Jun 2006 13:40

Re: Messwerte mit Farbe darstellen
 
Hallo ich bekomme Fehlermeldung:Ungültige Gleitkommaoperation!!
Hier erstmal der Link zum Thread RGB Funktion

Ich habe die übernommen aber bei blend wert definition mekert er
Hier der Code:
Delphi-Quellcode:
 blend := Round(AnzeigeWinkel/DrehWinkel); ////<<<<---- genau hier ist der Fehler/Bei z.B.blend:=0.5 zeigt er richtig die farbe
        LedColor := ColorsBetween([clGreen, clYellow, clRed],blend);
   //// und dann kommt die LED Grafik
with RecT do
        begin
        OldPen := SelectObject(DC,CreatePen(ps_Solid,1,0));
        OldBrush := SelectObject(DC,CreateSolidBrush(LedColor));
        while n > 0 do
        begin
      Dec(n);
      x := (ZentrumX + Trunc(Cos(LEDWinkel) * r1));
      y := (ZentrumY - Trunc(Sin(LEDWinkel) * r2));
      Ellipse(DC,x - LED_RADIUS, y - LED_RADIUS, x + LED_RADIUS, y + LED_RADIUS);
      LEDWinkel:=LEDWinkel-(Pi/8);
      end;
Woran kann es liegen Round???? oder? ergibt doch Integer Wert??

Grüss Pinki

shmia 1. Jun 2006 13:48

Re: Messwerte mit Farbe darstellen
 
Die funktion Round muss weg:
Delphi-Quellcode:
var
   blend : double;
blend := AnzeigeWinkel/DrehWinkel;
Ausserdem darf DrehWinkel niemals 0 sein.
AnzeigeWinkel muss zwischen 0 und maximal DrehWinkel sein.
Hier bietet sich Assert() als Sicherheitsnetz an:
Delphi-Quellcode:
var
   blend : double;
Assert(Drehwinkel > 0, 'Drehwinkel ist nicht > 0');
Assert(AnzeigeWinkel >= 0, 'AnzeigeWinkel negativ');
Assert(AnzeigeWinkel <= DrehWinkel, 'AnzeigeWinkel zu gross');
blend := AnzeigeWinkel/DrehWinkel;

Pinki 1. Jun 2006 13:59

Re: Messwerte mit Farbe darstellen
 
Hallo danke für den schnellen Tip aber gleiche Fehlermeldung kommt trotzdem.
Ich habe k.A. vielleicht spinnt der Winswitch nur :wall:

Grüss
Pinki
P.S.Drehwinkel ist vorgegeben.es kann ja Werte 180,270 und 360° haben.Division / Zero ausgeschlossen. :thumb:


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:32 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz