Classe ASACloudSpatialAnchorSession

Declaração

@interface ASACloudSpatialAnchorSession : NSObject;

Description

Utilize esta classe para criar, localizar e gerir âncoras espaciais.

Métodos

init

Inicializa uma nova instância com uma configuração predefinida.

-(instancetype)init;

eliminar

Para esta sessão e lança todos os recursos associados.

-(void)dispose;

getAccessTokenWithAuthenticationToken

Obtém o token de acesso das Âncoras Espaciais do Azure a partir do token de autenticação.

-(void)getAccessTokenWithAuthenticationToken:(NSString *)authenticationToken withCompletionHandler:(void (^)(NSString * value, NSError *error))completionHandler;

Parâmetros

  • authenticationToken - Token de autenticação.
  • completionHandler - A cadeia de tokens de acesso.

Devoluções

  • void

getAccessTokenWithAccountKey

Obtém o token de acesso das Âncoras Espaciais do Azure a partir da chave de conta.

-(void)getAccessTokenWithAccountKey:(NSString *)accountKey withCompletionHandler:(void (^)(NSString * value, NSError *error))completionHandler;

Parâmetros

  • accountKey - Chave de conta.
  • completionHandler - A cadeia de tokens de acesso.

Devoluções

  • void

createAnchor

Cria uma nova âncora espacial persistente a partir das propriedades de âncora local e cadeia especificadas.

A âncora local transmitida para este método tem de ter uma transformação válida. Tenha em atenção que algumas plataformas suportadas pelas Âncoras Espaciais do Azure, como o iOS, permitem transformações com o componente de dimensionamento != 1.0. O SDK de Âncoras Espaciais do Azure não suporta tais transformações e não conseguirá criar a âncora espacial com o código de erro InvalidAnchorTransformRigidity. Qualquer processamento de dimensionamento para âncoras tem de ser feito ao nível da aplicação.

-(void)createAnchor:(ASACloudSpatialAnchor *)anchor withCompletionHandler:(void (^)(NSError *error))completionHandler;

Parâmetros

  • anchor - Âncora a manter.
  • completionHandler - Uma tarefa que representa a operação de criação assíncrona.

Devoluções

  • void

createWatcher

Cria um novo objeto que observa as âncoras que cumprem os critérios especificados.

-(ASACloudSpatialAnchorWatcher *)createWatcher:(ASAAnchorLocateCriteria *)criteria;

Parâmetros

  • criteria - Critérios para as âncoras a ter em atenção.

Devoluções

  • ASACloudSpatialAnchorWatcher * - Um novo objeto de observador que procura continuamente âncoras até que os critérios estejam totalmente satisfeitos ou o observador seja parado. Só pode existir um observador ativo de cada vez.

getAnchorProperties

Obtém uma âncora espacial na cloud para o identificador especificado, mesmo que ainda não tenha sido localizado.

-(void)getAnchorProperties:(NSString *)identifier withCompletionHandler:(void (^)(ASACloudSpatialAnchor * value, NSError *error))completionHandler;

Parâmetros

  • identifier - O identificador a procurar.
  • completionHandler - Uma tarefa que representa a operação de obtenção assíncrona. A âncora obtida terá valores de propriedade, mas poderá não ter uma âncora local disponível.

Devoluções

  • void

getNearbyAnchorIds

Obtém uma lista de todos os IDs de âncora espacial na cloud que correspondem a um determinado critério.

-(void)getNearbyAnchorIds:(ASANearDeviceCriteria *)criteria withCompletionHandler:(void (^)(NSArray * value, NSError *error))completionHandler;

Parâmetros

  • criteria - Os critérios de pesquisa.
  • completionHandler - Uma tarefa que representa a operação de obtenção assíncrona.

Devoluções

  • void

getActiveWatchers

Obtém uma lista de observadores ativos.

-(NSArray<ASACloudSpatialAnchorWatcher *> *)getActiveWatchers;

Devoluções

  • NSArray<ASACloudSpatialAnchorWatcher *> * - Uma lista de observadores ativos.

refreshAnchorProperties

Atualiza as propriedades da âncora espacial especificada.

-(void)refreshAnchorProperties:(ASACloudSpatialAnchor *)anchor withCompletionHandler:(void (^)(NSError *error))completionHandler;

Parâmetros

  • anchor - A âncora a atualizar.
  • completionHandler - Uma tarefa que representa a operação de atualização assíncrona.

Devoluções

  • void

updateAnchorProperties

Atualizações a âncora espacial especificada.

-(void)updateAnchorProperties:(ASACloudSpatialAnchor *)anchor withCompletionHandler:(void (^)(NSError *error))completionHandler;

Parâmetros

  • anchor - A âncora a atualizar.
  • completionHandler - Uma tarefa que representa a operação de atualização assíncrona.

Devoluções

  • void

deleteAnchor

Elimina uma âncora espacial persistente.

-(void)deleteAnchor:(ASACloudSpatialAnchor *)anchor withCompletionHandler:(void (^)(NSError *error))completionHandler;

Parâmetros

  • anchor - A âncora a eliminar.
  • completionHandler - Uma tarefa que representa a operação de eliminação assíncrona.

Devoluções

  • void

processFrame

As aplicações têm de chamar este método em plataformas em que o processamento por frame é necessário.

Este método não está disponível na plataforma HoloLens.

-(void)processFrame:(ARFrame *)frame;

Parâmetros

  • frame - Moldura ar para processar.

getSessionStatus

Obtém um objeto que descreve o estado da sessão.

-(void)getSessionStatusWithCompletionHandler:(void (^)(ASASessionStatus * value, NSError *error))completionHandler;

Parâmetros

  • completionHandler - Uma tarefa que representa a obtenção do estado da sessão.

Devoluções

  • void

iniciar

Começa a capturar dados de ambiente para a sessão.

-(void)start;

parar

Deixa de capturar dados de ambiente para a sessão e cancela quaisquer operações de localização pendentes. Os dados do ambiente são mantidos.

-(void)stop;

reset

Repõe os dados de ambiente capturados nesta sessão; as aplicações têm de chamar este método quando o controlo é perdido.

Em qualquer plataforma, chamar o método limpará todo o estado interno em cache.

-(void)reset;

Propriedades

delegado

Um objeto que fornece para receber eventos desta instância ASACloudSpatialAnchorSession.

@property(nonatomic, assign) id<ASACloudSpatialAnchorSessionDelegate> delegate;

configuração

As informações de configuração da sessão.

As definições de configuração são aplicadas quando a sessão é iniciada.

@property (retain, readonly) ASASessionConfiguration * configuration;

diagnósticos

As definições de diagnóstico da sessão, que podem ser utilizadas para recolher e submeter dados para resolução de problemas e melhorias.

@property (retain, readonly) ASACloudSpatialAnchorSessionDiagnostics * diagnostics;

logLevel

Nível de registo para os eventos do registo de sessões.

@property ASASessionLogLevel logLevel;

sessão

A sessão de controlo utilizada para ajudar a localizar âncoras.

Esta propriedade não está disponível na plataforma HoloLens.

@property (retain) ARSession * session;

telemetryEnabled

Esta API pode ser utilizada para ativar ou desativar a telemetria do SDK do Azure Spatial Anchors. A telemetria do SDK ASA está ativada por predefinição. Se estiver desativado, o SDK do ASA não registará nenhum evento de telemetria para esta sessão. As aplicações que precisam de desativar completamente a telemetria do SDK ASA podem utilizar esta API antes de chamar CloudSpatialAnchorSession::Start, o que resultaria no não envio de nenhum evento de telemetria para essa instância CloudSpatialAnchorSession.

@property BOOL telemetryEnabled;

locationProvider

Fornecedor de localização utilizado para criar e localizar âncoras com a Relocalização Conjunta.

@property (retain) ASAPlatformLocationProvider * locationProvider;

sessionId

O identificador exclusivo da sessão.

@property (retain, readonly) NSString * sessionId;