Click or drag to resize
DigitalRuneVector3FLinearSegment3Effector Class
Evaluates 3 piecewise linear functions consisting of 3 segments and multiplies the result with a particle parameter. (This effector is the Vector3F version of the SingleLinearSegment3Effector.)
Inheritance Hierarchy
SystemObject
  DigitalRune.ParticlesParticleEffector
    DigitalRune.Particles.EffectorsVector3FLinearSegment3Effector

Namespace: DigitalRune.Particles.Effectors
Assembly: DigitalRune.Particles (in DigitalRune.Particles.dll) Version: 1.4.0.0 (1.4.1.14427)
Syntax
public class Vector3FLinearSegment3Effector : ParticleEffector

The Vector3FLinearSegment3Effector type exposes the following members.

Constructors
  NameDescription
Public methodVector3FLinearSegment3Effector
Initializes a new instance of the Vector3FLinearSegment3Effector class.
Top
Methods
  NameDescription
Public methodBeginUpdate
Called when the particle system begins its update.
(Inherited from ParticleEffector.)
Public methodClone
Creates a new ParticleEffector that is a clone of the current instance.
(Inherited from ParticleEffector.)
Protected methodCloneCore
Makes the instance a clone of the specified ParticleEffector.
(Overrides ParticleEffectorCloneCore(ParticleEffector).)
Protected methodCreateInstanceCore
When implemented in a derived class, creates a new instance of the ParticleEffector derived class.
(Overrides ParticleEffectorCreateInstanceCore.)
Public methodEndUpdate
Called when the particle system finishes its update.
(Inherited from ParticleEffector.)
Public methodEquals
Determines whether the specified Object is equal to the current Object.
(Inherited from Object.)
Protected methodFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Public methodGetHashCode
Serves as a hash function for a particular type.
(Inherited from Object.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodInitialize
Initializes this particle effector.
(Inherited from ParticleEffector.)
Public methodInitializeParticles
Initializes new particles.
(Inherited from ParticleEffector.)
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Protected methodOnBeginUpdate
Called when BeginUpdate(TimeSpan) was called.
(Overrides ParticleEffectorOnBeginUpdate(TimeSpan).)
Protected methodOnEndUpdate
Called when BeginUpdate(TimeSpan) was called.
(Inherited from ParticleEffector.)
Protected methodOnInitialize (Inherited from ParticleEffector.)
Protected methodOnInitializeParticles (Inherited from ParticleEffector.)
Protected methodOnRequeryParameters (Overrides ParticleEffectorOnRequeryParameters.)
Protected methodOnUninitialize (Overrides ParticleEffectorOnUninitialize.)
Protected methodOnUpdateParticles
Called when UpdateParticles(TimeSpan, Int32, Int32) was called.
(Overrides ParticleEffectorOnUpdateParticles(TimeSpan, Int32, Int32).)
Public methodRequeryParameters
Requeries the particle parameters.
(Inherited from ParticleEffector.)
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Public methodUninitialize
Uninitializes this particle effector.
(Inherited from ParticleEffector.)
Public methodUpdateParticles
Updates particles.
(Inherited from ParticleEffector.)
Top
Properties
  NameDescription
Public propertyEnabled
Gets or sets a value indicating whether this ParticleEffector is enabled.
(Inherited from ParticleEffector.)
Public propertyInputParameter
Gets or sets the name of the parameter that is multiplied with the value of the piecewise linear function. (A varying or uniform parameter of type Vector3F.)
Public propertyName
Gets the name of this particle effector.
(Inherited from ParticleEffector.)
Public propertyOutputParameter
Gets or sets the name of the parameter that stores the result. (A varying or uniform parameter of type Vector3F.)
Public propertyParticleSystem
Gets or sets the particle system.
(Inherited from ParticleEffector.)
Public propertyTime0
Gets or sets the time of the first data point.
Public propertyTime1
Gets or sets the time of the second data point.
Public propertyTime2
Gets or sets the time of the third data point.
Public propertyTime3
Gets or sets the time of the last data point.
Public propertyTimeParameter
Gets or sets the name of the parameter that is the input for the piecewise linear function. (A varying or uniform parameter of type Single.)
Public propertyValue0
Gets or sets the value of the first data point.
Public propertyValue1
Gets or sets the value of the second data point.
Public propertyValue2
Gets or sets the value of the third data point.
Public propertyValue3
Gets or sets the value of the last data point.
Top
Remarks

This effector is similar to the SingleLinearSegment3Effector, only that a piecewise linear function is evaluated for each component of a Vector3F.

A piecewise linear function is defined using several data points: (Time0, Value0), (Time1, Value1), (Time2, Value2) and (Time3, Value3). If the time (see TimeParameter) is less than Time0, then the function value is Value0. If the time is greater than Time3, then the function value is Value3. If the time is between those limits, the function value is the interpolation of the nearest data point. The time values Time0 to Time3 must be given in ascending order.

The result of the function is muliplied with the InputParameter (component-wise) and stored in the OutputParameter. (If InputParameter is not set, then the function value is directly stored in the OutputParameter.)

Used particle parameters:

Particle ParameterDescription
TimeParameter A Single parameter that is the input to the piecewise linear function. Per default, the parameter "NormalizedAge" is used.
InputParameter The Vector3F parameter that is multiplied with the function value.
TimeParameter The Vector3F parameter that stores the result of the function value multiplied with the InputParameter.

See Also