Estensione di funzionalità in Vuforia Studio con codice > API dello stato di monitoraggio
  
API dello stato di monitoraggio
È possibile utilizzare un evento JavaScript denominato trackingstatuschanged per ottenere informazioni sulle modifiche allo stato di monitoraggio di un target. L'evento trackingstatuschanged ha un payload JSON che contiene una coppia chiave-valore, con trackingStatus come chiave e un valore della stringa di stato:
{"trackingStatus":"<stato_monitoraggio>"}
Nella stringa precedente, la variabile <stato_monitoraggio> può essere uno dei seguenti stati:
Stato
Descrizione
normal
Il target è monitorato e indica un funzionamento normale.
extended
Il target è monitorato indirettamente. Non è visibile o è occluso, troppo lontano o troppo vicino per essere monitorato direttamente.
limited
Il target è monitorato, ma con una precisione molto bassa.
limited_excessive_motion
Il monitoraggio è limitato perché il dispositivo viene spostato troppo velocemente.
* 
Questo stato viene riportato solo per i model target.
limited_insufficient_light
Il monitoraggio è limitato a causa delle condizioni di scarsa illuminazione.
* 
Questo stato viene riportato solo per i model target.
Il gestore eventi implementato in JavaScript presenta la firma seguente:
function(event, target, tmlNodeName, args)
Nella tabella seguente sono elencati e descritti i parametri disponibili.
Parametro
Descrizione
event
Oggetto evento. Contiene la stringa trackingstatuschanged per la proprietà del nome.
target
Nome o ID del target.
* 
Questa stringa è vuota per i target spaziali.
tmlNodeName
Tipo dell'oggetto. Il valore è twx-dt-target per questo evento.
args
Stringa che include i dati dell'evento JSON.
Esempio
Di seguito è riportato un esempio di implementazione del gestore eventi JavaScript.
$scope.$on("trackingstatuschanged", function (event, target, tmlNodeName, args) {
trackingStatus = JSON.parse(args).trackingStatus;
console.log("Tracking Status Changed Script: event: " + event.name + ", target: " + target + ", tmlNodeName: " + tmlNodeName + ", args:" + args + ", trackingStatus: " + trackingStatus);
});
Di seguito è riportato un esempio di output del log.
Tracking Status Changed Script: event: trackingstatuschanged, target: 740de1d2-6202-45ab-94db-1056ecf2244b, tmlNodeName: twx-dt-target, args:{"trackingStatus":"extended"}, trackingStatus: extended