Freigeben über


AlignmentManager Klasse

Definition

Implementierung des Koordinatensystems von Unity auf Unity-Ebene
mit einem diskreten endlichen Satz von Markern in der realen Welt.

public class AlignmentManager : Microsoft.MixedReality.WorldLocking.Core.IAlignmentManager
type AlignmentManager = class
    interface IAlignmentManager
Public Class AlignmentManager
Implements IAlignmentManager
Vererbung
AlignmentManager
Implementiert

Hinweise

Zusätzlich zur Verankerung des ansonsten beliebigen WorldLocked-Koordinatenraums mit diesem Satz von Korrespondenzen wird damit das Problem der Tracker-Skalierung behoben, bei dem aufgrund eines Trackerfehlers eine bekannte Entfernung in der realen Welt eine andere Entfernung im Unity-Raum durchquert. Dies bedeutet, dass bei einem großen Objekt der Länge L Meter im Unity-Raum, beginnend an einem Ende und gehenden L-Metern nicht am anderen Ende des Objekts enden, sondern nur innerhalb von +- 10 % von L. Die Verwendung dieses Diensts bietet ziemlich genaue Übereinstimmung an Ausrichtungspunkten, und durch Interpolation wird eine ziemlich genaue Übereinstimmung innerhalb der konvexen Ausrichtungspunkte erzielt. Beachten Sie, dass keine Extrapolation durchgeführt wird, sodass außerhalb des konvexen Satz von Ausrichtungspunkten Ergebnisse, insbesondere in Bezug auf die Skalierungskompensation, weniger genau sind.

Konstruktoren

AlignmentManager(WorldLockingManager)

Der Konstruktor wird an einen bestimmten WorldLockingManager gebunden. Registriert auch für Ereignisse zum Laden von Szenen.

Eigenschaften

PinnedFromLocked

Die Pose, die in die Hierarchie der Kamera oberhalb der Transformation "WorldLocking Adjustment" eingefügt werden soll (falls vorhanden).

SaveFileName

Datei, in der gespeichert und geladen werden soll.

Methoden

AddAlignmentAnchor(String, Pose, Pose)

Implementierung des Koordinatensystems von Unity auf Unity-Ebene
mit einem diskreten endlichen Satz von Markern in der realen Welt.

ClearAlignmentAnchors()

Implementierung des Koordinatensystems von Unity auf Unity-Ebene
mit einem diskreten endlichen Satz von Markern in der realen Welt.

ComputePinnedPose(Pose)

Führen Sie den gewichteten Durchschnitt aller aktiven Verweishaltungen aus, um eine Ausrichtungsposition zu erhalten.

Dispose()

Entsorgen Sie interne Daten beim Herunterfahren.

Finalize()

Entsorgen Sie interne Daten beim Herunterfahren.

GetAlignmentPose(AnchorId, Pose)

Implementierung des Koordinatensystems von Unity auf Unity-Ebene
mit einem diskreten endlichen Satz von Markern in der realen Welt.

IsValidSavePath(String)

Überprüfen Sie die Gültigkeit eines Speicher-/Ladepfads. Alle Pfade, die diesen Test nicht bestehen, werden ohne Fehler ignoriert.

Load()

Laden Sie die Datenbank, und geben Sie eine Benachrichtigung aus, wenn sie geladen wird.

RegisterForLoad(PostAlignmentLoadedDelegate)

Registrieren Sie sich für Benachrichtigungen nach allen erfolgreichen Ladevorgängen.

RemoveAlignmentAnchor(AnchorId)

Implementierung des Koordinatensystems von Unity auf Unity-Ebene
mit einem diskreten endlichen Satz von Markern in der realen Welt.

RestoreAlignmentAnchor(String, Pose)

Implementierung des Koordinatensystems von Unity auf Unity-Ebene
mit einem diskreten endlichen Satz von Markern in der realen Welt.

Save()

Speichern Sie die Datenbank explizit.

SendAlignmentAnchors()

Implementierung des Koordinatensystems von Unity auf Unity-Ebene
mit einem diskreten endlichen Satz von Markern in der realen Welt.

UnregisterForLoad(PostAlignmentLoadedDelegate)

Heben Sie die Registrierung für Benachrichtigungen nach dem Laden nach der Registrierung über auf RegisterForLoad(PostAlignmentLoadedDelegate).

Ereignisse

OnTriangulationBuilt

Implementierung des Koordinatensystems von Unity auf Unity-Ebene
mit einem diskreten endlichen Satz von Markern in der realen Welt.

Gilt für: