示例#1
0
        public void ChangeRecognitionOptions(RecognitionOptions recognitionOptions)
        {
            if (_recognitionRunning)
            {
                if (_currentRecognitionOptions.getStorage() != recognitionOptions.getStorage())
                {
                    if (recognitionOptions.getStorage() != RecognitionOptions.RecognitionStorage.LOCAL)
                    {
                        PikkartARCore.StartEffect();
                    }
                    else
                    {
                        PikkartARCore.StopEffect();
                    }

                    PikkartARCore.ChangeMode(recognitionOptions.getStorage() != RecognitionOptions.RecognitionStorage.LOCAL);
                }

                if (_currentRecognitionOptions.getMode() != recognitionOptions.getMode())
                {
                    if (recognitionOptions.getMode() != RecognitionOptions.RecognitionMode.TAP_TO_SCAN)
                    {
                        stopTimers();
                    }
                    else
                    {
                        scheduleTimers();
                    }
                }
            }

            _currentRecognitionOptions = recognitionOptions;
        }
示例#2
0
        /// <summary>
        /// Starts the native service recognition.
        /// </summary>
        /// <param name="recognitionOptions">Recognition options.</param>
        /// <param name="recognitionListener">Recognition listener(MainScript).</param>
        public void StartRecognition(RecognitionOptions recognitionOptions, IRecognitionListener recognitionListener)
        {
            StopRecognition();

            SyncMarkersWithFolder();

            _recognitionRunning = true;
            _active             = true;

            _currentRecognitionOptions = recognitionOptions;
            _recognitionListener       = recognitionListener;
            _dataProvider = new RecognitionDataProvider(recognitionOptions.getCloudInfo(), this, GetDeviceId());

#if !UNITY_EDITOR
            if (!LoadSavedCameraParams())
            {
                _dataProvider.ExecuteGetCameraParamFromServer(true);
            }
#endif

            PikkartARCore.ChangeMode(_currentRecognitionOptions.getStorage() != RecognitionOptions.RecognitionStorage.LOCAL);
            PikkartARCore.StartRecognition(_currentRecognitionOptions.getStorage() != RecognitionOptions.RecognitionStorage.LOCAL, false);

            PikkartARCore.StartEffect();

            _markerId = "";

            if (_currentRecognitionOptions.getMode() == RecognitionOptions.RecognitionMode.TAP_TO_SCAN)
            {
                scheduleTimers();
            }
        }