Einzelnen Beitrag anzeigen

Sven M.

Registriert seit: 21. Okt 2006
Ort: Halle/Saale
106 Beiträge
 
Delphi 5 Enterprise
 
#1

"-NAN"? Variablenzuweisung funktioniert nicht?!

  Alt 1. Jul 2009, 11:43
Hallo zusammen,
entweder steh' ich gerade auf dem Schlauch oder Delphi spinnt. Wahrscheinlich ist ersteres der Fall...

Ich habe folgende Funktion:
Delphi-Quellcode:
function FindNextPoint(Graph: TLineSeries): integer;
var i: integer;
    XValue, YValue: double;

    t1, t2: double; //Debugging-Zwecke
begin
  i:=0;
  Graph.GetCursorValues(XValue, YValue);

  ShowMessage(FloatToStr(Graph.XValue[i]));//korrekte Anzeige "-100"
  t1:=Graph.XValue[i];//-NAN
  t2:=abs(Graph.XValue[i+1]);//sinnlose Potenz

  while (i<Graph.Count-1) and
    (abs(Graph.XValue[i]-XValue) > abs(Graph.XValue[i+1])-XValue) do
  begin
    inc(i);
  end;
  result:=i;
end;
Diese soll mir den am nächsten am Cursor gelegenen Punkt einer TLineSeries zurückgeben.
Problem ist folgendes: Für positive X-Werte funktioniert das alles ganz gut. Bei Rückgabewerten, die eigentlich negativ sein müssten, liefert das Ding jedoch immer nur 0.
Will ich mir die Werte von t1 und t2 im Debugger anschauen, wird mir für t1 "-NAN" und für t2 ein völlig sinnloser Wert (*10^-25 o.ä.) angezeigt. Dazu muss ich sagen, dass die betreffende Series eine quadratische Funktion ist mit einem Definitionsbereich -100...100. D.h. Graph.XValue[0] müsste also -100 ergeben, was in der ShowMessage ja auch korrekt getan wird.

Habt ihr irgendeine Idee, woran das liegen könnte und wie ich mein Problem beheben kann?

Besten Dank,
Sven
  Mit Zitat antworten Zitat