public static Vector3G Rotate(QuaternionG rotation, Vector3G vector) { Vector3G vectorg; QuaternionG.Mult(ref rotation, ref vector, out vectorg); return(vectorg); }
private void Update() { if ((this.R == null) || (this.R.Length == 0)) { this.unity = Quaternion.identity; this.facep = QuaternionG.identity; } else if (this.revMul) { int index = this.R.Length - 1; this.unity = Quaternion.Euler(this.R[index]); Vector3G deg = new Vector3G(this.R[index]); QuaternionG.Euler(ref deg, out this.facep); index--; while (index >= 0) { QuaternionG ng; this.unity = Quaternion.Euler(this.R[index]) * this.unity; deg.f = this.R[index]; QuaternionG.Euler(ref deg, out ng); QuaternionG.Mult(ref ng, ref this.facep, out this.facep); index--; } } else { int num2 = 0; this.unity = Quaternion.Euler(this.R[num2]); Vector3G vectorg2 = new Vector3G(this.R[num2]); QuaternionG.Euler(ref vectorg2, out this.facep); num2++; while (num2 < this.R.Length) { QuaternionG ng2; this.unity *= Quaternion.Euler(this.R[num2]); vectorg2.f = this.R[num2]; QuaternionG.Euler(ref vectorg2, out ng2); QuaternionG.Mult(ref this.facep, ref ng2, out this.facep); num2++; } } }
private void Update() { QuaternionG quaternionG; QuaternionG quaternionG1; if (this.R == null || (int)this.R.Length == 0) { this.unity = Quaternion.identity; this.facep = QuaternionG.identity; } else if (!this.revMul) { int i = 0; this.unity = Quaternion.Euler(this.R[i]); Vector3G vector3G = new Vector3G(this.R[i]); QuaternionG.Euler(ref vector3G, out this.facep); for (i++; i < (int)this.R.Length; i++) { QuaternionTest quaternionTest = this; quaternionTest.unity = quaternionTest.unity * Quaternion.Euler(this.R[i]); vector3G.f = this.R[i]; QuaternionG.Euler(ref vector3G, out quaternionG1); QuaternionG quaternionG2 = this.facep; QuaternionG.Mult(ref quaternionG2, ref quaternionG1, out this.facep); } } else { int length = (int)this.R.Length - 1; this.unity = Quaternion.Euler(this.R[length]); Vector3G r = new Vector3G(this.R[length]); QuaternionG.Euler(ref r, out this.facep); for (length--; length >= 0; length--) { this.unity = Quaternion.Euler(this.R[length]) * this.unity; r.f = this.R[length]; QuaternionG.Euler(ref r, out quaternionG); QuaternionG.Mult(ref quaternionG, ref this.facep, out this.facep); } } }
// Token: 0x06003DEB RID: 15851 RVA: 0x000DF8D0 File Offset: 0x000DDAD0 private void Update() { if (this.R == null || this.R.Length == 0) { this.unity = Quaternion.identity; this.facep = QuaternionG.identity; } else if (this.revMul) { int i = this.R.Length - 1; this.unity = Quaternion.Euler(this.R[i]); Vector3G vector3G; vector3G..ctor(this.R[i]); QuaternionG.Euler(ref vector3G, ref this.facep); for (i--; i >= 0; i--) { this.unity = Quaternion.Euler(this.R[i]) * this.unity; vector3G.f = this.R[i]; QuaternionG quaternionG; QuaternionG.Euler(ref vector3G, ref quaternionG); QuaternionG.Mult(ref quaternionG, ref this.facep, ref this.facep); } } else { int j = 0; this.unity = Quaternion.Euler(this.R[j]); Vector3G vector3G2; vector3G2..ctor(this.R[j]); QuaternionG.Euler(ref vector3G2, ref this.facep); for (j++; j < this.R.Length; j++) { this.unity *= Quaternion.Euler(this.R[j]); vector3G2.f = this.R[j]; QuaternionG quaternionG2; QuaternionG.Euler(ref vector3G2, ref quaternionG2); QuaternionG quaternionG3 = this.facep; QuaternionG.Mult(ref quaternionG3, ref quaternionG2, ref this.facep); } } }