Struct rerun::TranslationRotationScale3D
source · pub struct TranslationRotationScale3D {
pub translation: Option<Vec3D>,
pub rotation: Option<Rotation3D>,
pub scale: Option<Scale3D>,
pub from_parent: bool,
}
Expand description
Datatype: Representation of an affine transform via separate translation, rotation & scale.
Fields§
§translation: Option<Vec3D>
3D translation vector, applied last.
rotation: Option<Rotation3D>
3D rotation, applied second.
scale: Option<Scale3D>
3D scale, applied first.
from_parent: bool
If true, this transform is from the parent space to the space where the transform was logged.
If false (default), the transform maps from this space to its parent, i.e. the translation is the position in the parent space.
Implementations§
source§impl TranslationRotationScale3D
impl TranslationRotationScale3D
pub const IDENTITY: TranslationRotationScale3D = _
sourcepub fn from_translation(
translation: impl Into<Vec3D>
) -> TranslationRotationScale3D
pub fn from_translation( translation: impl Into<Vec3D> ) -> TranslationRotationScale3D
From a translation.
sourcepub fn from_rotation(
rotation: impl Into<Rotation3D>
) -> TranslationRotationScale3D
pub fn from_rotation( rotation: impl Into<Rotation3D> ) -> TranslationRotationScale3D
From a rotation
sourcepub fn from_scale(scale: impl Into<Scale3D>) -> TranslationRotationScale3D
pub fn from_scale(scale: impl Into<Scale3D>) -> TranslationRotationScale3D
From a rotation & scale
sourcepub fn from_translation_rotation(
translation: impl Into<Vec3D>,
rotation: impl Into<Rotation3D>
) -> TranslationRotationScale3D
pub fn from_translation_rotation( translation: impl Into<Vec3D>, rotation: impl Into<Rotation3D> ) -> TranslationRotationScale3D
From a translation applied after a rotation, known as a rigid transformation.
sourcepub fn from_rotation_scale(
rotation: impl Into<Rotation3D>,
scale: impl Into<Scale3D>
) -> TranslationRotationScale3D
pub fn from_rotation_scale( rotation: impl Into<Rotation3D>, scale: impl Into<Scale3D> ) -> TranslationRotationScale3D
From a rotation & scale
sourcepub fn from_translation_rotation_scale(
translation: impl Into<Vec3D>,
rotation: impl Into<Rotation3D>,
scale: impl Into<Scale3D>
) -> TranslationRotationScale3D
pub fn from_translation_rotation_scale( translation: impl Into<Vec3D>, rotation: impl Into<Rotation3D>, scale: impl Into<Scale3D> ) -> TranslationRotationScale3D
From a translation, applied after a rotation & scale, known as an affine transformation.
sourcepub fn from_parent(self) -> TranslationRotationScale3D
pub fn from_parent(self) -> TranslationRotationScale3D
Indicate that this transform is from parent to child. This is the opposite of the default, which is from child to parent.
Trait Implementations§
source§impl Clone for TranslationRotationScale3D
impl Clone for TranslationRotationScale3D
source§fn clone(&self) -> TranslationRotationScale3D
fn clone(&self) -> TranslationRotationScale3D
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl DataUi for TranslationRotationScale3D
impl DataUi for TranslationRotationScale3D
source§fn data_ui(
&self,
ctx: &ViewerContext<'_>,
ui: &mut Ui,
verbosity: UiVerbosity,
query: &LatestAtQuery,
store: &DataStore
)
fn data_ui( &self, ctx: &ViewerContext<'_>, ui: &mut Ui, verbosity: UiVerbosity, query: &LatestAtQuery, store: &DataStore )
source§impl Debug for TranslationRotationScale3D
impl Debug for TranslationRotationScale3D
source§impl Default for TranslationRotationScale3D
impl Default for TranslationRotationScale3D
source§fn default() -> TranslationRotationScale3D
fn default() -> TranslationRotationScale3D
source§impl From<Rotation3D> for TranslationRotationScale3D
impl From<Rotation3D> for TranslationRotationScale3D
source§fn from(v: Rotation3D) -> TranslationRotationScale3D
fn from(v: Rotation3D) -> TranslationRotationScale3D
source§impl From<Scale3D> for TranslationRotationScale3D
impl From<Scale3D> for TranslationRotationScale3D
source§fn from(v: Scale3D) -> TranslationRotationScale3D
fn from(v: Scale3D) -> TranslationRotationScale3D
source§impl From<TranslationRotationScale3D> for Transform3D
impl From<TranslationRotationScale3D> for Transform3D
source§fn from(v: TranslationRotationScale3D) -> Transform3D
fn from(v: TranslationRotationScale3D) -> Transform3D
source§impl From<Vec3> for TranslationRotationScale3D
impl From<Vec3> for TranslationRotationScale3D
source§fn from(v: Vec3) -> TranslationRotationScale3D
fn from(v: Vec3) -> TranslationRotationScale3D
source§impl From<Vec3D> for TranslationRotationScale3D
impl From<Vec3D> for TranslationRotationScale3D
source§fn from(v: Vec3D) -> TranslationRotationScale3D
fn from(v: Vec3D) -> TranslationRotationScale3D
source§impl Loggable for TranslationRotationScale3D
impl Loggable for TranslationRotationScale3D
type Name = DatatypeName
source§fn name() -> <TranslationRotationScale3D as Loggable>::Name
fn name() -> <TranslationRotationScale3D as Loggable>::Name
rerun.datatypes.Vec2D
.source§fn arrow_datatype() -> DataType
fn arrow_datatype() -> DataType
arrow2::datatypes::DataType
, excluding datatype extensions.source§fn to_arrow_opt<'a>(
data: impl IntoIterator<Item = Option<impl Into<Cow<'a, TranslationRotationScale3D>>>>
) -> Result<Box<dyn Array>, SerializationError>where
TranslationRotationScale3D: Clone + 'a,
fn to_arrow_opt<'a>(
data: impl IntoIterator<Item = Option<impl Into<Cow<'a, TranslationRotationScale3D>>>>
) -> Result<Box<dyn Array>, SerializationError>where
TranslationRotationScale3D: Clone + 'a,
Loggable
, serializes them into an Arrow array.
The Arrow array’s datatype will match Loggable::arrow_field
. Read moresource§fn from_arrow_opt(
arrow_data: &(dyn Array + 'static)
) -> Result<Vec<Option<TranslationRotationScale3D>>, DeserializationError>where
TranslationRotationScale3D: Sized,
fn from_arrow_opt(
arrow_data: &(dyn Array + 'static)
) -> Result<Vec<Option<TranslationRotationScale3D>>, DeserializationError>where
TranslationRotationScale3D: Sized,
source§fn extended_arrow_datatype() -> DataType
fn extended_arrow_datatype() -> DataType
arrow2::datatypes::DataType
, including datatype extensions. Read moresource§fn arrow_field() -> Field
fn arrow_field() -> Field
arrow2::datatypes::Field
, including datatype extensions. Read moresource§fn to_arrow<'a>(
data: impl IntoIterator<Item = impl Into<Cow<'a, Self>>>
) -> Result<Box<dyn Array>, SerializationError>where
Self: 'a,
fn to_arrow<'a>(
data: impl IntoIterator<Item = impl Into<Cow<'a, Self>>>
) -> Result<Box<dyn Array>, SerializationError>where
Self: 'a,
Loggable
, serializes
them into an Arrow array.
The Arrow array’s datatype will match Loggable::arrow_field
. Read moresource§fn from_arrow(
data: &(dyn Array + 'static)
) -> Result<Vec<Self>, DeserializationError>
fn from_arrow( data: &(dyn Array + 'static) ) -> Result<Vec<Self>, DeserializationError>
source§impl PartialEq for TranslationRotationScale3D
impl PartialEq for TranslationRotationScale3D
source§fn eq(&self, other: &TranslationRotationScale3D) -> bool
fn eq(&self, other: &TranslationRotationScale3D) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl SizeBytes for TranslationRotationScale3D
impl SizeBytes for TranslationRotationScale3D
source§fn heap_size_bytes(&self) -> u64
fn heap_size_bytes(&self) -> u64
self
on the heap, in bytes.source§fn total_size_bytes(&self) -> u64
fn total_size_bytes(&self) -> u64
self
in bytes, accounting for both stack and heap space.source§fn stack_size_bytes(&self) -> u64
fn stack_size_bytes(&self) -> u64
self
on the stack, in bytes. Read moreimpl Copy for TranslationRotationScale3D
impl StructuralPartialEq for TranslationRotationScale3D
Auto Trait Implementations§
impl Freeze for TranslationRotationScale3D
impl RefUnwindSafe for TranslationRotationScale3D
impl Send for TranslationRotationScale3D
impl Sync for TranslationRotationScale3D
impl Unpin for TranslationRotationScale3D
impl UnwindSafe for TranslationRotationScale3D
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
source§impl<T> CheckedAs for T
impl<T> CheckedAs for T
source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
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>
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
.source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
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)
&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)
&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> DowncastSync for T
impl<T> DowncastSync for T
source§impl<T> EntityDataUi for Twhere
T: DataUi,
impl<T> EntityDataUi for Twhere
T: DataUi,
source§fn entity_data_ui(
&self,
ctx: &ViewerContext<'_>,
ui: &mut Ui,
verbosity: UiVerbosity,
entity: &EntityPath,
query: &LatestAtQuery,
store: &DataStore
)
fn entity_data_ui( &self, ctx: &ViewerContext<'_>, ui: &mut Ui, verbosity: UiVerbosity, entity: &EntityPath, query: &LatestAtQuery, store: &DataStore )
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<L> LoggableBatch for L
impl<L> LoggableBatch for L
type Name = <L as Loggable>::Name
source§fn name(&self) -> <L as LoggableBatch>::Name
fn name(&self) -> <L as LoggableBatch>::Name
rerun.datatypes.Vec2D
.source§fn num_instances(&self) -> usize
fn num_instances(&self) -> usize
source§fn arrow_field(&self) -> Field
fn arrow_field(&self) -> Field
arrow2::datatypes::Field
, including datatype extensions.