void StoreTrackingStates(VLTrackingState state) { string str = ""; for (int i = 0; i < state.objects.Length; ++i) { VLTrackingState.TrackingObject obj = state.objects[i]; str += obj.name + "\n"; str += "* State: " + obj.state + "\n"; str += "* Quality: " + obj.quality + "\n"; str += "* _InitInlierRatio: " + obj._InitInlierRatio + "\n"; str += "* _InitNumOfCorresp: " + obj._InitNumOfCorresp + "\n"; str += "* _TrackingInlierRatio: " + obj._TrackingInlierRatio + "\n"; str += "* _TrackingNumOfCorresp: " + obj._TrackingNumOfCorresp + "\n"; str += "* _SFHFrameDist: " + obj._SFHFrameDist + "\n"; str += "* _Total3DFeatureCount: " + obj._Total3DFeatureCount + "\n"; str += "* _NumberOfTemplates: " + obj._NumberOfTemplates + "\n";; str += "* _NumberOfTemplatesDynamic: " + obj._NumberOfTemplatesDynamic + "\n";; str += "* _NumberOfTemplatesStatic: " + obj._NumberOfTemplatesStatic + "\n";; str += "* _TrackingImageSize: " + obj._TrackingImageWidth + "x" + obj._TrackingImageHeight; // Not the last tracked object? if (i < state.objects.Length - 1) { str += "\n"; } } trackingStates = str; }
void AutoUpdateInstructions(VLTrackingState states) { if (!autoInstructionUpdate) { return; } // We start everything, when the tracker has been initialized. foreach (VLTrackingState.TrackingObject trackingObject in states.objects) { // Count how many frames the object has been tracked in a row if (trackingObject.state == "tracked") { trackingCounter++; } else { // If tracking is lost or critical, reset the tracking counter trackingCounter = 0; } // If object has been tracked for 60 frames, go to the next // instruction step if (trackingCounter == 60) { trackingCounter = 0; if (curStep < objects.Length) { NextStep(); } } } }
void StoreTrackingStates(VLTrackingState state) { if (state.objects.Length > 0) { VLTrackingState.TrackingObject obj = state.objects[0]; trackingStates = obj.state + " @Frame (" + obj._NumberOfTemplates + ")"; } }
private void TrackingStateHandler(string trackingStateJson) { VLTrackingState state = VLJsonUtility.FromJson <VLTrackingState>(trackingStateJson); if (state != null && OnTrackingStates != null) { OnTrackingStates(state); } }
private void StoreTrackingStates(VLTrackingState trackingState) { if (trackingState.objects == null || trackingState.objects.Length == 0) { return; } VLTrackingState.TrackingObject obj = trackingState.objects[0]; this.calibState = obj.state; this.frameCount = obj._NumberOfTemplates; // The name "_NumberOfTemplates" is a bit misleading. This actually // contains the number of successfully captures frames. }
private void HandleTrackingStates(VLTrackingState state) { if (state.objects.Length == 0) { this.objectTracked = false; return; } string newState = state.objects[0].state; if (newState == "lost") { this.objectTracked = false; } else { this.objectTracked = true; } }
void StoreTrackingStates(VLTrackingState state) { if (state.objects.Length == 0) { return; } if (this.pattern == null) { return; } VLTrackingState.TrackingObject obj = state.objects[0]; if (obj.state == "collectingActive") { this.pattern.SetActive(true); } else { this.pattern.SetActive(false); } }
void HandleTrackingStates(VLTrackingState state) { for (int i = 0; i < state.objects.Length; ++i) { VLTrackingState.TrackingObject obj = state.objects[i]; if (obj.name == this.trackedObjectName) { if (obj.state == "tracked") { this.trackedEvent.Invoke(); if (this.previousState != obj.state) { this.justTrackedEvent.Invoke(); } } else if (obj.state == "critical") { this.criticalEvent.Invoke(); if (this.previousState != obj.state) { this.justCriticalEvent.Invoke(); } } else if (obj.state == "lost") { this.lostEvent.Invoke(); if (this.previousState != obj.state) { this.justLostEvent.Invoke(); } } this.previousState = obj.state; break; } } }
/// <summary> /// Updates progress value of AutoInit. /// </summary> /// <param name="state">Current tracking state</param> void UpdateAutoInitSetupProgress(VLTrackingState state) { if (!this.updateProgressBar) { return; } float progress = 0.0f; foreach (VLTrackingState.TrackingObject obj in state.objects) { progress += obj._AutoInitSetupProgress; } this.progressBar.value = progress / state.objects.Length; if (this.progressBar.value > 0.98f) { this.updateProgressBar = false; this.progressBar.value = this.progressBar.maxValue; this.progressBar.gameObject.GetComponentInChildren <Text>().text = "Ready"; StartCoroutine(WaitAndHideProgressBar()); } }