using UnityEngine; using o0.Bow; using System.Linq; public class o09AxisCSBridge { public o09AxisCS o09AxisCS = new o09AxisCS(); public Quaternion Update_f(Vector3 AccOld, Vector3 GyrOld, Vector3 MagOld, long TimeGapOld) { return o09AxisCS.Update(AccOld, GyrOld, MagOld, TimeGapOld); } public void SetIdentity() { o09AxisCS.SetIdentity(); } public Vector3 GetGyrOld_f() { return o09AxisCS.States.LastOrDefault().Gyr; } public o09Axis.State GetLastState_f() { o09AxisCS.State s = o09AxisCS.getLastState(); o09Axis.State state = new o09Axis.State(); state.TimeGap = System.Convert.ToInt32(s.TimeGap); state.Acc = s.Acc; state.AccSmooth = s.AccSmooth; state.AccVariance = (float) s.AccVariance; state.Gyr = s.Gyr; state.Mag = s.Mag; state.MagSmooth = s.MagSmooth; state.Qua = s.Qua; state.QuaSmooth = s.QuaSmooth; state.Variance = (float) s.AccVariance; return state; } public Vector3 GetAccIdentity_f() { return o09AxisCS.AccIdentity; } public Vector3 GetMagIdentity_f() { return o09AxisCS.MagIdentity; } public void SetAccIdentity(o09Axis.Vector3D value) { o09AxisCS.AccIdentity.x = (float) value.x; o09AxisCS.AccIdentity.y = (float) value.y; o09AxisCS.AccIdentity.z = (float) value.z; } public void SetMagIdentity(o09Axis.Vector3D value) { o09AxisCS.MagIdentity.x = (float) value.x; o09AxisCS.MagIdentity.y = (float) value.y; o09AxisCS.MagIdentity.z = (float) value.z; } }