void m_trackableBehaviour_Clicked(VuforiaTrackableEventHandler trackable) { var medias = m_activeResourceMedia[trackable.Identifier]; if (medias != null) { foreach (var m in medias.ToArray()) { if (m.OnSelect != null) { m.OnSelect(); } ObjectInspectorManager.Instance.Select(m.ObjectId); } } var assets = m_activeResourceAssets[trackable.Identifier]; if (assets != null) { foreach (var m in assets.ToArray()) { if (m.OnSelect != null) { m.OnSelect(); } ObjectInspectorManager.Instance.Select(m.ObjectId); } } }
internal void StopTracking(VuforiaTrackableEventHandler m_trackableBehaviour) { if (m_trackingHold.Contains(m_trackableBehaviour)) { m_trackingHold.Remove(m_trackableBehaviour); return; } // Pause all audio/video players var audioPlayers = m_trackableBehaviour.GetComponentsInChildren <AudioSubpanel>(); var videoPlayers = m_trackableBehaviour.GetComponentsInChildren <VideoSubpanel>(); foreach (var ap in audioPlayers) { ap.Pause(); } foreach (var vp in videoPlayers) { vp.Pause(); } List <GameObject> objs = new List <GameObject>(); for (int i = 0; i < m_trackableBehaviour.gameObject.transform.childCount; i++) { var t = m_trackableBehaviour.gameObject.transform.GetChild(i); objs.Add(t.gameObject); } foreach (var obj in objs) { obj.transform.SetParent(null); obj.SetActive(false); } //m_trackableBehaviour.Clicked.RemoveAllListeners(); if (m_trackableBehaviour.Identifier != null) { var instanceId = m_trackableBehaviour.Identifier; m_logger.Debug("stop tracking " + instanceId); m_trackingVuMarkers.Remove(m_trackableBehaviour.Identifier, m_trackableBehaviour); } }
internal void StopTracking(VuforiaTrackableEventHandler trackable) { base.OnLostTracking(trackable.Identifier.ToString(), trackable.gameObject); }
internal void StartTracking(VuforiaTrackableEventHandler trackableBehaviour) { // hack for now: clear any objects attached to this one for (int i = 0; i < trackableBehaviour.gameObject.transform.childCount; i++) { var t = trackableBehaviour.gameObject.transform.GetChild(i); //Destroy(t.gameObject); } var instanceId = trackableBehaviour.Identifier; m_logger.Debug("start tracking " + instanceId); m_trackingVuMarkers.Add(trackableBehaviour.Identifier, trackableBehaviour); var media = m_activeResourceMedia[trackableBehaviour.Identifier]; m_logger.Debug("found {0} media items for {1}", media == null ? 0 : media.Count(), instanceId); if (media != null) { foreach (var c in media) { trackableBehaviour.ExtendedTracking = c.Marker.UseExtendedTracking; AttachMediaObject(c, trackableBehaviour.gameObject); /* * m_trackableBehaviour.Identifier, * m_trackableBehaviour.gameObject, * c.ObjectId, * c.MediaUrl, * c.MediaType, * c.MediaLayout, * c.OnOpen, * c.OnSelect, * c.OnClose);*/ } } var assets = m_activeResourceAssets[trackableBehaviour.Identifier]; if (assets != null) { foreach (var a in assets) { trackableBehaviour.ExtendedTracking = a.Marker.UseExtendedTracking; AttachAssetObject( a, trackableBehaviour.gameObject); /* * m_trackableBehaviour.Identifier, * m_trackableBehaviour.gameObject, * a.ObjectId, * a.AssetInstance, * a.MediaUrl, * a.MediaLayout, * a.OnOpen, * a.OnSelect);*/ } } }