Esempio n. 1
0
        void ITangoPose.OnTangoPoseAvailable(TangoPoseData poseData)
        {
            if (tango.IsServiceConnected)
            {
                if (poseData.IsLocalized() || poseData.IsTracking())
                {
                    isTracking = true;
                }
                else
                {
                    isTracking = false;

                    if (poseData.IsInvalid())
                    {
                        if (tango.m_motionTrackingAutoReset)
                        {
                            Debug.Log("TangoApplication is recovering motion tracking...");
                        }
                        else
                        {
                            Debug.LogWarning("Manually restart Tango service.");
                        }
                    }
                }
            }
        }
Esempio n. 2
0
        void ITangoPose.OnTangoPoseAvailable(TangoPoseData poseData)
        {
            // Don't do anything when not supposed to.
            if (!isActiveAndEnabled)
            {
                return;
            }

            if (poseData.IsLocalized())
            {
                Vector3 p        = player.position;
                bool    tooClose = false;

                foreach (var m in markers)
                {
                    Vector3 _p = m.position;

                    if (Vector3.Distance(_p, p) < minimumDistance)
                    {
                        tooClose = true;
                        break;
                    }
                }

                if (!tooClose)
                {
                    var parent = markerPrefab.parent;
                    var newM   = Instantiate(markerPrefab, parent);
                    markers.Add(newM);
                }
            }
        }
Esempio n. 3
0
        void ITangoPose.OnTangoPoseAvailable(TangoPoseData poseData)
        {
            if (isActiveAndEnabled)
            {
                toggleValid.isOn         = poseData.IsValid();
                togglePoseBaseADF.isOn   = poseData.framePair.baseFrame == TangoEnums.TangoCoordinateFrameType.TANGO_COORDINATE_FRAME_AREA_DESCRIPTION;
                togglePoseBaseSOS.isOn   = poseData.framePair.baseFrame == TangoEnums.TangoCoordinateFrameType.TANGO_COORDINATE_FRAME_START_OF_SERVICE;
                togglePoseTargetSOS.isOn = poseData.framePair.targetFrame == TangoEnums.TangoCoordinateFrameType.TANGO_COORDINATE_FRAME_START_OF_SERVICE;
                togglePoseTargetDVC.isOn = poseData.framePair.targetFrame == TangoEnums.TangoCoordinateFrameType.TANGO_COORDINATE_FRAME_DEVICE;

                if (poseData.IsLocalized())
                {
                    textLocalizationCount.text = ++localizationCount + "";
                }
            }
        }