C# Class KerbCam.QuatUtil

Utility functions for Quaternions.
Datei anzeigen Open project: huin/kerbcam

Public Methods

Method Description
Abs ( Quaternion &q ) : float
AbsSq ( Quaternion &q ) : float
Add ( Quaternion &a, Quaternion &b ) : Quaternion
Add ( Quaternion &r, Quaternion &a, Quaternion &b ) : void
Div ( Quaternion &q, float denom ) : Quaternion
Div ( Quaternion &r, Quaternion &a, Quaternion &b ) : void
Div ( Quaternion &r, Quaternion &q, float denom ) : void
Exp ( Quaternion &q ) : Quaternion
Exp ( Quaternion &r, Quaternion &q ) : void
HermiteQuaternion ( float t, Quaternion &qa, Quaternion &wa, Quaternion &qb, Quaternion &wb ) : Quaternion

Hermite Quaternion Curve by Kim, Kim and Shin.

LenVec ( Quaternion &q ) : float
LenVecSq ( Quaternion &q ) : float
Log ( Quaternion &q ) : Quaternion
Log ( Quaternion &r, Quaternion &q ) : void
LogInv ( Quaternion &a, Quaternion &b ) : Quaternion
Mul ( Quaternion &q, float denom ) : Quaternion
Mul ( Quaternion &r, Quaternion &q, float factor ) : void
Normalize ( Quaternion &q ) : Quaternion
Normalize ( Quaternion &r, Quaternion &q ) : void
Pow ( Quaternion &r, Quaternion &q, float power ) : void
RotateDiff ( Quaternion a, Quaternion b ) : Quaternion
Slerp ( Quaternion a, Quaternion b, float t ) : Quaternion

Broken implementation of slerp, used to test the basic quaternion functions.

SquadInterpolate ( float t, Quaternion q0, Quaternion q1, Quaternion s0, Quaternion s1 ) : Quaternion
SquadTangent ( Quaternion start, Quaternion mid, Quaternion end ) : Quaternion

Method Details

Abs() public static method

public static Abs ( Quaternion &q ) : float
q UnityEngine.Quaternion
return float

AbsSq() public static method

public static AbsSq ( Quaternion &q ) : float
q UnityEngine.Quaternion
return float

Add() public static method

public static Add ( Quaternion &a, Quaternion &b ) : Quaternion
a UnityEngine.Quaternion
b UnityEngine.Quaternion
return UnityEngine.Quaternion

Add() public static method

public static Add ( Quaternion &r, Quaternion &a, Quaternion &b ) : void
r UnityEngine.Quaternion
a UnityEngine.Quaternion
b UnityEngine.Quaternion
return void

Div() public static method

public static Div ( Quaternion &q, float denom ) : Quaternion
q UnityEngine.Quaternion
denom float
return UnityEngine.Quaternion

Div() public static method

public static Div ( Quaternion &r, Quaternion &a, Quaternion &b ) : void
r UnityEngine.Quaternion
a UnityEngine.Quaternion
b UnityEngine.Quaternion
return void

Div() public static method

public static Div ( Quaternion &r, Quaternion &q, float denom ) : void
r UnityEngine.Quaternion
q UnityEngine.Quaternion
denom float
return void

Exp() public static method

public static Exp ( Quaternion &q ) : Quaternion
q UnityEngine.Quaternion
return UnityEngine.Quaternion

Exp() public static method

public static Exp ( Quaternion &r, Quaternion &q ) : void
r UnityEngine.Quaternion
q UnityEngine.Quaternion
return void

HermiteQuaternion() public static method

Hermite Quaternion Curve by Kim, Kim and Shin.
public static HermiteQuaternion ( float t, Quaternion &qa, Quaternion &wa, Quaternion &qb, Quaternion &wb ) : Quaternion
t float Interpolation parameter, between 0 and 1.
qa UnityEngine.Quaternion Start orientation.
wa UnityEngine.Quaternion Start angular velocity.
qb UnityEngine.Quaternion End orientation.
wb UnityEngine.Quaternion End angular velocity.
return UnityEngine.Quaternion

LenVec() public static method

public static LenVec ( Quaternion &q ) : float
q UnityEngine.Quaternion
return float

LenVecSq() public static method

public static LenVecSq ( Quaternion &q ) : float
q UnityEngine.Quaternion
return float

Log() public static method

public static Log ( Quaternion &q ) : Quaternion
q UnityEngine.Quaternion
return UnityEngine.Quaternion

Log() public static method

public static Log ( Quaternion &r, Quaternion &q ) : void
r UnityEngine.Quaternion
q UnityEngine.Quaternion
return void

LogInv() public static method

public static LogInv ( Quaternion &a, Quaternion &b ) : Quaternion
a UnityEngine.Quaternion
b UnityEngine.Quaternion
return UnityEngine.Quaternion

Mul() public static method

public static Mul ( Quaternion &q, float denom ) : Quaternion
q UnityEngine.Quaternion
denom float
return UnityEngine.Quaternion

Mul() public static method

public static Mul ( Quaternion &r, Quaternion &q, float factor ) : void
r UnityEngine.Quaternion
q UnityEngine.Quaternion
factor float
return void

Normalize() public static method

public static Normalize ( Quaternion &q ) : Quaternion
q UnityEngine.Quaternion
return UnityEngine.Quaternion

Normalize() public static method

public static Normalize ( Quaternion &r, Quaternion &q ) : void
r UnityEngine.Quaternion
q UnityEngine.Quaternion
return void

Pow() public static method

public static Pow ( Quaternion &r, Quaternion &q, float power ) : void
r UnityEngine.Quaternion
q UnityEngine.Quaternion
power float
return void

RotateDiff() public static method

public static RotateDiff ( Quaternion a, Quaternion b ) : Quaternion
a UnityEngine.Quaternion
b UnityEngine.Quaternion
return UnityEngine.Quaternion

Slerp() public static method

Broken implementation of slerp, used to test the basic quaternion functions.
public static Slerp ( Quaternion a, Quaternion b, float t ) : Quaternion
a UnityEngine.Quaternion
b UnityEngine.Quaternion
t float
return UnityEngine.Quaternion

SquadInterpolate() public static method

public static SquadInterpolate ( float t, Quaternion q0, Quaternion q1, Quaternion s0, Quaternion s1 ) : Quaternion
t float
q0 UnityEngine.Quaternion
q1 UnityEngine.Quaternion
s0 UnityEngine.Quaternion
s1 UnityEngine.Quaternion
return UnityEngine.Quaternion

SquadTangent() public static method

public static SquadTangent ( Quaternion start, Quaternion mid, Quaternion end ) : Quaternion
start UnityEngine.Quaternion
mid UnityEngine.Quaternion
end UnityEngine.Quaternion
return UnityEngine.Quaternion