示例项目和用例 > 用例:3D-Guided Service Instructions > 3D-Guided Service Instructions 201:使用 JavaScript 突出显示零件并创建 Ionic 弹出窗口 > 附录 2:与 3D 对象相关的 Vuforia Studio 事件
  
附录 2:与 3D 对象相关的 Vuforia Studio 事件
事件名称
(evt.name)
说明
自变量和用法说明
示例
modelLoaded
加载模型(如果体验中包含多个模型,则可以加载多次)以及更新模型的“资源”特性会触发此事件。
arg1 是模型名称(例如,model-1)。
$scope.$on('modelLoaded', function(evt, arg) { $scope.view.wdg['label-1']['text'] = $scope.view.wdg['label-1']['text'] + " evt: " + evt.name + " arg: " + arg ;});
userpick
用户在体验中单击 3D 对象(例如,模型项、模型和 3D 标签)会触发此事件。
返回的自变量包括:event(名称)、target(model-1、modelItem-1 或 3DImage-1 等)、parent (null)、edata(JSON 对象,其中包含在 PVZ 中定义的模型项 occurrence 特性值。例如,/0/0/18)
$scope.$on('userpick', function(event,target,parent,edata){ if (edata) { console.log('my console of userpick evt: '+ event.name + " target: " + target + " and parent:" + parent + " edata.occurence: " + JSON.parse(edata).occurrence); } });
click
userpick 类似。
事件在 tergetScope._widgetId 中包含小组件的 Studio ID。不返回自变量数据。
$scope.$on('click', function(evt, arg) { $scope.view.wdg['debug-label']['text'] = " evt: " + evt.name + " event targetScope Widget ID: " + evt.targetScope._widgetId;});
trackingacquired
Vuforia View 获得 ThingMark、空间或模型目标会触发此事件。
用于 ThingMark 的 arg1 是 ThingMark ID(例如,555:10),没有针对其他目标类型的自变量。
$scope.$on('trackingacquired', function(evt, arg) { $scope.view.wdg['label-1']['text'] = "evt: " + evt.name + " arg: " + arg ;});
trackinglost
Vuforia View 丢失 ThingMark、空间或模型目标会触发此事件。
请参阅trackingacquired
事件名称为 trackinglost,其余与 trackingacquired 相同。