Struct rerun::Transform3D
source · pub struct Transform3D {
pub transform: Transform3D,
}
Expand description
Archetype: A 3D transform.
§Example
§Variety of 3D transforms
ⓘ
use std::f32::consts::TAU;
fn main() -> Result<(), Box<dyn std::error::Error>> {
let rec = rerun::RecordingStreamBuilder::new("rerun_example_transform3d").spawn()?;
let arrow = rerun::Arrows3D::from_vectors([(0.0, 1.0, 0.0)]).with_origins([(0.0, 0.0, 0.0)]);
rec.log("base", &arrow)?;
rec.log(
"base/translated",
&rerun::Transform3D::from_translation([1.0, 0.0, 0.0]),
)?;
rec.log("base/translated", &arrow)?;
rec.log(
"base/rotated_scaled",
&rerun::Transform3D::from_rotation_scale(
rerun::RotationAxisAngle::new([0.0, 0.0, 1.0], rerun::Angle::Radians(TAU / 8.0)),
rerun::Scale3D::from(2.0),
),
)?;
rec.log("base/rotated_scaled", &arrow)?;
Ok(())
}
Fields§
§transform: Transform3D
The transform
Implementations§
source§impl Transform3D
impl Transform3D
sourcepub const NUM_COMPONENTS: usize = 2usize
pub const NUM_COMPONENTS: usize = 2usize
The total number of components in the archetype: 1 required, 1 recommended, 0 optional
source§impl Transform3D
impl Transform3D
sourcepub fn new(transform: impl Into<Transform3D>) -> Transform3D
pub fn new(transform: impl Into<Transform3D>) -> Transform3D
Create a new Transform3D
.
source§impl Transform3D
impl Transform3D
sourcepub const IDENTITY: Transform3D = _
pub const IDENTITY: Transform3D = _
Identity transform, i.e. parent & child are in the same space.
sourcepub fn from_translation(translation: impl Into<Vec3D>) -> Transform3D
pub fn from_translation(translation: impl Into<Vec3D>) -> Transform3D
From a translation.
sourcepub fn from_rotation(rotation: impl Into<Rotation3D>) -> Transform3D
pub fn from_rotation(rotation: impl Into<Rotation3D>) -> Transform3D
From a rotation
sourcepub fn from_scale(scale: impl Into<Scale3D>) -> Transform3D
pub fn from_scale(scale: impl Into<Scale3D>) -> Transform3D
From a scale
sourcepub fn from_translation_rotation(
translation: impl Into<Vec3D>,
rotation: impl Into<Rotation3D>
) -> Transform3D
pub fn from_translation_rotation( translation: impl Into<Vec3D>, rotation: impl Into<Rotation3D> ) -> Transform3D
From a translation applied after a rotation, known as a rigid transformation.
sourcepub fn from_translation_mat3x3(
translation: impl Into<Vec3D>,
mat3x3: impl Into<Mat3x3>
) -> Transform3D
pub fn from_translation_mat3x3( translation: impl Into<Vec3D>, mat3x3: impl Into<Mat3x3> ) -> Transform3D
From a translation applied after a 3x3 matrix.
sourcepub fn from_translation_rotation_scale(
translation: impl Into<Vec3D>,
rotation: impl Into<Rotation3D>,
scale: impl Into<Scale3D>
) -> Transform3D
pub fn from_translation_rotation_scale( translation: impl Into<Vec3D>, rotation: impl Into<Rotation3D>, scale: impl Into<Scale3D> ) -> Transform3D
From a translation, applied after a rotation & scale, known as an affine transformation.
sourcepub fn from_rotation_scale(
rotation: impl Into<Rotation3D>,
scale: impl Into<Scale3D>
) -> Transform3D
pub fn from_rotation_scale( rotation: impl Into<Rotation3D>, scale: impl Into<Scale3D> ) -> Transform3D
From a rotation & scale
sourcepub fn from_parent(self) -> Transform3D
pub fn from_parent(self) -> Transform3D
Indicate that this transform is from parent to child. This is the oppositve of the default, which is from child to parent.
Trait Implementations§
source§impl Archetype for Transform3D
impl Archetype for Transform3D
§type Indicator = GenericIndicatorComponent<Transform3D>
type Indicator = GenericIndicatorComponent<Transform3D>
The associated indicator component, whose presence indicates that the high-level
archetype-based APIs were used to log the data. Read more
source§fn name() -> ArchetypeName
fn name() -> ArchetypeName
The fully-qualified name of this archetype, e.g.
rerun.archetypes.Points2D
.source§fn indicator() -> MaybeOwnedComponentBatch<'static>
fn indicator() -> MaybeOwnedComponentBatch<'static>
source§fn required_components() -> Cow<'static, [ComponentName]>
fn required_components() -> Cow<'static, [ComponentName]>
Returns the names of all components that must be provided by the user when constructing
this archetype.
source§fn recommended_components() -> Cow<'static, [ComponentName]>
fn recommended_components() -> Cow<'static, [ComponentName]>
Returns the names of all components that should be provided by the user when constructing
this archetype.
source§fn optional_components() -> Cow<'static, [ComponentName]>
fn optional_components() -> Cow<'static, [ComponentName]>
Returns the names of all components that may be provided by the user when constructing
this archetype.
source§fn all_components() -> Cow<'static, [ComponentName]>
fn all_components() -> Cow<'static, [ComponentName]>
Returns the names of all components that must, should and may be provided by the user when
constructing this archetype. Read more
source§fn from_arrow_components(
arrow_data: impl IntoIterator<Item = (ComponentName, Box<dyn Array>)>
) -> Result<Transform3D, DeserializationError>
fn from_arrow_components( arrow_data: impl IntoIterator<Item = (ComponentName, Box<dyn Array>)> ) -> Result<Transform3D, DeserializationError>
Given an iterator of Arrow arrays and their respective
ComponentNames
, deserializes them
into this archetype. Read moresource§fn from_arrow(
data: impl IntoIterator<Item = (Field, Box<dyn Array>)>
) -> Result<Self, DeserializationError>where
Self: Sized,
fn from_arrow(
data: impl IntoIterator<Item = (Field, Box<dyn Array>)>
) -> Result<Self, DeserializationError>where
Self: Sized,
Given an iterator of Arrow arrays and their respective field metadata, deserializes them
into this archetype. Read more
source§impl AsComponents for Transform3D
impl AsComponents for Transform3D
source§fn as_component_batches(&self) -> Vec<MaybeOwnedComponentBatch<'_>>
fn as_component_batches(&self) -> Vec<MaybeOwnedComponentBatch<'_>>
Exposes the object’s contents as a set of
ComponentBatch
s. Read moresource§impl Clone for Transform3D
impl Clone for Transform3D
source§fn clone(&self) -> Transform3D
fn clone(&self) -> Transform3D
Returns a copy 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 Debug for Transform3D
impl Debug for Transform3D
source§impl PartialEq for Transform3D
impl PartialEq for Transform3D
source§fn eq(&self, other: &Transform3D) -> bool
fn eq(&self, other: &Transform3D) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl SizeBytes for Transform3D
impl SizeBytes for Transform3D
source§fn heap_size_bytes(&self) -> u64
fn heap_size_bytes(&self) -> u64
Returns the total size of
self
on the heap, in bytes.source§fn total_size_bytes(&self) -> u64
fn total_size_bytes(&self) -> u64
Returns the total size of
self
in bytes, accounting for both stack and heap space.source§fn stack_size_bytes(&self) -> u64
fn stack_size_bytes(&self) -> u64
Returns the total size of
self
on the stack, in bytes. Read moresource§impl ToArchetype<Transform3D> for LatestAtResults
impl ToArchetype<Transform3D> for LatestAtResults
source§fn to_archetype(
&self,
resolver: &PromiseResolver
) -> PromiseResult<Result<Transform3D, QueryError>>
fn to_archetype( &self, resolver: &PromiseResolver ) -> PromiseResult<Result<Transform3D, QueryError>>
Converts the result into an
re_types_core::Archetype
. Read moreimpl StructuralPartialEq for Transform3D
Auto Trait Implementations§
impl Freeze for Transform3D
impl RefUnwindSafe for Transform3D
impl Send for Transform3D
impl Sync for Transform3D
impl Unpin for Transform3D
impl UnwindSafe for Transform3D
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> 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>,
Casts the value.
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>
Casts the value.
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<Src, Dst> LosslessTryInto<Dst> for Srcwhere
Dst: LosslessTryFrom<Src>,
impl<Src, Dst> LosslessTryInto<Dst> for Srcwhere
Dst: LosslessTryFrom<Src>,
source§fn lossless_try_into(self) -> Option<Dst>
fn lossless_try_into(self) -> Option<Dst>
Performs the conversion.
source§impl<Src, Dst> LossyInto<Dst> for Srcwhere
Dst: LossyFrom<Src>,
impl<Src, Dst> LossyInto<Dst> for Srcwhere
Dst: LossyFrom<Src>,
source§fn lossy_into(self) -> Dst
fn lossy_into(self) -> Dst
Performs the conversion.
source§impl<T> OverflowingAs for T
impl<T> OverflowingAs for T
source§fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
Casts the value.
source§impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
source§fn overflowing_cast_from(src: Src) -> (Dst, bool)
fn overflowing_cast_from(src: Src) -> (Dst, bool)
Casts the value.
source§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<T> SaturatingAs for T
impl<T> SaturatingAs for T
source§fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
Casts the value.
source§impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
source§fn saturating_cast_from(src: Src) -> Dst
fn saturating_cast_from(src: Src) -> Dst
Casts the value.
source§impl<T> UnwrappedAs for T
impl<T> UnwrappedAs for T
source§fn unwrapped_as<Dst>(self) -> Dstwhere
T: UnwrappedCast<Dst>,
fn unwrapped_as<Dst>(self) -> Dstwhere
T: UnwrappedCast<Dst>,
Casts the value.
source§impl<Src, Dst> UnwrappedCastFrom<Src> for Dstwhere
Src: UnwrappedCast<Dst>,
impl<Src, Dst> UnwrappedCastFrom<Src> for Dstwhere
Src: UnwrappedCast<Dst>,
source§fn unwrapped_cast_from(src: Src) -> Dst
fn unwrapped_cast_from(src: Src) -> Dst
Casts the value.
source§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
source§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
source§fn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
source§impl<T> WrappingAs for T
impl<T> WrappingAs for T
source§fn wrapping_as<Dst>(self) -> Dstwhere
T: WrappingCast<Dst>,
fn wrapping_as<Dst>(self) -> Dstwhere
T: WrappingCast<Dst>,
Casts the value.
source§impl<Src, Dst> WrappingCastFrom<Src> for Dstwhere
Src: WrappingCast<Dst>,
impl<Src, Dst> WrappingCastFrom<Src> for Dstwhere
Src: WrappingCast<Dst>,
source§fn wrapping_cast_from(src: Src) -> Dst
fn wrapping_cast_from(src: Src) -> Dst
Casts the value.