pub struct RanimScene {
pub(crate) timelines: Vec<Timeline>,
pub(crate) time_marks: Vec<(f64, TimeMark)>,
}Expand description
The main struct that offers the ranim’s API, and encodes animations
Fields§
§timelines: Vec<Timeline>§time_marks: Vec<(f64, TimeMark)>Implementations§
Source§impl RanimScene
impl RanimScene
Sourcepub fn seal(self) -> SealedRanimScene
pub fn seal(self) -> SealedRanimScene
Seals the scene to SealedRanimScene.
Sourcepub fn new() -> Self
pub fn new() -> Self
Create a new RanimScene
Sourcepub fn insert_empty(&mut self) -> TimelineId
pub fn insert_empty(&mut self) -> TimelineId
Insert an empty timeline.
Sourcepub fn insert_empty_at(&mut self, sec: f64) -> TimelineId
pub fn insert_empty_at(&mut self, sec: f64) -> TimelineId
Insert an empty timeline and forward it to the given sec.
Sourcepub fn insert<T: Extract<Target = CoreItem> + Clone + 'static>(
&mut self,
item: T,
) -> TimelineId
pub fn insert<T: Extract<Target = CoreItem> + Clone + 'static>( &mut self, item: T, ) -> TimelineId
Insert a timeline at 0.0 sec and play StaticAnim::show on it.
Sourcepub fn insert_at<T: Extract<Target = CoreItem> + Clone + 'static>(
&mut self,
item: T,
sec: f64,
) -> TimelineId
pub fn insert_at<T: Extract<Target = CoreItem> + Clone + 'static>( &mut self, item: T, sec: f64, ) -> TimelineId
Insert a timeline at the given sec and play StaticAnim::show on it.
Sourcepub fn insert_with(&mut self, f: impl FnMut(&mut Timeline)) -> TimelineId
pub fn insert_with(&mut self, f: impl FnMut(&mut Timeline)) -> TimelineId
Insert a empty timeline and call f on it.
Sourcepub fn timelines_mut(&mut self) -> &mut [Timeline]
pub fn timelines_mut(&mut self) -> &mut [Timeline]
Get mutable reference of all timelines
Sourcepub fn timeline<'a, T: TimelineIndex<'a>>(&'a self, index: T) -> T::RefOutput
pub fn timeline<'a, T: TimelineIndex<'a>>(&'a self, index: T) -> T::RefOutput
Get the reference of timeline(s) by the TimelineIndex.
Sourcepub fn timeline_mut<'a, T: TimelineIndex<'a>>(
&'a mut self,
index: T,
) -> T::MutOutput
pub fn timeline_mut<'a, T: TimelineIndex<'a>>( &'a mut self, index: T, ) -> T::MutOutput
Get the mutable reference of timeline(s) by the TimelineIndex.
Sourcepub fn insert_time_mark(&mut self, sec: f64, time_mark: TimeMark)
pub fn insert_time_mark(&mut self, sec: f64, time_mark: TimeMark)
Inserts an TimeMark
Trait Implementations§
Source§impl Debug for RanimScene
impl Debug for RanimScene
Source§impl Default for RanimScene
impl Default for RanimScene
Source§fn default() -> RanimScene
fn default() -> RanimScene
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for RanimScene
impl !RefUnwindSafe for RanimScene
impl !Send for RanimScene
impl !Sync for RanimScene
impl Unpin for RanimScene
impl !UnwindSafe for RanimScene
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more