IParticleRangeValue: Unterschied zwischen den Versionen

Aus AquaSoft Wiki
Zur Navigation springenZur Suche springen
Zeile 52: Zeile 52:
  
  
* Zeitmodus ausgeben: TTimeMode kann die Werte '''tmAbsolute''' (Default) und '''tmRelative''' annehmen. Das heißt, dass die eingebenen Werte entweder als absolute Zeitpunkt in Millisekunden interpretiert werden oder als relative Werte in Prozent bzgl. MaxTime.
+
* Zeitmodus ausgeben: Eingebene Werte werden entweder als absolute Zeitpunkt in Millisekunden interpretiertoder als relative Werte in Prozent bzgl. MaxTime.
 
<code>
 
<code>
 
   property TimeMode: TTimeMode;
 
   property TimeMode: TTimeMode;

Version vom 23. Juni 2014, 13:43 Uhr

IParticleRangeValue ist eine Ableitung von IRangeValue. Die Bereichswerte (engl. RangeValue) geben die Möglichkeit, dass Objekte nicht einen fixen Wert zugewiesen bekommen, sondern Werte innerhalb eines bestimmten Bereiches annehmen. Genaueres hier.

Es wird unterschieden zwischen "einfachen" RangeValues (IParticleRangeValue) und dreidimensionalen RangeValues (IParticleVectorRangeValue). Die dreidimensionalen RangeValues können also Werte in allen Richtungen des Raumes annehmen und verfügen daher über mehr Getter und Setter.

 IParticleRangeValueinherits from IRangeValue
   function GetValue (const Time: Double): Double;
   procedure SetValue (const ItemIndex: Integer; const Time: Double; const Value: Single);
   procedure Clear;
   procedure Assign(const Other: IParticleRangeValue);
   property MaxTime: Double read GetMaxTime write SetMaxTime;
   property TimeMode: TTimeMode read GetTimeMode write SetTimeMode;
 end;
 IParticleRangeValue inherits from IRangeValue
   function GetValueX (const Time: Double): Double;
   procedure SetValueX (const ItemIndex: Integer; const Time: Double; const Value: Single);
   function GetValueY (const Time: Double): Double;
   procedure SetValueY (const ItemIndex: Integer; const Time: Double; const Value: Single);
   function GetValueZ (const Time: Double): Double;
   procedure SetValueZ (const ItemIndex: Integer; const Time: Double; const Value: Single);
   procedure SetValueXYZ (const ItemIndex: Integer; const Time: Double; const Value: Single);
   procedure Clear;
   procedure Assign(const Other: IParticleVectorRangeValue);
   property MaxTime: Double read GetMaxTime write SetMaxTime;
   property TimeMode: TTimeMode read GetTimeMode write SetTimeMode;
 end;

Methoden

  • Werte setzen: SetValue bzw. SetValueX, SetValueY, SetValueZ und SetValueXYZ. Für die Parameter siehe hier. SetValueXYZ gibt allen Dimensionen den gleichen Wert.

 procedure SetValue (const ItemIndex: Integer; const Time: Double; const Value: Single);

  • Wert zum Zeitpunkt Time ausgeben, analog zum Setter.

 function GetValue (const Time: Double): Double;


  • Alle Werte löschen

 procedure Clear;


  • Maximaler Zeitpunkt, der einen Wert bekommen hat

 property MaxTime: Double;


  • Zeitmodus ausgeben: Eingebene Werte werden entweder als absolute Zeitpunkt in Millisekunden interpretiertoder als relative Werte in Prozent bzgl. MaxTime.

 property TimeMode: TTimeMode;


  • Werte von anderem IParticleRangeValue übernehmen:

 procedure Assign(const Other: IParticleVectorRangeValue);