public void Init(GestureConfigParams Param) { m_NativeParam = new NativeGestureConfigParam(); m_NativeParam.IsUsingSubThread = Convert.ToInt32(Param.IsUsingSubThread); m_NativeParam.ReturnInfoType = (int)Param.GestureReturnInfoType; m_NativeParam.PlayerNum = Param.PlayerNum; m_NativeParam.SkeletonVelocityFrames = Param.SkeletonVelocityFrames; m_NativeParam.SkeletonVelocityMulType = (int)Param.SkeletonVelocityMulType; m_NativeParam.SkeletonNum = OrbbecWrapper.availableJoints.Length; SkeletonIndexs = new int[m_NativeParam.SkeletonNum]; for (int i = 0; i < SkeletonIndexs.Length; ++i) { SkeletonIndexs[i] = (int)OrbbecWrapper.availableJoints[i]; } m_NativeParam.SkeletonTypeArray = Marshal.UnsafeAddrOfPinnedArrayElement(SkeletonIndexs, 0); m_NativeParam.IsGetVelocityData = Convert.ToInt32(Param.IsGetVelocityData); GestureNativeMethods.InitGestureNative(m_NativeParam); }
public static extern void InitGestureNative(NativeGestureConfigParam Param);