示例#1
0
        private void UseArMarkers()
        {
            var pos = MarkerTracker.GetPosition();
            var rot = MarkerTracker.GetRotation();

            switch (CurrentMode)
            {
            case TrackingMode.Optitrack:
                CurrentMode = TrackingMode.TransitionToArMarker;
                StartAnimations(pos, rot);
                ApplyTransform(_positionAnimation.CurrentValue, _rotationAnimation.CurrentValue);
                break;

            case TrackingMode.ArMarker:
                ApplyTransform(pos, rot);
                break;

            case TrackingMode.TransitionToArMarker:
                AdjustAnimations(pos, rot);
                ApplyTransform(_positionAnimation.CurrentValue, _rotationAnimation.CurrentValue);
                break;

            case TrackingMode.TransitionToOptitrack:
                CurrentMode = TrackingMode.TransitionToArMarker;
                RestartAnimations(pos, rot);
                ApplyTransform(_positionAnimation.CurrentValue, _rotationAnimation.CurrentValue);
                break;
            }
        }