Descripción de la clase AnchorLocateCriteria

En este artículo aprenderá las diferentes opciones que puede usar al consultar un delimitador. Analizaremos la clase AnchorLocateCriteria, sus opciones y las combinaciones de opciones válidas.

Criterios de búsqueda de delimitadores

La clase AnchorLocateCriteria ayuda a consultar el servicio para los delimitadores creados previamente. Se puede usar un objeto AnchorLocateCriteria por cada monitor en cualquier momento. Cada objeto AnchorLocateCriteria debe incluir exactamente una de las siguientes propiedades: Identifiers, NearAnchor o NearDevice. Si lo desea, puede establecer propiedades adicionales como Strategy, BypassCache y RequestedCategories.

Propiedades

Defina exactamente una de las siguientes propiedades en el monitor:

Identificadores

Valor predeterminado: matriz de cadenas vacía

Si usa Identifiers, puede definir una lista de identificadores de delimitador para los delimitadores que quiera buscar. Los identificadores de delimitador se devuelven inicialmente después de la creación correcta del delimitador. Con Identifiers especificado, AnchorLocateCriteria restringe el conjunto de delimitadores solicitados a los delimitadores con identificadores de delimitador coincidentes. Esta propiedad se especifica mediante una matriz de cadenas.

NearAnchor

Valor predeterminado: sin establecer

Si usa NearAnchor, puede especificar que AnchorLocateCriteria restrinja el conjunto de delimitadores solicitados a los delimitadores dentro de una distancia deseada fuera de un delimitador elegido. Debe proporcionar este delimitador elegido como delimitador de origen. También puede establecer la distancia deseada fuera del delimitador de origen y el número máximo de delimitadores devueltos para limitar aún más la búsqueda. Esta propiedad se especifica mediante un objeto NearAnchorCriteria.

NearDevice

Valor predeterminado: sin establecer

Si usa NearDevice, puede especificar que AnchorLocateCriteria restrinja el conjunto de delimitadores solicitados a los que estén cerca de la ubicación física del dispositivo. Cualquier sensor habilitado se usará para ayudar a detectar delimitadores alrededor del dispositivo. Para aumentar al máximo la probabilidad de encontrar delimitadores, debe configurar SensorCapabilities para que la sesión tenga acceso a todos los sensores adecuados. Para obtener más información sobre la configuración y el uso de esta propiedad, consulte Relocalización general: Azure Spatial Anchors | Microsoft Docs y Creación y localización de delimitadores mediante relocalización general en C#, Objective-C, Swift, Java, c++/NDK y c++/WinRT. Esta propiedad se especifica mediante un objeto NearAnchorCriteria.

Propiedades adicionales

BypassCache

Valor predeterminado: false

Cuando se crea o se encuentra un delimitador en una sesión, también se almacena en la memoria caché. Con esta propiedad establecida en false, cualquier consulta posterior en la misma sesión devolverá el valor almacenado en caché. No se realiza ninguna solicitud al servicio ASA.

RequestedCategories

Valor predeterminado: propiedades | datos espaciales

Esta propiedad se usa para determinar qué datos se devuelven en una consulta con AnchorLocateCriteria. El valor predeterminado devuelve las propiedades y los datos espaciales, por lo que no debe modificarse si se busca obtener tanto propiedades como datos espaciales. Esta propiedad se puede especificar mediante la enumeración AnchorDataCategory.

Valor de enumeración AnchorDataCategory Datos devueltos
Ninguno No se devuelven datos
Propiedades Se devuelven propiedades de delimitador, incluidas AppProperties.
Espacial Se devuelve información espacial sobre un delimitador.

Estrategia

Valor predeterminado: AnyStrategy

Strategy define aún más cómo deben ubicarse los delimitadores. La propiedad Strategy se puede especificar mediante una enumeración LocateStrategy.

Valor de enumeración LocateStrategy Descripción
AnyStrategy Esta estrategia permite al sistema usar combinaciones de estrategias VisualInformation y Relationship para buscar delimitadores.
VisualInformation Esta estrategia intenta buscar delimitadores comparando la información visual del entorno actual con la de la superficie visual del delimitador. La superficie visual de un delimitador hace referencia a la información visual asociada actualmente al delimitador. Esta información visual se suele recopilar durante la creación del delimitador, aunque no siempre es así. Actualmente solo es posible usar esta estrategia en combinación con las propiedades NearDevice o Identifiers.
Relación Esta estrategia intenta encontrar delimitadores mediante el uso de delimitadores conectados existentes. Actualmente solo es posible usar esta estrategia en combinación con las propiedades NearAnchor o Identifiers. Cuando se usa con la propiedad Identifiers, es necesario que, en la misma sesión, el usuario haya encontrado previamente un delimitador con relaciones de conexión ya establecidas con los delimitadores cuyos identificadores se hayan especificado en la matriz Identifiers.

Combinaciones válidas de las propiedades LocateStrategy y AnchorLocateCriteria

Actualmente el sistema no permite todas las combinaciones de las propiedades Strategy y AnchorLocateCriteria. En la siguiente tabla se muestran las combinaciones permitidas:

Propiedad AnyStrategy Relación VisualInformation
Identificadores
NearAnchor ✓ (valor predeterminado: "Relación")
NearDevice

Pasos siguientes

Consulte Cómo crear y ubicar delimitadores con Azure Spatial Anchors para ver más ejemplos de uso de la clase AnchorLocateCriteria.