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.