MegaTracker Class¶
这个类型是C#语言的 EasyAR Sense API: MegaTracker 。页面中部分描述可能与Unity环境无关。
这个类型已经完全封装进Unity组件: MegaBlockTrackerFrameFilter 。不需要直接使用这个类型。
Description¶
提供云定位功能。
MegaTracker占用1个camera的buffer。
Methods¶
isAvailable¶
- C#
public static bool isAvailable()
检查MegaTracker是否可用。总是返回true。
inputFrameSink¶
- C#
public virtual InputFrameSink inputFrameSink()
输入帧输入端口。MegaTracker输入帧必须包含camera参数、时间戳信息和空间信息(cameraTransform和trackingStatus)。参考 InputFrameSink 。
accelerometerResultSink¶
- C#
public virtual AccelerometerResultSink accelerometerResultSink()
加速度计结果输入端口。参考 AccelerometerResultSink 。
locationResultSink¶
- C#
public virtual LocationResultSink locationResultSink()
可选。位置结果输入端口。参考 LocationResultSink 。
proximityLocationResultSink¶
- C#
public virtual ProximityLocationResultSink proximityLocationResultSink()
可选。邻近位置结果输入端口。参考 ProximityLocationResultSink 。
bufferRequirement¶
- C#
public virtual int bufferRequirement()
当前组件占用camera buffer的数量。
outputFrameSource¶
- C#
public virtual OutputFrameSource outputFrameSource()
输出帧输出端口。参考 OutputFrameSource 。
create¶
- C#
public static MegaTracker create(string server, string apiKey, string apiSecret, string appId)
创建。
switchEndPoint¶
- C#
public virtual void switchEndPoint(string server, string apiKey, string apiSecret, string appId)
切换远端端点。
setRequestTimeParameters¶
- C#
public virtual void setRequestTimeParameters(Optional<int> timeoutMilliseconds, int requestIntervalMilliseconds)
设置请求时间参数。timeoutMilliseconds为连接超时时间。requestIntervalMilliseconds为期望的请求间隔时间,默认为1000,最小为300,值越大整体误差越大。
setResultPoseType¶
- C#
public virtual void setResultPoseType(bool enableLocalization, bool enableStabilization)
设置结果姿态类型。默认enableLocalization和enableStabilization均为true。
setResultAsyncMode¶
- C#
public virtual bool setResultAsyncMode(bool enableAsync)
设置结果异步模式。如果结果通过outputFrameSource输出,则应设置位true,如果结果通过getSyncResult获取,则应设置为false。默认enableAsync为true。同步模式仅使用XR License时可生效。
setLocalizationCallback¶
- C#
public virtual void setLocalizationCallback( CallbackScheduler callbackScheduler, Optional<Action< MegaTrackerLocalizationResponse >> callback)
设置定位回调。每次定位时,会触发此回调。
start¶
- C#
public virtual bool start()
开始MegaTracker。
stop¶
- C#
public virtual void stop()
停止MegaTracker。调用start重新运行。
reset¶
- C#
public virtual void reset()
重置MegaTracker,清除所有状态。
close¶
- C#
public virtual void close()
关闭MegaTracker。close之后不应继续使用。
getSyncResult¶
- C#
public virtual Optional< MegaTrackerResult > getSyncResult(double timestamp, Matrix44F cameraTransform, MotionTrackingStatus trackingStatus)
获得同步输出结果。如果MegaTracker已暂停,或者未通过setResultAsyncMode将结果异步模式设为false,则返回值为空。