Exemplo n.º 1
0
        private void OnStatusChanged(PlayerResponse playerResponse)
        {
            if (visualizeFeedback == false)
            {
                return;
            }

            if (_changedFeedback == null)
            {
                return;
            }

            lock (_changedFeedback)
            {
                foreach (var status in playerResponse.Status)
                {
                    var pos = EnumParser.ToPositionType(status.Key);
                    var val = status.Value;

                    byte[] result = new byte[val.Length];
                    for (int i = 0; i < val.Length; i++)
                    {
                        result[i] = (byte)val[i];
                    }
                    var feedback = new HapticFeedback(pos, result);
                    _changedFeedback.Add(feedback);
                }
            }
        }
Exemplo n.º 2
0
        public MainWindow()
        {
            InitializeComponent();
            _player = new HapticPlayer();


            string sssss = "[\"Head\"]";

            var jsonNode = JSON.Parse(sssss);

            foreach (var keyValuePair in jsonNode.AsArray)
            {
                Debug.WriteLine(keyValuePair);

                var positionType = EnumParser.ToPositionType(keyValuePair.Value);

                Debug.WriteLine(positionType);
            }


            foreach (var s in arr)
            {
                try
                {
                    var readAllText = File.ReadAllText(s);

                    var hapticFeedbackFile = CommonUtils.ConvertJsonStringToTactosyFile(readAllText);
                    _player.Register(s, hapticFeedbackFile.Project);

                    var button = new Button();
                    button.Content = s;
                    button.Click  += (sender, args) =>
                    {
                        _player.SubmitRegisteredVestRotation(s, s, new RotationOption(0, 0), new ScaleOption(1, 1));
                    };
                    ButtonContainer.Children.Add(button);
                }
                catch (Exception e)
                {
                    Debug.WriteLine(e.Message + " " + e.StackTrace);
                }
            }
        }
Exemplo n.º 3
0
    private void HapticPlayer_StatusReceived(PlayerResponse obj)
    {
        if (changedFeedback == null)
        {
            return;
        }

        lock (changedFeedback)
        {
            foreach (var status in obj.Status)
            {
                var pos = EnumParser.ToPositionType(status.Key);
                var val = status.Value;

                byte[] result = new byte[val.Length];
                for (int i = 0; i < val.Length; i++)
                {
                    result[i] = (byte)val[i];
                }
                var feedback = new HapticFeedback(pos, result);
                changedFeedback.Add(feedback);
            }
        }
    }