Table of Contents

Class MegaTrackerFrameFilter

命名空间
easyar
程序集
EasyAR.Sense.dll

在场景中控制easyar.MegaTrackerMonoBehaviour,在Unity环境下提供功能扩展。

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

属性

BlockHolder

持有Block的组件,在场景中持有并管理Block。

public BlockHolder BlockHolder { get; }

CameraPositionOverride

相机位置相对于地图block的覆盖值。设置之后,MegaTracker会输出覆盖值,而不使用输入帧数据中的对应坐标。可用于在已知地图信息且传感器有限的情况下提高输出位姿的精度。

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

EnableLocalization

是否启用定位。不启用定位时,服务器返回的定位结果不会输出。默认为true。

会影响跟踪效果。除非向EasyAR咨询并明确理解影响,否则不要使用。

public bool EnableLocalization { get; set; }

EnableStatelessLocalization

是否启用无状态定位。启用无状态定位时,定位时不会使用上一次定位结果。默认为false。

会影响跟踪效果。除非向EasyAR咨询并明确理解影响,否则不要使用。

public bool EnableStatelessLocalization { get; set; }

LandmarkFilter

ServiceTypeLandmark时的Mega Landmark 过滤功能。开始时你需要手动调用FilterBySpotId(string, Action<MegaLandmarkFilterResponse>)。在Filter返回Found之前Tracker将不会开始跟踪。

public Optional<MegaLandmarkFilterWrapper> LandmarkFilter { get; }

LocationInputMode

位置输入模式。需要在Session启动前设置。远程调试或电脑上运行必须设置成Simulator,否则将无法使用。现场使用要设置成Onsite以达到最佳效果。

public MegaLocationInputMode LocationInputMode { get; set; }

MinInputFrameLevel

输入帧最小允许的MegaInputFrameLevel。如果frame source只能给出维度更低CameraTransformType的数据,Session会启动失败。需要在Session启动前设置。

public MegaInputFrameLevel MinInputFrameLevel { get; set; }

ProximityLocation

邻近位置结果。

public Optional<ProximityLocationResult> ProximityLocation { set; }

RequestMessage

public string RequestMessage { get; set; }

RequestTimeParameters

请求时间参数。

public MegaRequestTimeParameters RequestTimeParameters { get; set; }

ServiceAccessData

服务访问数据。需要在Session启动前设置。使用GlobalConfig无需设置。

public ExplicitAddressAccessData ServiceAccessData { get; set; }

ServiceAccessSource

服务访问数据源类型。需要在Session启动前设置。

public MegaServiceAccessSourceType ServiceAccessSource { get; set; }

ServiceType

EasyAR Mega 服务类型。需要在Session启动前设置。

public MegaApiType ServiceType { get; set; }

SimulatorLocation

LocationInputMode == Simulator时使用的位置数据。

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

方法

ResetTracker()

重置tracker。

public void ResetTracker()

SwitchEndPoint(ExplicitAddressAccessData, BlockRootController)

切换远端端点。

public void SwitchEndPoint(ExplicitAddressAccessData config, BlockRootController root)

参数

config
root

UpdateToken(string)

更新API Token。

public void UpdateToken(string token)

参数

token

事件

LocalizationRespond

服务定位返回事件。该事件通常用作debug,事件发生时场景中物体的位置和状态与事件中的数据无对应关系。

public event Action<MegaLocalizationResponse> LocalizationRespond