internal void InverseTransform(ref TSVector position, ref TSMatrix orientation) { TSVector.Subtract(ref this.max, ref position, out this.max); TSVector.Subtract(ref this.min, ref position, out this.min); TSVector tSVector; TSVector.Add(ref this.max, ref this.min, out tSVector); tSVector.x *= FP.Half; tSVector.y *= FP.Half; tSVector.z *= FP.Half; TSVector tSVector2; TSVector.Subtract(ref this.max, ref this.min, out tSVector2); tSVector2.x *= FP.Half; tSVector2.y *= FP.Half; tSVector2.z *= FP.Half; TSVector.TransposedTransform(ref tSVector, ref orientation, out tSVector); TSMatrix tSMatrix; TSMath.Absolute(ref orientation, out tSMatrix); TSVector.TransposedTransform(ref tSVector2, ref tSMatrix, out tSVector2); TSVector.Add(ref tSVector, ref tSVector2, out this.max); TSVector.Subtract(ref tSVector, ref tSVector2, out this.min); }