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); }
// 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; }
/// <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; }