Exemplo n.º 1
0
        protected override void Recv_sensor(byte[] data)
        {
            base.Recv_sensor(data);
            int type = data[0];

            // Motion Sensor https://toio.github.io/toio-spec/docs/2.1.0/ble_sensor
            if (1 == type)
            {
                var      _isDoubleTap = data[3] == 1 ? true : false;
                PoseType _pose        = (PoseType)data[4];

                if (_isDoubleTap != this.isDoubleTap)
                {
                    this.isDoubleTap = _isDoubleTap;
                    if (_isDoubleTap)
                    {
                        this.doubleTapCallback.Notify(this);
                    }
                }

                if (_pose != this.pose)
                {
                    this.pose = _pose;
                    this.poseCallback.Notify(this);
                }
            }
        }
Exemplo n.º 2
0
        public void GetPoseBadNodes()
        {
            const int kBuffMaxSize = 4000;

            byte[]   buffer   = new byte[kBuffMaxSize];
            PoseType poseType = new PoseType();

            Plugin.SystemApi.GetPose("depth", "color", ref buffer, out poseType);

            double expectedPositionX = 0.0;
            double expectedPositionY = 0.0;
            double expectedPositionZ = 0.0;

            Assert.AreEqual(expectedPositionX, poseType.Position.Value.X);
            Assert.AreEqual(expectedPositionY, poseType.Position.Value.Y);
            Assert.AreEqual(expectedPositionZ, poseType.Position.Value.Z);
        }
Exemplo n.º 3
0
        public void GetPose()
        {
            const int kBuffMaxSize = 4000;

            byte[]   buffer   = new byte[kBuffMaxSize];
            PoseType poseType = new PoseType();

            Plugin.SystemApi.GetPose("depth", "rgb", ref buffer, out poseType);

            double expectedPositionX = -0.02749644;
            double expectedPositionY = 0.001773831;
            double expectedPositionZ = 0.001428126;

            Assert.AreEqual(expectedPositionX, poseType.Position.Value.X);
            Assert.AreEqual(expectedPositionY, poseType.Position.Value.Y);
            Assert.AreEqual(expectedPositionZ, poseType.Position.Value.Z);
        }
Exemplo n.º 4
0
    public void SetPose(PoseType type)
    {
        if (type == CurrentType)
        {
            return;
        }
        else
        {
            CurrentType = type;
        }

        Pose selected = null;

        foreach (Pose pose in Poses)
        {
            if (type == pose.poseType)
            {
                selected = pose;
                break;
            }
        }

        if (selected == null)
        {
            return;
        }

        body.sprite  = selected.body;
        left.sprite  = selected.leftHand;
        right.sprite = selected.rightHand;

        body.color  = Color;
        left.color  = Color;
        right.color = Color;
        glow.color  = Color;
    }
Exemplo n.º 5
0
 public static Quaternion FrameGetOrientation(PoseType type)
 {
     return(VarjoManager.Instance.GetHMDOrientation(type));
 }
Exemplo n.º 6
0
 public static Vector3 FrameGetPosition(PoseType type)
 {
     return(VarjoManager.Instance.GetHMDPosition(type));
 }
Exemplo n.º 7
0
 public static extern Result training_collect_data(IntPtr dataset, PoseType pose, libmyo.TrainingCollectStatus callback, IntPtr userData, IntPtr error);
Exemplo n.º 8
0
 public static bool Contains(this PoseType source, PoseType poseType)
 {
     return(source == (source | poseType) && poseType != (PoseType)0);
 }
Exemplo n.º 9
0
 public PoseTypePair(EventType eventType_, PoseType poseType_)
 {
     eventType = eventType_;
     poseType  = poseType_;
 }
Exemplo n.º 10
0
 public static extern Result training_collect_data(IntPtr dataset, PoseType pose, libmyo.TrainingCollectStatus callback, IntPtr userData, IntPtr error);