pub struct SpringNaturalMotionAnimationInstance<T: SpringValue> { /* private fields */ }Expand description
Server-side counterpart of the spring natural motion animations
(SpringScalarNaturalMotionAnimation, SpringVector2NaturalMotionAnimation,
SpringVector3NaturalMotionAnimation).
Each component of the value moves on a damped harmonic oscillator from the initial value with the initial velocity to the final value. The animation ends when every component is close enough to the final value and nearly at rest: it then sets the final value, leaves the clock and releases the batches it belongs to, as a key frame animation that finishes.
Implementations§
Source§impl<T: SpringValue> SpringNaturalMotionAnimationInstance<T>
impl<T: SpringValue> SpringNaturalMotionAnimationInstance<T>
pub fn new( spring: SpringNaturalMotionParameters<T>, target: ServerObjectId, snapshot: Rc<PropertySetSnapshot>, ) -> Rc<SpringNaturalMotionAnimationInstance<T>>
Sourcepub fn set_completion(&self, completion: AnimationCompletion)
pub fn set_completion(&self, completion: AnimationCompletion)
Sets the batches the animation belongs to.
Sourcepub fn set_initial_value_expressions(
&self,
expressions: Vec<(String, Expression)>,
)
pub fn set_initial_value_expressions( &self, expressions: Vec<(String, Expression)>, )
Sets the initial value expressions of the animation, applied to the target when the instance is initialized.
Trait Implementations§
Source§impl<T: SpringValue> IAnimationInstance for SpringNaturalMotionAnimationInstance<T>
impl<T: SpringValue> IAnimationInstance for SpringNaturalMotionAnimationInstance<T>
Source§fn target_object(&self) -> ServerObjectId
fn target_object(&self) -> ServerObjectId
The object whose property is animated.
Source§fn resolve(&self, compositor: &Rc<ServerCompositor>)
fn resolve(&self, compositor: &Rc<ServerCompositor>)
Resolves the server objects the instance refers to by id, on the
compositor that drives it. Called once, on the server, before the
instance is initialized; an instance that refers to no object needs
nothing.
Source§fn evaluate(
&self,
now: Duration,
current_value: ExpressionVariant,
) -> ExpressionVariant
fn evaluate( &self, now: Duration, current_value: ExpressionVariant, ) -> ExpressionVariant
The value of the animation at
now.Source§fn initialize(
&self,
started_at: Duration,
starting_value: ExpressionVariant,
property: &'static CompositionProperty,
)
fn initialize( &self, started_at: Duration, starting_value: ExpressionVariant, property: &'static CompositionProperty, )
Attaches the instance to the property it animates.
fn activate(&self)
fn deactivate(&self)
fn invalidate(&self)
Source§fn value_on_stop(
&self,
_current_value: ExpressionVariant,
) -> Option<ExpressionVariant>
fn value_on_stop( &self, _current_value: ExpressionVariant, ) -> Option<ExpressionVariant>
The value the animated property is set to when the animation is
stopped by
StopAnimation (its stop behavior), given the current
value of the property; None leaves the current value.Source§fn release_completion(&self)
fn release_completion(&self)
Tells the batches the animation belongs to that it is over (it is
stopped, replaced or its target is disposed). Releasing again does
nothing; an animation that belongs to no batch does nothing.
Source§fn attach_controller(&self, controller: ServerObjectId)
fn attach_controller(&self, controller: ServerObjectId)
Puts the instance under the control of an
AnimationController, named by the id of
the controller’s property set: from now on the controller pauses,
resumes, scrubs and speeds up the animation; if the progress of the
controller was assigned, the animation moves there at its next
evaluation. An instance that cannot be controlled (an expression
animation) ignores it.Source§fn as_subchannel(&self) -> Option<&SubchannelAnimationInstance>
fn as_subchannel(&self) -> Option<&SubchannelAnimationInstance>
The instance as an animation of components of its property
(
Offset.X), if it is one: such animations of one property are
merged on the server.Source§impl<T: SpringValue> IServerClockItem for SpringNaturalMotionAnimationInstance<T>
impl<T: SpringValue> IServerClockItem for SpringNaturalMotionAnimationInstance<T>
Auto Trait Implementations§
impl<T> !Freeze for SpringNaturalMotionAnimationInstance<T>
impl<T> !RefUnwindSafe for SpringNaturalMotionAnimationInstance<T>
impl<T> !Send for SpringNaturalMotionAnimationInstance<T>
impl<T> !Sync for SpringNaturalMotionAnimationInstance<T>
impl<T> !UnwindSafe for SpringNaturalMotionAnimationInstance<T>
impl<T> Unpin for SpringNaturalMotionAnimationInstance<T>
impl<T> UnsafeUnpin for SpringNaturalMotionAnimationInstance<T>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> ClassDefaults for Twhere
T: ?Sized,
impl<T> ClassDefaults for Twhere
T: ?Sized,
Source§fn static_constructor()
fn static_constructor()
The static constructor of a type: work done once per thread, after
the properties of the type are registered and before its first
instance exists (class handlers,
affects_render, metadata
overrides). Read more