Esempio n. 1
0
    private void OnDestroy()
    {
#if UNITY_ANDROID && AR_ON
        PlayerPrefsHelper.SaveBool("control_box_display_trackables", (bool)Trackables.GetValue());
        PlayerPrefsHelper.SaveBool("control_box_autoCalib", (bool)AutoCalibration.GetValue());
#endif
        PlayerPrefsHelper.SaveBool("control_box_display_connections", (bool)ConnectionsSwitch.GetValue());
    }
Esempio n. 2
0
        void Start()
        {
            sensorTrackingPosition = GetComponentInChildren <SensorTrackingPosition> (true);

            var temp = Trackables.Count;             //Just call to initialize

            UpdateTargetTransforms();

            AR.Tracking.Trackable.TrackableCreated += (sender, e) => {
                var target = sender as Trackable;

                if (target != null)
                {
                    if (trackableLinkNames.Contains(target.name) && !Trackables.Contains(target))
                    {
                        Trackables.Add(target);
                    }
                }
            };

            if (AR.Tracking.Manager.Instance.ActiveTracker != null)
            {
                AR.Tracking.Manager.Instance.ActiveTracker.TrackerStatusChanged += (sender2, e2) => {
                    if (this.IsActive)
                    {
                        if (e2.arg2 == TrackerStatus.Tracking)
                        {
                            UpdateTargetTransforms();
                        }
                    }
                };
            }
            AR.Tracking.Manager.TrackerChanged += (sender, e) => {
                var tracker = e.arg as Tracker;

                if (tracker != null)
                {
                    tracker.TrackerStatusChanged += (sender2, e2) => {
                        if (this.IsActive)
                        {
                            if (e2.arg2 == TrackerStatus.Tracking)
                            {
                                UpdateTargetTransforms();
                            }
                        }
                    };
                }
            };

            ApplicationManager.OnPlayStateChanged += (sender, args) => {
                FeaturePlayState = args.arg;
            };

            Display(false);
        }
Esempio n. 3
0
 public StuffToTrack(Trackables trackedThing, TimeSpan timePassed)
 {
     currentTime      = timePassed;
     currentTrackable = trackedThing;
 }
Esempio n. 4
0
    private void OnProjectOrSceneLoaded(bool project)
    {
        foreach (GameObject obj in ProjectRelatedSettings)
        {
            obj.SetActive(project);
        }
        if (project)
        {
            APSizeSlider.gameObject.SetActive(true);
            APOrientationsVisibility.gameObject.SetActive(true);
            APSizeSlider.value = ProjectManager.Instance.APSize;
            APOrientationsVisibility.SetValue(Base.ProjectManager.Instance.APOrientationsVisible);

            SwitchToProjectParametersBtn.SetInteractivity(true);
            SwitchToProjectParametersBtnImage.color = Color.white;
            GenerateParameterButtons();
            WebsocketManager.Instance.OnProjectParameterAdded   += OnProjectParameterAdded;
            WebsocketManager.Instance.OnProjectParameterRemoved += OnProjectParameterRemoved;
        }
        else
        {
            APSizeSlider.gameObject.SetActive(false);
            APOrientationsVisibility.gameObject.SetActive(false);
            SwitchToProjectParametersBtn.SetInteractivity(false, "Project parameters are available only in project editor.");
            SwitchToProjectParametersBtnImage.color = Color.gray;
        }

        Interactibility.SetValue(Base.SceneManager.Instance.ActionObjectsInteractive);
        RobotsEEVisible.SetValue(Base.SceneManager.Instance.RobotsEEVisible, false);
        ActionObjectsVisibilitySlider.SetValueWithoutNotify(SceneManager.Instance.ActionObjectsVisibility * 100f);

#if UNITY_ANDROID && AR_ON
        recalibrationTime.SetValue(CalibrationManager.Instance.AutoRecalibrateTime);
        Trackables.SetValue(PlayerPrefsHelper.LoadBool("control_box_display_trackables", false));
        CalibrationElements.Interactable = false;
        CalibrationElements.SetValue(true);
        CalibrationElementsTooltip.DisplayAlternativeDescription = true;


        bool useAutoCalib = PlayerPrefsHelper.LoadBool("control_box_autoCalib", true);

        AutoCalibTooltip.DisplayAlternativeDescription = useAutoCalib;


        AutoCalibration.SetValue(useAutoCalib);
        // If the toggle is unchanged, we need to manually call the EnableAutoReCalibration function.
        // If the toggle has changed, the function will be called automatically. So we need to avoid calling it twice.
        if (((bool)AutoCalibration.GetValue() && useAutoCalib) || (!(bool)AutoCalibration.GetValue() && !useAutoCalib))
        {
            EnableAutoReCalibration(useAutoCalib);
        }
#endif
        ConnectionsSwitch.SetValue(PlayerPrefsHelper.LoadBool("control_box_display_connections", true));
        recalibrationTime.SetValue(PlayerPrefsHelper.LoadString("/autoCalib/recalibrationTime", "120"));
        string uri = PlayerPrefsHelper.LoadString("ProjectServiceURI", "");
        ProjectServiceURI.Input.SetValue(GetProjectServiceURI(false));
        if (string.IsNullOrEmpty(uri))
        {
            ResetProjectServiceURIButton.SetInteractivity(false, "Default value is already set");
        }
        else
        {
            ResetProjectServiceURIButton.SetInteractivity(true);
        }
    }