예제 #1
0
        private void OnEnable()
        {
            var rawImage = GetComponent <RawImage>();
            var texture  = new WebCamTexture();

            WebCam.StartWebCam();
            WebCam.WebCamChanged
            .First()
            .Subscribe(_ => transform.rotation = Quaternion.AngleAxis(WebCam.GetDegree(), Vector3.back))
            .AddTo(this);

            WebCam.WebCamChanged
            .Subscribe(x => {
                texture          = x;
                rawImage.texture = x;
            })
            .AddTo(this);

            Observable.EveryFixedUpdate()
            .TakeWhile(_ => verifierManager.CertificateId == null)
            .Subscribe(_ => {
                var data = QrCodeSystem.ReadQrCode(texture);
                if (data != null)
                {
                    verifierManager.OnQrScanned(data);
                    WebCam.StopWebCam();
                    canvasManager.NextCanvas();
                }
            })
            .AddTo(this);
        }
        private void OnEnable()
        {
            var rawImage = GetComponent <RawImage>();
            var texture  = new WebCamTexture();

            WebCam.StartWebCam();
            WebCam.WebCamChanged
            .First()
            .Subscribe(_ => transform.rotation = Quaternion.AngleAxis(WebCam.GetDegree(), Vector3.back))
            .AddTo(this);

            WebCam.WebCamChanged
            .Subscribe(x => {
                texture          = x;
                rawImage.texture = x;
            })
            .AddTo(this);

            Observable.EveryFixedUpdate()
            .TakeWhile(_ => holderManager.TimeStamp == null)
            .Subscribe(_ => {
                holderManager.SetTimeStamp(QrCodeSystem.ReadQrCode(texture));
                if (holderManager.TimeStamp != null)
                {
                    canvasManager.NextCanvas();
                    WebCam.StopWebCam();
                }
            })
            .AddTo(this);
        }
예제 #3
0
        private void Start()
        {
            var           text    = GetComponent <Text>();
            WebCamTexture texture = null;

            WebCam.WebCamChanged
            .Subscribe(x => { texture = x; })
            .AddTo(this);

            Observable.EveryFixedUpdate()
            .Where(_ => texture != null)
            .Subscribe(_ => text.text = QrCodeSystem.ReadQrCode(texture))
            .AddTo(this);
        }