pub struct ObjectWorldRef<'w, T = Any>where
T: Kind,{ /* private fields */ }Implementations§
Source§impl<'w, T> ObjectWorldRef<'w, T>where
T: Kind,
impl<'w, T> ObjectWorldRef<'w, T>where
T: Kind,
Sourcepub unsafe fn from_any_unchecked(
object: ObjectWorldRef<'w>,
) -> ObjectWorldRef<'w, T>
pub unsafe fn from_any_unchecked( object: ObjectWorldRef<'w>, ) -> ObjectWorldRef<'w, T>
Creates a new ObjectWorldRef<T> from an ObjectWorldRef<Any>.
This is semantically equivalent to an unsafe downcast.
§Safety
Assumes object is of Kind T.
Sourcepub fn from_any(object: ObjectWorldRef<'w>) -> Option<ObjectWorldRef<'w, T>>where
T: Component,
pub fn from_any(object: ObjectWorldRef<'w>) -> Option<ObjectWorldRef<'w, T>>where
T: Component,
Creates a new ObjectWorldRef<T> from an ObjectWorldRef<Any> if the object
contains the given Component T.
This is semantically equivalent to a safe downcast.
Sourcepub fn contains<U>(&self) -> boolwhere
U: Component,
pub fn contains<U>(&self) -> boolwhere
U: Component,
See EntityRef::contains.
Sourcepub fn instance(&self) -> Instance<T>
pub fn instance(&self) -> Instance<T>
Returns the object as an Instance<T>.
Trait Implementations§
Source§impl<T> Clone for ObjectWorldRef<'_, T>where
T: Kind,
impl<T> Clone for ObjectWorldRef<'_, T>where
T: Kind,
Source§fn clone(&self) -> ObjectWorldRef<'_, T>
fn clone(&self) -> ObjectWorldRef<'_, T>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<T> ContainsInstance<T> for ObjectWorldRef<'_, T>where
T: Kind,
impl<T> ContainsInstance<T> for ObjectWorldRef<'_, T>where
T: Kind,
Source§impl<T> Debug for ObjectWorldRef<'_, T>where
T: Kind,
impl<T> Debug for ObjectWorldRef<'_, T>where
T: Kind,
Source§impl<T> Deref for ObjectWorldRef<'_, T>where
T: Component,
impl<T> Deref for ObjectWorldRef<'_, T>where
T: Component,
Source§impl<T> Display for ObjectWorldRef<'_, T>where
T: Kind,
impl<T> Display for ObjectWorldRef<'_, T>where
T: Kind,
Source§impl<T> From<ObjectWorldRef<'_, T>> for Entitywhere
T: Kind,
impl<T> From<ObjectWorldRef<'_, T>> for Entitywhere
T: Kind,
Source§fn from(object: ObjectWorldRef<'_, T>) -> Entity
fn from(object: ObjectWorldRef<'_, T>) -> Entity
Converts to this type from the input type.
Source§impl<T> From<ObjectWorldRef<'_, T>> for Instance<T>where
T: Kind,
impl<T> From<ObjectWorldRef<'_, T>> for Instance<T>where
T: Kind,
Source§fn from(object: ObjectWorldRef<'_, T>) -> Instance<T>
fn from(object: ObjectWorldRef<'_, T>) -> Instance<T>
Converts to this type from the input type.
Source§impl<T> ObjectHierarchy<T> for ObjectWorldRef<'_, T>where
T: Kind,
impl<T> ObjectHierarchy<T> for ObjectWorldRef<'_, T>where
T: Kind,
Source§fn parent(
&self,
) -> Option<<ObjectWorldRef<'_, T> as ObjectRebind<T>>::Rebind<Any>>
fn parent( &self, ) -> Option<<ObjectWorldRef<'_, T> as ObjectRebind<T>>::Rebind<Any>>
Returns the parent of this object, if it exists.
Source§fn children(
&self,
) -> impl Iterator<Item = <ObjectWorldRef<'_, T> as ObjectRebind<T>>::Rebind<Any>>
fn children( &self, ) -> impl Iterator<Item = <ObjectWorldRef<'_, T> as ObjectRebind<T>>::Rebind<Any>>
Iterates over all children of this object.
Source§fn ancestors(
&self,
) -> impl Iterator<Item = <ObjectWorldRef<'_, T> as ObjectRebind<T>>::Rebind<Any>>
fn ancestors( &self, ) -> impl Iterator<Item = <ObjectWorldRef<'_, T> as ObjectRebind<T>>::Rebind<Any>>
Iterates over all ancestors of this object.
Source§fn descendants_wide(
&self,
) -> impl Iterator<Item = <ObjectWorldRef<'_, T> as ObjectRebind<T>>::Rebind<Any>>
fn descendants_wide( &self, ) -> impl Iterator<Item = <ObjectWorldRef<'_, T> as ObjectRebind<T>>::Rebind<Any>>
Iterates over all descendants of this object in breadth-first order.
Source§fn descendants_deep(
&self,
) -> impl Iterator<Item = <ObjectWorldRef<'_, T> as ObjectRebind<T>>::Rebind<Any>>
fn descendants_deep( &self, ) -> impl Iterator<Item = <ObjectWorldRef<'_, T> as ObjectRebind<T>>::Rebind<Any>>
Iterates over all descendants of this object in depth-first order.
Source§fn find_by_path(
&self,
path: impl AsRef<str>,
) -> Option<<ObjectWorldRef<'_, T> as ObjectRebind<T>>::Rebind<Any>>
fn find_by_path( &self, path: impl AsRef<str>, ) -> Option<<ObjectWorldRef<'_, T> as ObjectRebind<T>>::Rebind<Any>>
Attempts to find an object by its path, relative to this one. Read more
Returns true if this object has the same root as another.
Source§fn is_child_of(&self, entity: Entity) -> bool
fn is_child_of(&self, entity: Entity) -> bool
Returns true if this object is a child of the given
Entity.Source§fn has_children(&self) -> bool
fn has_children(&self) -> bool
Returns true if this object has any children.
Source§fn query_children<'a, Q, F>(
&'a self,
query: &'a Query<'_, '_, Q, F>,
) -> impl Iterator<Item = <<Q as QueryData>::ReadOnly as QueryData>::Item<'a, 'a>> + 'awhere
Q: QueryData,
F: QueryFilter,
fn query_children<'a, Q, F>(
&'a self,
query: &'a Query<'_, '_, Q, F>,
) -> impl Iterator<Item = <<Q as QueryData>::ReadOnly as QueryData>::Item<'a, 'a>> + 'awhere
Q: QueryData,
F: QueryFilter,
Iterates over all children of this object which match the given
Query.Source§fn children_of_kind<'w, 's, 'a, U>(
&'a self,
objects: &'a Objects<'w, 's, U>,
) -> impl Iterator<Item = Object<'w, 's, 'a, U>> + 'awhere
U: Kind,
fn children_of_kind<'w, 's, 'a, U>(
&'a self,
objects: &'a Objects<'w, 's, U>,
) -> impl Iterator<Item = Object<'w, 's, 'a, U>> + 'awhere
U: Kind,
Iterates over all children of this object which match the given
Kind.Source§fn find_child_of_kind<'w, 's, 'a, U>(
&self,
objects: &'a Objects<'w, 's, U>,
) -> Option<Object<'w, 's, 'a, U>>where
U: Kind,
fn find_child_of_kind<'w, 's, 'a, U>(
&self,
objects: &'a Objects<'w, 's, U>,
) -> Option<Object<'w, 's, 'a, U>>where
U: Kind,
Returns the first child of this object which matches the given kind, if it exists.
Source§fn self_and_ancestors(&self) -> impl Iterator<Item = Self::Rebind<Any>>
fn self_and_ancestors(&self) -> impl Iterator<Item = Self::Rebind<Any>>
Iterates over this object, followed by all of its ancestors.
Source§fn is_ancestor_of<U>(&self, other: &impl ObjectHierarchy<U>) -> bool
fn is_ancestor_of<U>(&self, other: &impl ObjectHierarchy<U>) -> bool
Returns true if this object is an ancestor of another.
Source§fn query_ancestors<'a, Q, F>(
&'a self,
query: &'a Query<'_, '_, Q, F>,
) -> impl Iterator<Item = <<Q as QueryData>::ReadOnly as QueryData>::Item<'a, 'a>> + 'awhere
Q: QueryData,
F: QueryFilter,
fn query_ancestors<'a, Q, F>(
&'a self,
query: &'a Query<'_, '_, Q, F>,
) -> impl Iterator<Item = <<Q as QueryData>::ReadOnly as QueryData>::Item<'a, 'a>> + 'awhere
Q: QueryData,
F: QueryFilter,
Iterates over all ancestors of this object which match the given
Query.Source§fn query_self_and_ancestors<'a, Q, F>(
&'a self,
query: &'a Query<'_, '_, Q, F>,
) -> impl Iterator<Item = <<Q as QueryData>::ReadOnly as QueryData>::Item<'a, 'a>> + 'awhere
Q: QueryData,
F: QueryFilter,
fn query_self_and_ancestors<'a, Q, F>(
&'a self,
query: &'a Query<'_, '_, Q, F>,
) -> impl Iterator<Item = <<Q as QueryData>::ReadOnly as QueryData>::Item<'a, 'a>> + 'awhere
Q: QueryData,
F: QueryFilter,
Iterates over this object, followed by all its ancestors which match the given
Query.Source§fn ancestors_of_kind<'w, 's, 'a, U>(
&'a self,
objects: &'a Objects<'w, 's, U>,
) -> impl Iterator<Item = Object<'w, 's, 'a, U>>where
U: Kind,
fn ancestors_of_kind<'w, 's, 'a, U>(
&'a self,
objects: &'a Objects<'w, 's, U>,
) -> impl Iterator<Item = Object<'w, 's, 'a, U>>where
U: Kind,
Iterates over all ancestors of this object which match the given
Kind.Source§fn self_and_ancestors_of_kind<'w, 's, 'a, U>(
&'a self,
objects: &'a Objects<'w, 's, U>,
) -> impl Iterator<Item = Object<'w, 's, 'a, U>>where
U: Kind,
fn self_and_ancestors_of_kind<'w, 's, 'a, U>(
&'a self,
objects: &'a Objects<'w, 's, U>,
) -> impl Iterator<Item = Object<'w, 's, 'a, U>>where
U: Kind,
Iterates over this object, followed by all its ancestors which match the given
Kind.Source§fn find_ancestor_of_kind<'w, 's, 'a, U>(
&self,
objects: &'a Objects<'w, 's, U>,
) -> Option<Object<'w, 's, 'a, U>>where
U: Kind,
fn find_ancestor_of_kind<'w, 's, 'a, U>(
&self,
objects: &'a Objects<'w, 's, U>,
) -> Option<Object<'w, 's, 'a, U>>where
U: Kind,
Returns the first ancestor of this object which matches the given
Kind, if it exists.Source§fn self_and_descendants_wide(&self) -> impl Iterator<Item = Self::Rebind<Any>>
fn self_and_descendants_wide(&self) -> impl Iterator<Item = Self::Rebind<Any>>
Iterates over this object and all its descendants in breadth-first order.
Source§fn self_and_descendants_deep(&self) -> impl Iterator<Item = Self::Rebind<Any>>
fn self_and_descendants_deep(&self) -> impl Iterator<Item = Self::Rebind<Any>>
Iterates over this object and all its descendants in depth-first order.
Source§fn is_descendant_of(&self, entity: Entity) -> bool
fn is_descendant_of(&self, entity: Entity) -> bool
Returns true if this object is a descendant of the given entity.
Source§fn descendants_of_kind_wide<'w, 's, 'a, U>(
&'a self,
objects: &'a Objects<'w, 's, U>,
) -> impl Iterator<Item = Object<'w, 's, 'a, U>>where
U: Kind,
fn descendants_of_kind_wide<'w, 's, 'a, U>(
&'a self,
objects: &'a Objects<'w, 's, U>,
) -> impl Iterator<Item = Object<'w, 's, 'a, U>>where
U: Kind,
Iterates over all descendants of this object which match the given
Kind in breadth-first order.Source§fn descendants_of_kind_deep<'w, 's, 'a, U>(
&'a self,
objects: &'a Objects<'w, 's, U>,
) -> impl Iterator<Item = Object<'w, 's, 'a, U>>where
U: Kind,
fn descendants_of_kind_deep<'w, 's, 'a, U>(
&'a self,
objects: &'a Objects<'w, 's, U>,
) -> impl Iterator<Item = Object<'w, 's, 'a, U>>where
U: Kind,
Iterates over all descendants of this object which match the given
Kind in depth-first order.Source§fn self_and_descendants_of_kind_wide<'w, 's, 'a, U>(
&'a self,
objects: &'a Objects<'w, 's, U>,
) -> impl Iterator<Item = Object<'w, 's, 'a, U>>where
U: Kind,
fn self_and_descendants_of_kind_wide<'w, 's, 'a, U>(
&'a self,
objects: &'a Objects<'w, 's, U>,
) -> impl Iterator<Item = Object<'w, 's, 'a, U>>where
U: Kind,
Iterates over this object, followed by all its descendants which match the given
Kind in breadth-first order.Source§fn self_and_descendants_of_kind_deep<'w, 's, 'a, U>(
&'a self,
objects: &'a Objects<'w, 's, U>,
) -> impl Iterator<Item = Object<'w, 's, 'a, U>>where
U: Kind,
fn self_and_descendants_of_kind_deep<'w, 's, 'a, U>(
&'a self,
objects: &'a Objects<'w, 's, U>,
) -> impl Iterator<Item = Object<'w, 's, 'a, U>>where
U: Kind,
Iterates over this object, followed by all its descendants which match the given
Kind in depth-first order.Source§fn query_descendants_wide<'a, Q, F>(
&'a self,
query: &'a Query<'_, '_, Q, F>,
) -> impl Iterator<Item = <<Q as QueryData>::ReadOnly as QueryData>::Item<'a, 'a>> + 'awhere
Q: QueryData,
F: QueryFilter,
fn query_descendants_wide<'a, Q, F>(
&'a self,
query: &'a Query<'_, '_, Q, F>,
) -> impl Iterator<Item = <<Q as QueryData>::ReadOnly as QueryData>::Item<'a, 'a>> + 'awhere
Q: QueryData,
F: QueryFilter,
Iterates over all descendants of this object which match the given
Query in breadth-first order.Source§fn query_descendants_deep<'a, Q, F>(
&'a self,
query: &'a Query<'_, '_, Q, F>,
) -> impl Iterator<Item = <<Q as QueryData>::ReadOnly as QueryData>::Item<'a, 'a>> + 'awhere
Q: QueryData,
F: QueryFilter,
fn query_descendants_deep<'a, Q, F>(
&'a self,
query: &'a Query<'_, '_, Q, F>,
) -> impl Iterator<Item = <<Q as QueryData>::ReadOnly as QueryData>::Item<'a, 'a>> + 'awhere
Q: QueryData,
F: QueryFilter,
Iterates over all descendants of this object which match the given
Kind in depth-first order.Source§fn query_self_and_descendants_wide<'a, Q, F>(
&'a self,
query: &'a Query<'_, '_, Q, F>,
) -> impl Iterator<Item = <<Q as QueryData>::ReadOnly as QueryData>::Item<'a, 'a>> + 'awhere
Q: QueryData,
F: QueryFilter,
fn query_self_and_descendants_wide<'a, Q, F>(
&'a self,
query: &'a Query<'_, '_, Q, F>,
) -> impl Iterator<Item = <<Q as QueryData>::ReadOnly as QueryData>::Item<'a, 'a>> + 'awhere
Q: QueryData,
F: QueryFilter,
Iterates over this object, followed by all its descendants which match the given
Query in breadth-first order.Source§fn query_self_and_descendants_deep<'a, Q>(
&'a self,
query: &'a Query<'_, '_, Q>,
) -> impl Iterator<Item = <<Q as QueryData>::ReadOnly as QueryData>::Item<'a, 'a>> + 'awhere
Q: QueryData,
fn query_self_and_descendants_deep<'a, Q>(
&'a self,
query: &'a Query<'_, '_, Q>,
) -> impl Iterator<Item = <<Q as QueryData>::ReadOnly as QueryData>::Item<'a, 'a>> + 'awhere
Q: QueryData,
Iterates over this object, followed by all its descendants which match the given
Query in depth-first order.Source§fn find_descendant_of_kind_wide<'w, 's, 'a, U>(
&self,
objects: &'a Objects<'w, 's, U>,
) -> Option<Object<'w, 's, 'a, U>>where
U: Kind,
fn find_descendant_of_kind_wide<'w, 's, 'a, U>(
&self,
objects: &'a Objects<'w, 's, U>,
) -> Option<Object<'w, 's, 'a, U>>where
U: Kind,
Returns the first descendant of this object (breadth-first order) which matches the given
Kind, if it exists.Source§impl<T> ObjectName for ObjectWorldRef<'_, T>where
T: Kind,
impl<T> ObjectName for ObjectWorldRef<'_, T>where
T: Kind,
Source§impl<'w, T> ObjectRebind<T> for ObjectWorldRef<'w, T>where
T: Kind,
impl<'w, T> ObjectRebind<T> for ObjectWorldRef<'w, T>where
T: Kind,
Source§unsafe fn rebind_as<U>(
&self,
instance: Instance<U>,
) -> <ObjectWorldRef<'w, T> as ObjectRebind<T>>::Rebind<U>where
U: Kind,
unsafe fn rebind_as<U>(
&self,
instance: Instance<U>,
) -> <ObjectWorldRef<'w, T> as ObjectRebind<T>>::Rebind<U>where
U: Kind,
Source§fn cast_into_any(self) -> Self::Rebind<Any>
fn cast_into_any(self) -> Self::Rebind<Any>
Casts this object into an
Object<Any>. Read moreSource§unsafe fn cast_into_unchecked<U>(self) -> Self::Rebind<U>where
U: Kind,
unsafe fn cast_into_unchecked<U>(self) -> Self::Rebind<U>where
U: Kind,
Source§impl<T> ObjectTags for ObjectWorldRef<'_, T>where
T: Kind,
impl<T> ObjectTags for ObjectWorldRef<'_, T>where
T: Kind,
Source§impl<T, U> PartialEq<ObjectWorldRef<'_, U>> for ObjectWorldRef<'_, T>
impl<T, U> PartialEq<ObjectWorldRef<'_, U>> for ObjectWorldRef<'_, T>
impl<T> Copy for ObjectWorldRef<'_, T>where
T: Kind,
impl<T> Eq for ObjectWorldRef<'_, T>where
T: Kind,
Auto Trait Implementations§
impl<'w, T> Freeze for ObjectWorldRef<'w, T>
impl<'w, T = Any> !RefUnwindSafe for ObjectWorldRef<'w, T>
impl<'w, T> Send for ObjectWorldRef<'w, T>
impl<'w, T> Sync for ObjectWorldRef<'w, T>
impl<'w, T> Unpin for ObjectWorldRef<'w, T>where
T: Unpin,
impl<'w, T = Any> !UnwindSafe for ObjectWorldRef<'w, 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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T, C, D> Curve<T> for D
impl<T, C, D> Curve<T> for D
Source§fn sample_unchecked(&self, t: f32) -> T
fn sample_unchecked(&self, t: f32) -> T
Sample a point on this curve at the parameter value
t, extracting the associated value.
This is the unchecked version of sampling, which should only be used if the sample time t
is already known to lie within the curve’s domain. Read moreSource§fn sample(&self, t: f32) -> Option<T>
fn sample(&self, t: f32) -> Option<T>
Sample a point on this curve at the parameter value
t, returning None if the point is
outside of the curve’s domain.Source§fn sample_clamped(&self, t: f32) -> T
fn sample_clamped(&self, t: f32) -> T
Sample a point on this curve at the parameter value
t, clamping t to lie inside the
domain of the curve.Source§impl<C, T> CurveExt<T> for Cwhere
C: Curve<T>,
impl<C, T> CurveExt<T> for Cwhere
C: Curve<T>,
Source§fn sample_iter(
&self,
iter: impl IntoIterator<Item = f32>,
) -> impl Iterator<Item = Option<T>>
fn sample_iter( &self, iter: impl IntoIterator<Item = f32>, ) -> impl Iterator<Item = Option<T>>
Sample a collection of
n >= 0 points on this curve at the parameter values t_n,
returning None if the point is outside of the curve’s domain. Read moreSource§fn sample_iter_unchecked(
&self,
iter: impl IntoIterator<Item = f32>,
) -> impl Iterator<Item = T>
fn sample_iter_unchecked( &self, iter: impl IntoIterator<Item = f32>, ) -> impl Iterator<Item = T>
Sample a collection of
n >= 0 points on this curve at the parameter values t_n,
extracting the associated values. This is the unchecked version of sampling, which should
only be used if the sample times t_n are already known to lie within the curve’s domain. Read moreSource§fn sample_iter_clamped(
&self,
iter: impl IntoIterator<Item = f32>,
) -> impl Iterator<Item = T>
fn sample_iter_clamped( &self, iter: impl IntoIterator<Item = f32>, ) -> impl Iterator<Item = T>
Sample a collection of
n >= 0 points on this curve at the parameter values t_n,
clamping t_n to lie inside the domain of the curve. Read moreSource§fn map<S, F>(self, f: F) -> MapCurve<T, S, Self, F>where
F: Fn(T) -> S,
fn map<S, F>(self, f: F) -> MapCurve<T, S, Self, F>where
F: Fn(T) -> S,
Create a new curve by mapping the values of this curve via a function
f; i.e., if the
sample at time t for this curve is x, the value at time t on the new curve will be
f(x).Source§fn reparametrize<F>(self, domain: Interval, f: F) -> ReparamCurve<T, Self, F>
fn reparametrize<F>(self, domain: Interval, f: F) -> ReparamCurve<T, Self, F>
Create a new
Curve whose parameter space is related to the parameter space of this curve
by f. For each time t, the sample from the new curve at time t is the sample from
this curve at time f(t). The given domain will be the domain of the new curve. The
function f is expected to take domain into self.domain(). Read moreSource§fn reparametrize_linear(
self,
domain: Interval,
) -> Result<LinearReparamCurve<T, Self>, LinearReparamError>
fn reparametrize_linear( self, domain: Interval, ) -> Result<LinearReparamCurve<T, Self>, LinearReparamError>
Source§fn reparametrize_by_curve<C>(self, other: C) -> CurveReparamCurve<T, Self, C>
fn reparametrize_by_curve<C>(self, other: C) -> CurveReparamCurve<T, Self, C>
Source§fn graph(self) -> GraphCurve<T, Self>
fn graph(self) -> GraphCurve<T, Self>
Source§fn zip<S, C>(
self,
other: C,
) -> Result<ZipCurve<T, S, Self, C>, InvalidIntervalError>where
C: Curve<S>,
fn zip<S, C>(
self,
other: C,
) -> Result<ZipCurve<T, S, Self, C>, InvalidIntervalError>where
C: Curve<S>,
Source§fn chain<C>(self, other: C) -> Result<ChainCurve<T, Self, C>, ChainError>where
C: Curve<T>,
fn chain<C>(self, other: C) -> Result<ChainCurve<T, Self, C>, ChainError>where
C: Curve<T>,
Source§fn reverse(self) -> Result<ReverseCurve<T, Self>, ReverseError>
fn reverse(self) -> Result<ReverseCurve<T, Self>, ReverseError>
Source§fn repeat(self, count: usize) -> Result<RepeatCurve<T, Self>, RepeatError>
fn repeat(self, count: usize) -> Result<RepeatCurve<T, Self>, RepeatError>
Source§fn forever(self) -> Result<ForeverCurve<T, Self>, RepeatError>
fn forever(self) -> Result<ForeverCurve<T, Self>, RepeatError>
Source§fn ping_pong(self) -> Result<PingPongCurve<T, Self>, PingPongError>
fn ping_pong(self) -> Result<PingPongCurve<T, Self>, PingPongError>
Source§fn chain_continue<C>(
self,
other: C,
) -> Result<ContinuationCurve<T, Self, C>, ChainError>where
T: VectorSpace,
C: Curve<T>,
fn chain_continue<C>(
self,
other: C,
) -> Result<ContinuationCurve<T, Self, C>, ChainError>where
T: VectorSpace,
C: Curve<T>,
Source§fn samples(
&self,
samples: usize,
) -> Result<impl Iterator<Item = T>, ResamplingError>
fn samples( &self, samples: usize, ) -> Result<impl Iterator<Item = T>, ResamplingError>
Extract an iterator over evenly-spaced samples from this curve. Read more
Source§impl<C, T> CurveResampleExt<T> for C
impl<C, T> CurveResampleExt<T> for C
Source§fn resample<I>(
&self,
segments: usize,
interpolation: I,
) -> Result<SampleCurve<T, I>, ResamplingError>
fn resample<I>( &self, segments: usize, interpolation: I, ) -> Result<SampleCurve<T, I>, ResamplingError>
Resample this
Curve to produce a new one that is defined by interpolation over equally
spaced sample values, using the provided interpolation to interpolate between adjacent samples.
The curve is interpolated on segments segments between samples. For example, if segments is 1,
only the start and end points of the curve are used as samples; if segments is 2, a sample at
the midpoint is taken as well, and so on. Read moreSource§fn resample_auto(
&self,
segments: usize,
) -> Result<SampleAutoCurve<T>, ResamplingError>where
T: StableInterpolate,
fn resample_auto(
&self,
segments: usize,
) -> Result<SampleAutoCurve<T>, ResamplingError>where
T: StableInterpolate,
Resample this
Curve to produce a new one that is defined by interpolation over equally
spaced sample values, using automatic interpolation to interpolate between adjacent samples.
The curve is interpolated on segments segments between samples. For example, if segments is 1,
only the start and end points of the curve are used as samples; if segments is 2, a sample at
the midpoint is taken as well, and so on. Read moreSource§fn resample_uneven<I>(
&self,
sample_times: impl IntoIterator<Item = f32>,
interpolation: I,
) -> Result<UnevenSampleCurve<T, I>, ResamplingError>
fn resample_uneven<I>( &self, sample_times: impl IntoIterator<Item = f32>, interpolation: I, ) -> Result<UnevenSampleCurve<T, I>, ResamplingError>
Source§fn resample_uneven_auto(
&self,
sample_times: impl IntoIterator<Item = f32>,
) -> Result<UnevenSampleAutoCurve<T>, ResamplingError>where
T: StableInterpolate,
fn resample_uneven_auto(
&self,
sample_times: impl IntoIterator<Item = f32>,
) -> Result<UnevenSampleAutoCurve<T>, ResamplingError>where
T: StableInterpolate,
Resample this
Curve to produce a new one that is defined by automatic interpolation over
samples taken at the given set of times. The given sample_times are expected to contain at least
two valid times within the curve’s domain interval. Read moreSource§impl<T, C> CurveWithDerivative<T> for Cwhere
T: HasTangent,
C: SampleDerivative<T>,
impl<T, C> CurveWithDerivative<T> for Cwhere
T: HasTangent,
C: SampleDerivative<T>,
Source§fn with_derivative(self) -> SampleDerivativeWrapper<C>
fn with_derivative(self) -> SampleDerivativeWrapper<C>
This curve, but with its first derivative included in sampling. Read more
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Converts
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Converts
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Converts
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Converts
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
Source§impl<T> Identity for Twhere
T: ?Sized,
impl<T> Identity for Twhere
T: ?Sized,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§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 moreSource§impl<T> IntoResult<T> for T
impl<T> IntoResult<T> for T
Source§fn into_result(self) -> Result<T, RunSystemError>
fn into_result(self) -> Result<T, RunSystemError>
Converts this type into the system output type.
Source§impl<T, C, D> SampleDerivative<T> for D
impl<T, C, D> SampleDerivative<T> for D
Source§fn sample_with_derivative_unchecked(&self, t: f32) -> WithDerivative<T>
fn sample_with_derivative_unchecked(&self, t: f32) -> WithDerivative<T>
Sample this curve at the parameter value
t, extracting the associated value
in addition to its derivative. This is the unchecked version of sampling, which
should only be used if the sample time t is already known to lie within the
curve’s domain. Read moreSource§fn sample_with_derivative(&self, t: f32) -> Option<WithDerivative<T>>
fn sample_with_derivative(&self, t: f32) -> Option<WithDerivative<T>>
Sample this curve’s value and derivative at the parameter value
t, returning
None if the point is outside of the curve’s domain.Source§fn sample_with_derivative_clamped(&self, t: f32) -> WithDerivative<T>
fn sample_with_derivative_clamped(&self, t: f32) -> WithDerivative<T>
Sample this curve’s value and derivative at the parameter value
t, clamping t
to lie inside the domain of the curve.Source§impl<T> TypeData for T
impl<T> TypeData for T
Source§fn clone_type_data(&self) -> Box<dyn TypeData>
fn clone_type_data(&self) -> Box<dyn TypeData>
Creates a type-erased clone of this value.