PropertyMixer class
Buffered scene graph property that allows weighted accumulation; used internally.
Buffer with size valueSize * 4.
This has the layout: incoming | accu0 | accu1 | orig
Interpolators can use .buffer as their .result and the data then goes to
incoming
. accu0
and accu1
are used frame-interleaved for the
cumulative result and are compared to detect changes. orig
stores the
original state of the property.
Constructors
- PropertyMixer.new(PropertyBinding binding, String typeName, int valueSize)
Properties
- binding ↔ PropertyBinding
-
getter/setter pair
- buffer ↔ List
-
getter/setter pair
- cacheIndex ↔ int?
-
getter/setter pair
- cumulativeWeight ↔ double
-
getter/setter pair
- cumulativeWeightAdditive ↔ double
-
getter/setter pair
- hashCode → int
-
The hash code for this object.
no setterinherited
- referenceCount ↔ int
-
getter/setter pair
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- useCount ↔ int
-
getter/setter pair
- valueSize ↔ int
-
getter/setter pair
Methods
-
accumulate(
int accuIndex, double weight) → void -
Accumulate data in
accuIndex
incoming
region intoaccu[i]
. If weight is0
this does nothing. -
accumulateAdditive(
double weight) → void -
Accumulate data in the
incoming
region into 'add'. -
apply(
dynamic accuIndex) → void -
Apply the state of buffer
accu[i]
to the binding when accus differ. -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
restoreOriginalState(
) → void - Apply the state previously taken via 'saveOriginalState' to the binding.
-
saveOriginalState(
) → void - Remember the state of the bound property and copy it to both accus.
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited