Tratamento de exceções do rastreador AR plano
Este artigo apresenta como lidar com exceções do rastreador AR plano do Weixin registrando callbacks.
Antes de começar
Compreenda através do Fluxo de trabalho do MegaTracker:
- O Rastreador AR plano do xr-frame é essencialmente um encapsulamento da Capacidade de plano 6DoF do VisionKit.
- Como o MegaTracker funciona no xr-frame.
Entenda o Conceito e fluxo da sessão AR
Por que ocorrem exceções na detecção de planos
Em cenários específicos (como paredes brancas extensas na imagem, câmera obstruída por longos períodos, etc.), o rastreador AR plano do Weixin pode apresentar estados anormais.
Neste caso, o rastreador AR plano não consegue emitir normalmente a pose da câmera por frame (ou seja, dados 6DoF). Isso impede o funcionamento do MegaTracker.
Quando a imagem se normaliza (texturas ricas, câmera desobstruída) por um período, o rastreador AR plano retoma seu funcionamento, e o MegaTracker também se recupera.
Configurando o comportamento durante exceções na detecção de planos
Registre um callback de tratamento de exceções através de setPlaneDetectionErrorBehavior(behavior). Quando uma exceção é detectada, este callback é acionado, permitindo que desenvolvedores implementem alertas personalizados, ocultem conteúdo 3D ou outra lógica de tratamento.
session.setPlaneDetectionErrorBehavior(() => {
wx.showToast({
icon: 'none',
title: `Resultado anormal na detecção de planos do Weixin. Mova a câmera sobre superfícies para recuperar o rastreamento`,
duration: 2000,
});
});
Este exemplo usa a interface setPlaneDetectionErrorBehavior(behavior) da sessão para registrar um callback que mostra um Toast quando exceções na detecção de planos ocorrem.