pub struct LieGroupSO3 {
pub matrix: [[f64; 3]; 3],
}Expand description
Element of SO(3): 3×3 rotation matrix stored row-major.
Fields§
§matrix: [[f64; 3]; 3]Row-major 3×3 rotation matrix
Implementations§
Source§impl LieGroupSO3
impl LieGroupSO3
Sourcepub fn from_axis_angle(omega: &[f64; 3]) -> Self
pub fn from_axis_angle(omega: &[f64; 3]) -> Self
Rodrigues’ rotation formula: R(ω) = I + sin(θ)/θ [ω]× + (1-cos(θ))/θ² [ω]ײ
where ω is the rotation axis-angle vector (|ω| = θ).
Sourcepub fn compose(&self, other: &LieGroupSO3) -> LieGroupSO3
pub fn compose(&self, other: &LieGroupSO3) -> LieGroupSO3
Compose two rotations: (self * other).apply(v) = self.apply(other.apply(v))
Sourcepub fn transpose(&self) -> LieGroupSO3
pub fn transpose(&self) -> LieGroupSO3
Transpose = inverse for SO(3).
Trait Implementations§
Source§impl Clone for LieGroupSO3
impl Clone for LieGroupSO3
Source§fn clone(&self) -> LieGroupSO3
fn clone(&self) -> LieGroupSO3
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 moreAuto Trait Implementations§
impl Freeze for LieGroupSO3
impl RefUnwindSafe for LieGroupSO3
impl Send for LieGroupSO3
impl Sync for LieGroupSO3
impl Unpin for LieGroupSO3
impl UnsafeUnpin for LieGroupSO3
impl UnwindSafe for LieGroupSO3
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