Grundlegende Informationen zur AnchorLocateCriteria-Klasse

In diesem Artikel erfahren Sie mehr über die verschiedenen Optionen, die Sie beim Abfragen eines Ankers verwenden können. Dabei werden die AnchorLocateCriteria-Klasse, die entsprechenden Optionen sowie gültige Optionskombinationen behandelt.

Suchkriterien für Anker

Die AnchorLocateCriteria-Klasse unterstützt Sie beim Abfragen des Diensts nach zuvor erstellten Ankern. Ein AnchorLocateCriteria-Objekt kann jederzeit über einen Watcher verwendet werden. Jedes AnchorLocateCriteria-Objekt muss genau eine der folgenden Eigenschaften enthalten: Identifiers, NearAnchor oder NearDevice. Bei Bedarf können auch zusätzliche Eigenschaften wie Strategy, BypassCache und RequestedCategories festgelegt werden.

Eigenschaften

Definieren Sie genau eine der folgenden Eigenschaften in Ihrem Watcher:

Bezeichner

Standardwert: Leeres Zeichenfolgenarray

Mithilfe von „Identifiers“ können Sie eine Liste von Anker-IDs für Anker definieren, die Sie suchen möchten. Anker-IDs werden anfänglich nach der erfolgreichen Ankererstellung zurückgegeben. Wenn „Identifiers“ festgelegt ist, schränkt „AnchorLocateCriteria“ die angeforderten Anker auf die Anker mit übereinstimmenden Anker-IDs ein. Diese Eigenschaft wird mithilfe eines Zeichenfolgenarrays angegeben.

NearAnchor

Standardwert: Nicht festgelegt

Mithilfe von „NearAnchor“ können Sie festlegen, dass „AnchorLocateCriteria“ die angeforderten Anker auf die Anker beschränkt, die sich innerhalb einer gewünschten Entfernung von einem ausgewählten Anker befinden. Sie müssen diesen ausgewählten Anker als Quellanker bereitstellen. Sie können auch die gewünschte Entfernung vom Quellanker und die maximale Anzahl der zurückgegebenen Anker festlegen, um die Suche weiter einzuschränken. Diese Eigenschaft wird mithilfe eines NearAnchorCriteria-Objekts angegeben.

NearDevice

Standardwert: Nicht festgelegt

Mithilfe von „NearDevice“ können Sie angeben, dass „AnchorLocateCriteria“ die angeforderten Anker auf die Anker beschränkt, die sich in der Nähe des physischen Standorts des Geräts befinden. Alle aktivierten Sensoren werden verwendet, um Anker in der Nähe Ihres Geräts zu ermitteln. Sie sollten „SensorCapabilities“ so konfigurieren, dass die Sitzung auf alle geeigneten Sensoren zugreifen kann, um die besten Bedingungen für die Suche nach Ankern zu schaffen. Weitere Informationen zum Einrichten und Verwenden dieser Eigenschaft in C#, Objective-C, Swift, Java, C++/NDK und C++/WinRT finden Sie unter Ungefähre Standortbestimmung und Erstellen von und Suchen nach Ankern mithilfe der ungefähren Standortbestimmung. Diese Eigenschaft wird mithilfe eines NearDeviceCriteria-Objekts angegeben.

Zusätzliche Eigenschaften

BypassCache

Standardwert: „false“

Wenn ein Anker erstellt oder in einer Sitzung gefunden wurde, wird er ebenfalls im Cache gespeichert. Wenn diese Eigenschaft auf „false“ festgelegt ist, wird bei jeder nachfolgenden Abfrage in derselben Sitzung der zwischengespeicherte Wert zurückgegeben. Es erfolgt keine Anforderung an den ASA-Dienst.

RequestedCategories

Standardwert: Properties | Spatial

Diese Eigenschaft wird verwendet, um zu bestimmen, welche Daten von einer Abfrage mithilfe von „AnchorLocateCriteria“ zurückgegeben werden. Der Standardwert gibt sowohl Eigenschaften als auch räumliche Daten zurück. Dieser Wert sollte nicht geändert werden, wenn sowohl Eigenschaften als auch räumliche Daten zurückgegeben werden sollen. Diese Eigenschaft kann mithilfe der AnchorDataCategory-Enumeration angegeben werden.

AnchorDataCategory-Enumerationswert Zurückgegebene Daten
None Es werden keine Daten zurückgegeben.
Eigenschaften Es werden Ankereigenschaften einschließlich „AppProperties“ zurückgegeben.
Spatial Es werden räumliche Informationen zu einem Anker zurückgegeben.

Strategie

Standardwert: „AnyStrategy“

„Strategy“ definiert, wie nach Ankern gesucht werden soll. Die Eigenschaft „Strategy“ kann mithilfe einer LocateStrategy-Enumeration angegeben werden.

LocateStrategy-Enumerationswert Beschreibung
AnyStrategy Diese Strategie ermöglicht dem System die Verwendung von Kombinationen der VisualInformation- und Relationship-Strategien für die Suche nach Ankern.
VisualInformation Bei dieser Strategie wird versucht, nach Ankern zu suchen, indem visuelle Informationen aus der aktuellen Umgebung mit den Informationen zum visuellen Speicherbedarf des Ankers abgeglichen werden. Der visuelle Speicherbedarf eines Ankers bezieht sich auf die visuellen Informationen, die dem Anker derzeit zugeordnet sind. Diese visuellen Informationen werden normalerweise bei der Ankererstellung gesammelt, allerdings nicht ausschließlich bei diesem Vorgang. Diese Strategie ist zurzeit nur in Verbindung mit den Eigenschaften „NearDevice“ und „Identifiers“ zulässig.
Beziehung Bei dieser Strategie werden Anker gesucht, indem vorhandene verbundene Anker verwendet werden. Diese Strategie ist zurzeit nur in Verbindung mit den Eigenschaften „NearAnchor“ und „Identifiers“ zulässig. Bei Verwendung mit der Identifiers-Eigenschaft ist es erforderlich, dass der Benutzer in derselben Sitzung bereits einen oder mehrere Anker mit bereits eingerichteten Verbindungsbeziehungen zu den Ankern gefunden hat, deren IDs im Identifiers-Array angegeben sind.

Gültige Kombinationen der Eigenschaften „LocateStrategy“ und „AnchorLocateCriteria“

Nicht alle Kombinationen der Eigenschaften „Strategy“ und „AnchorLocateCriteria“ werden derzeit vom System zugelassen. In der folgenden Tabelle sind die zulässigen Kombinationen aufgeführt:

Eigenschaft AnyStrategy Beziehung VisualInformation
Bezeichner
NearAnchor ✓ (wird standardmäßig auf „Relationship“ festgelegt)
NearDevice

Nächste Schritte

Weitere Beispiele zur Verwendung der AnchorLocateCriteria-Klasse finden Sie unter Erstellen von und Suchen nach Ankern mit Azure Spatial Anchors.