Trait nphysics3d::utils::GeneralizedCross [−][src]
pub trait GeneralizedCross { type Rhs; type CrossVector; type CrossMatrix; type CrossMatrixTr; fn gcross(&self, rhs: &Self::Rhs) -> Self::CrossVector; fn gcross_matrix(&self) -> Self::CrossMatrix; fn gcross_matrix_tr(&self) -> Self::CrossMatrixTr; }
This is a non-standard generalization of the cross product design exclusively to group the 3D cross product and the 2D perpendicular product behind the same interface.
Associated Types
type Rhs
The right-hand-side of this cross product.
type CrossVector
The result type of the this (non-standard) generalized cross product.
type CrossMatrix
The matrix representation of this (non-standard) generalized cross product.
type CrossMatrixTr
The transposed matrix representation of this (non-standard) generalized cross product.
Required Methods
fn gcross(&self, rhs: &Self::Rhs) -> Self::CrossVector
Computes this (non-standard) generalized cross product.
fn gcross_matrix(&self) -> Self::CrossMatrix
Computes the matrix represenattion of this (non-standard) generalized cross product.
fn gcross_matrix_tr(&self) -> Self::CrossMatrixTr
Computes the transposed matrix represenattion of this (non-standard) generalized cross product.
Implementations on Foreign Types
impl<N: Real> GeneralizedCross for Vector1<N>
[src]
impl<N: Real> GeneralizedCross for Vector1<N>
type Rhs = Vector2<N>
type CrossVector = Vector2<N>
type CrossMatrix = Matrix2<N>
type CrossMatrixTr = Matrix2<N>
fn gcross(&self, rhs: &Vector2<N>) -> Vector2<N>
[src]
fn gcross(&self, rhs: &Vector2<N>) -> Vector2<N>
fn gcross_matrix(&self) -> Matrix2<N>
[src]
fn gcross_matrix(&self) -> Matrix2<N>
fn gcross_matrix_tr(&self) -> Matrix2<N>
[src]
fn gcross_matrix_tr(&self) -> Matrix2<N>
impl<N: Real> GeneralizedCross for Vector2<N>
[src]
impl<N: Real> GeneralizedCross for Vector2<N>
type Rhs = Vector2<N>
type CrossVector = Vector1<N>
type CrossMatrix = RowVector2<N>
type CrossMatrixTr = Vector2<N>
fn gcross(&self, rhs: &Vector2<N>) -> Vector1<N>
[src]
fn gcross(&self, rhs: &Vector2<N>) -> Vector1<N>
fn gcross_matrix(&self) -> RowVector2<N>
[src]
fn gcross_matrix(&self) -> RowVector2<N>
fn gcross_matrix_tr(&self) -> Vector2<N>
[src]
fn gcross_matrix_tr(&self) -> Vector2<N>
impl<N: Real> GeneralizedCross for Vector3<N>
[src]
impl<N: Real> GeneralizedCross for Vector3<N>
type Rhs = Vector3<N>
type CrossVector = Vector3<N>
type CrossMatrix = Matrix3<N>
type CrossMatrixTr = Matrix3<N>
fn gcross(&self, rhs: &Vector3<N>) -> Vector3<N>
[src]
fn gcross(&self, rhs: &Vector3<N>) -> Vector3<N>
fn gcross_matrix(&self) -> Matrix3<N>
[src]
fn gcross_matrix(&self) -> Matrix3<N>
fn gcross_matrix_tr(&self) -> Matrix3<N>
[src]
fn gcross_matrix_tr(&self) -> Matrix3<N>