public AngleAxis(Quat _q) { Angle = (float)System.Math.Acos(_q.qs); float fSine = (float)System.Math.Sin(Angle); Angle *= 2.0f; Quat Temp = new Quat(_q); Temp.Normalize(); if (System.Math.Abs(fSine) > float.Epsilon) { Axis = Temp.qv / fSine; } else { Axis.Set(0, 0, 0); } }
public Plane(float _nx, float _ny, float _nz, float _d) { n.Set(_nx, _ny, _nz); }
public Quat(float _s, float _i, float _j, float _k) { qs = _s; qv.Set(_i, _j, _k); }