SurfaceTracker Class¶
这个类型是C#语言的 EasyAR Sense API: SurfaceTracker 。页面中部分描述可能与Unity环境无关。
这个类型已经部分封装进Unity组件: SurfaceTrackerFrameFilter 。在大部分情况下不需要直接使用这个类型的成员和实例。如果要使用一些没有被封装的接口,需要使用 SurfaceTrackerFrameFilter.Tracker ,而非创建新的实例。
Description¶
SurfaceTracker实现了对环境表面的跟踪。
SurfaceTracker占用1个camera的buffer。应使用camera的setBufferCapacity设置不少于所有组件占用的camera的buffer数量。参考 概览 。
创建之后,可以调用start/stop来开始和停止运行,start/stop是非常轻量的调用。
当不再需要该组件时,可以调用close对其进行关闭。close之后不应继续使用。
SurfaceTracker通过inputFrameSink输入 InputFrame ,应将 InputFrameSource 连接到inputFrameSink上进行使用。参考 概览 。
Methods¶
inputFrameSink¶
- C#
public virtual InputFrameSink inputFrameSink()
InputFrame 输入端口。InputFrame要求必须拥有图像、时间戳和camera参数。
alignTargetToCameraImagePoint¶
- C#
public virtual void alignTargetToCameraImagePoint( Vec2F cameraImagePoint)
将跟踪目标点对准到相机图像的指定点。图像坐标系([0, 1]^2)的x朝右、y朝下,原点在左上角。可以使用 CameraParameters.imageCoordinatesFromScreenCoordinates 来从屏幕坐标转换为图像坐标。