Table of Contents

Class MegaTrackerFrameFilter

Namespace
easyar
Assembly
EasyAR.Sense.dll

Steuert das easyar.MegaTracker in der Szene und bietet Funktionserweiterungen in der Unity-Umgebung.

[RequireComponent(typeof(BlockHolder))]
public class MegaTrackerFrameFilter : FrameFilter
Vererbung
MegaTrackerFrameFilter

Eigenschaften

BlockHolder

Komponente, die einen Block hält, verwaltet diesen in der Szene.

public BlockHolder BlockHolder { get; }

CameraPositionOverride

Überschreibungswert der Kameraposition relativ zur Kartenblock-Abdeckung. Nach der Festlegung gibt der MegaTracker diesen Überschreibungswert aus, anstatt die entsprechenden Koordinaten aus den Eingabeframedaten zu verwenden. Kann die Genauigkeit der Ausgangspose verbessern, wenn Karteninformationen bekannt sind und Sensoren begrenzt sind.

public (Optional<float> x, Optional<float> y, Optional<float> z) CameraPositionOverride { get; set; }

EnableLocalization

Aktiviert die Lokalisierung. Wenn deaktiviert, werden vom Server zurückgegebene Lokalisierungsergebnisse nicht ausgegeben. Standardmäßig true.

Beeinflusst die Tracking-Qualität. Nicht verwenden, es sei denn, Sie haben EasyAR konsultiert und die Auswirkungen vollständig verstanden.

public bool EnableLocalization { get; set; }

EnableStatelessLocalization

Aktiviert zustandslose Lokalisierung. Wenn aktiviert, werden bei der Lokalisierung keine vorherigen Ergebnisse verwendet. Standardmäßig false.

Beeinflusst die Tracking-Qualität. Nicht verwenden, es sei denn, Sie haben EasyAR konsultiert und die Auswirkungen vollständig verstanden.

public bool EnableStatelessLocalization { get; set; }

LandmarkFilter

Mega-Landmark-Filterfunktion, wenn ServiceType als Landmark festgelegt ist. Zu Beginn müssen Sie manuell FilterBySpotId(string, Action<MegaLandmarkFilterResponse>) aufrufen. Der Tracker beginnt erst mit dem Tracking, nachdem der Filter "Found" zurückgibt.

public Optional<MegaLandmarkFilterWrapper> LandmarkFilter { get; }

LocationInputMode

Positions-Eingabemodus. Muss vor Sitzungsstart festgelegt werden. Für Remote-Debugging oder Betrieb auf einem PC muss auf Simulator gesetzt werden, sonst funktioniert es nicht. Vor-Ort-Nutzung erfordert Onsite für optimale Ergebnisse.

public MegaLocationInputMode LocationInputMode { get; set; }

MinInputFrameLevel

Minimal zulässiges MegaInputFrameLevel für Eingabeframes. Wenn die Frame-Quelle nur Daten mit niedrigerer CameraTransformType-Dimension liefern kann, schlägt der Sitzungsstart fehl. Muss vor Sitzungsstart festgelegt werden.

public MegaInputFrameLevel MinInputFrameLevel { get; set; }

ProximityLocation

Ergebnisse benachbarter Positionen.

public Optional<ProximityLocationResult> ProximityLocation { set; }

RequestMessage

public string RequestMessage { get; set; }

RequestTimeParameters

Anfragezeitparameter.

public MegaRequestTimeParameters RequestTimeParameters { get; set; }

ServiceAccessData

Daten für den Servicezugriff. Muss vor dem Start der Sitzung festgelegt werden. Bei Verwendung von GlobalConfig ist keine Einstellung erforderlich.

public ExplicitAddressAccessData ServiceAccessData { get; set; }

ServiceAccessSource

Datenquellentyp für den Servicezugriff. Muss vor dem Start der Sitzung festgelegt werden.

public MegaServiceAccessSourceType ServiceAccessSource { get; set; }

ServiceType

EasyAR Mega-Servicetyp. Muss vor dem Start der Sitzung festgelegt werden.

public MegaApiType ServiceType { get; set; }

SimulatorLocation

Positionsdaten, die verwendet werden, wenn LocationInputMode == Simulator ist.

public Optional<Location> SimulatorLocation { get; set; }

Methoden

ResetTracker()

Tracker zurücksetzen.

public void ResetTracker()

SwitchEndPoint(ExplicitAddressAccessData, BlockRootController)

Remote-Endpunkt wechseln.

public void SwitchEndPoint(ExplicitAddressAccessData config, BlockRootController root)

Parameter

config
root

UpdateToken(string)

API-Token aktualisieren.

public void UpdateToken(string token)

Parameter

token

Ereignisse

LocalizationRespond

Service-Lokalisierungsrückgabeereignis. Dieses Ereignis dient typischerweise dem Debugging. Bei seinem Auftreten besteht keine Entsprechung zwischen der Position und dem Status von Objekten in der Szene und den Daten im Ereignis.

public event Action<MegaLocalizationResponse> LocalizationRespond