pub struct SceneViewState {
pub pan_x: f32,
pub pan_y: f32,
pub zoom: f32,
pub rotation: f32,
}Expand description
Snapshot of a SceneView’s view transform: pan offset, zoom
factor, and rotation in radians. Use SceneView::state to
capture the current values; SceneView::restore_state to
apply a saved snapshot.
Fields§
§pan_x: f32X pan offset (the same value driven by the SceneView’s
pan_x signal).
pan_y: f32Y pan offset.
zoom: f32Zoom factor (1.0 = identity).
rotation: f32Rotation in radians (0.0 = no rotation).
Implementations§
Source§impl SceneViewState
impl SceneViewState
Sourcepub const IDENTITY: SceneViewState
pub const IDENTITY: SceneViewState
The identity view state: no pan, zoom 1.0, no rotation.
Sourcepub fn new(pan: Vec2, zoom: f32, rotation: f32) -> Self
pub fn new(pan: Vec2, zoom: f32, rotation: f32) -> Self
Construct a new state with the given pan / zoom / rotation.
Sourcepub fn is_identity(&self) -> bool
pub fn is_identity(&self) -> bool
Whether this state is the identity (no pan, zoom 1.0, no rotation). Useful for skipping persistence of fresh-default SceneViews.
Trait Implementations§
Source§impl Clone for SceneViewState
impl Clone for SceneViewState
Source§fn clone(&self) -> SceneViewState
fn clone(&self) -> SceneViewState
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for SceneViewState
Source§impl Debug for SceneViewState
impl Debug for SceneViewState
Source§impl Default for SceneViewState
impl Default for SceneViewState
Source§impl PartialEq for SceneViewState
impl PartialEq for SceneViewState
Source§fn eq(&self, other: &SceneViewState) -> bool
fn eq(&self, other: &SceneViewState) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for SceneViewState
Auto Trait Implementations§
impl Freeze for SceneViewState
impl RefUnwindSafe for SceneViewState
impl Send for SceneViewState
impl Sync for SceneViewState
impl Unpin for SceneViewState
impl UnsafeUnpin for SceneViewState
impl UnwindSafe for SceneViewState
Blanket Implementations§
§impl<T> AnyEq for T
impl<T> AnyEq for T
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
impl<T> ErasedDestructor for Twhere
T: 'static,
§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§impl<T> NoneValue for Twhere
T: Default,
impl<T> NoneValue for Twhere
T: Default,
type NoneType = T
§fn null_value() -> T
fn null_value() -> T
The none-equivalent value.