Dela via


AnchorManagerWSA Class

Definition

Encapsulation of spongy world (raw input) state. Its primary duty is the creation and maintenance of the graph of (spongy) anchors built up over the space traversed by the camera.

public class AnchorManagerWSA : Microsoft.MixedReality.WorldLocking.Core.AnchorManager
type AnchorManagerWSA = class
    inherit AnchorManager
Public Class AnchorManagerWSA
Inherits AnchorManager
Inheritance
AnchorManagerWSA

Remarks

Anchor and Edge creation algorithm:

Goal: a simple and robust algorithm that guarantees an even distribution of anchors, fully connected by edges between nearest neighbors with a minimum of redundant edges

For simplicity, the algorithm should be stateless between time steps

Rules * two parameters define spheres MIN and MAX around current position * whenever MIN does not contain any anchors, a new anchor is created * when a new anchor is created is is linked by edges to all anchors within MAX * the MAX radius is 20cm larger than MIN radius which would require 12 m/s beyond world record sprinting speed to cover in one frame * whenever MIN contains more than one anchor, the anchor closest to current position is connected to all others within MIN

Properties

AnchorFromSpongy

Get the transform from spongy space to the space anchors are located in.

(Inherited from AnchorManager)
ErrorStatus

Error string for last error, cleared at beginning of each update.

(Inherited from AnchorManager)
MaxAnchorEdgeLength

Maximum distance between two anchors to create an edge between them.

(Inherited from AnchorManager)
MaxLocalAnchors

Maximum number of local anchors in the internal anchor graph.

(Inherited from AnchorManager)
MinNewAnchorDistance

Minimum distance of head to nearest anchor to create a new anchor.

(Inherited from AnchorManager)
NumAnchors

Return the current number of spongy anchors.

(Inherited from AnchorManager)
NumEdges

The number of edges connecting spongy anchors.

(Inherited from AnchorManager)
SpongyAnchors (Inherited from AnchorManager)
SupportsPersistence

Whether the underlying anchors can be locally persisted and reloaded.

TrackingStartDelayTime

Methods

CreateAnchor(AnchorId, Transform, Pose)
DestroyAnchor(AnchorId, SpongyAnchor)
Dispose()

Explicit dispose to release resources.

(Inherited from AnchorManager)
IsTracking()
LoadAnchors()

Load the spongy anchors from persistent storage

(Inherited from AnchorManager)
LoadAnchors(IPlugin, AnchorId, Transform, List<AnchorManager.SpongyAnchorWithId>)

Load the spongy anchors from persistent storage

RemoveSpongyAnchorById(AnchorId)

Remove all internal references to the anchor identified.

(Inherited from AnchorManager)
Reset()

Delete all spongy anchor objects and reset internal state

(Inherited from AnchorManager)
SaveAnchors()

Save the spongy anchors to persistent storage

(Inherited from AnchorManager)
SaveAnchors(List<AnchorManager.SpongyAnchorWithId>)
TryCreate(IPlugin, IHeadPoseTracker)
Update()

Create missing spongy anchors/edges and feed plugin with up-to-date input

(Inherited from AnchorManager)

Applies to