public void Move(StylusAxis axis, float value)
        {
            switch (axis)
            {
            case StylusAxis.X:
                _input.HMUTransform.localPosition += Vector3.right * value;
                break;

            case StylusAxis.Y:
                _input.HMUTransform.localPosition += Vector3.up * value;
                break;

            case StylusAxis.Z:
                _input.HMUTransform.localPosition += Vector3.forward * value;
                break;
            }

            CalibrationManager.SaveHMUTransform(_input.HMUTransform);
        }
        public void Rotate(StylusAxis axis, float value)
        {
            switch (axis)
            {
            case StylusAxis.X:
                _input.HMUTransform.Rotate(Vector3.right, value);
                break;

            case StylusAxis.Y:
                _input.HMUTransform.Rotate(Vector3.up, value);
                break;

            case StylusAxis.Z:
                _input.HMUTransform.Rotate(Vector3.forward, value);
                break;
            }

            CalibrationManager.SaveHMUTransform(_input.HMUTransform);
        }
Пример #3
0
        // Calculates the offset of all values
        private void CalculateOffset()
        {
            _calibratedPositions.Remove(_calibratedMax);
            _calibratedPositions.Remove(_calibratedMin);

            Vector3 averageOffset = Vector3.zero;

            foreach (var position in _calibratedPositions)
            {
                averageOffset += position;
            }

            averageOffset /= _calibratedPositions.Count;

            CalibrationManager.SetOffset(averageOffset);

            DescriptionTextHandler.ChangeText(_headline, _textAtStart);

            _calibrationStarted = false;
        }
Пример #4
0
        /// <summary>
        /// Resets to the entry state
        /// </summary>
        public void OnStylusBackClick()
        {
            if (_currentTarget != null)
            {
                Destroy(_currentTarget.gameObject);
            }

            if (_calibrationStarted)
            {
                CalibrationManager.SetOffset(Vector3.zero);
                _calibrationStarted = false;
                DescriptionTextHandler.ChangeText(_headline, _textAtStart);
                return;
            }

            _calibratedPositions.Clear();
            DescriptionTextHandler.ChangeText(_headline, _textWhileCalibration);
            _calibrationStarted = true;

            NextPosition();
        }
 /// <summary>
 /// Registers the click method
 /// </summary>
 private void Start()
 {
     GetComponent <Button>().onClick.AddListener(() => CalibrationManager.AddValueToAxis(Axis, Value));
     _camTransform = Camera.main.transform;
 }