Table of Contents

Class SurfaceTracker

名前空間
easyar

SurfaceTracker は環境表面の tracking を実装します。 SurfaceTracker は 1 個の camera buffer を占有します。camera の setBufferCapacity を使用して、すべてのコンポーネントが占有する camera buffer 数以上に設定してください。 作成後、start/stop を呼び出して実行の開始と停止を行えます。start/stop は非常に軽量な呼び出しです。 このコンポーネントが不要になったら、close を呼び出して閉じることができます。close 後は使用しないでください。 SurfaceTracker は inputFrameSink を通じて InputFrame を入力します。使用するには InputFrameSource を inputFrameSink に接続してください。

SurfaceTracker

メソッド

isAvailable

Android、iOS システム上で加速度計とジャイロスコープが利用可能な場合にのみ true を返します。

bool easyar_SurfaceTracker_isAvailable(void)
static bool isAvailable()
public static boolean isAvailable()
companion object fun isAvailable(): Boolean
+ (bool)isAvailable
public static func isAvailable() -> Bool
public static bool isAvailable()

戻り値

説明
Boolean

inputFrameSink

InputFrame 入力ポートです。InputFrame には image、timestamp、camera parameters が必要です。 注意: camera は fisheye camera model をサポートしていません。

void easyar_SurfaceTracker_inputFrameSink(easyar_SurfaceTracker * This, easyar_InputFrameSink * * Return)
std::shared_ptr<InputFrameSink> inputFrameSink()
public @Nonnull InputFrameSink inputFrameSink()
fun inputFrameSink(): InputFrameSink
- (easyar_InputFrameSink *)inputFrameSink
public func inputFrameSink() -> InputFrameSink
public virtual InputFrameSink inputFrameSink()

戻り値

説明
InputFrameSink

bufferRequirement

現在このコンポーネントが占有している camera buffer の数です。

int easyar_SurfaceTracker_bufferRequirement(easyar_SurfaceTracker * This)
int bufferRequirement()
public int bufferRequirement()
fun bufferRequirement(): Int
- (int)bufferRequirement
public func bufferRequirement() -> Int32
public virtual int bufferRequirement()

戻り値

説明
Int32

outputFrameSource

OutputFrame 出力ポートです。

void easyar_SurfaceTracker_outputFrameSource(easyar_SurfaceTracker * This, easyar_OutputFrameSource * * Return)
std::shared_ptr<OutputFrameSource> outputFrameSource()
public @Nonnull OutputFrameSource outputFrameSource()
fun outputFrameSource(): OutputFrameSource
- (easyar_OutputFrameSource *)outputFrameSource
public func outputFrameSource() -> OutputFrameSource
public virtual OutputFrameSource outputFrameSource()

戻り値

説明
OutputFrameSource

create

作成します。

void easyar_SurfaceTracker_create(easyar_SurfaceTracker * * Return)
static std::shared_ptr<SurfaceTracker> create()
public static @Nonnull SurfaceTracker create()
companion object fun create(): SurfaceTracker
+ (easyar_SurfaceTracker *)create
public static func create() -> SurfaceTracker
public static SurfaceTracker create()

戻り値

説明
SurfaceTracker

start

tracking アルゴリズムを開始します。

bool easyar_SurfaceTracker_start(easyar_SurfaceTracker * This)
bool start()
public boolean start()
fun start(): Boolean
- (bool)start
public func start() -> Bool
public virtual bool start()

戻り値

説明
Boolean

stop

tracking アルゴリズムを一時停止します。tracking を再開するには start を呼び出します。

void easyar_SurfaceTracker_stop(easyar_SurfaceTracker * This)
void stop()
public void stop()
fun stop(): Unit
- (void)stop
public func stop() -> Void
public virtual void stop()

戻り値

説明
Void

close

閉じます。close 後は使用しないでください。

void easyar_SurfaceTracker_close(easyar_SurfaceTracker * This)
void close()
public void close()
fun close(): Unit
- (void)close
public func close() -> Void
public virtual void close()

戻り値

説明
Void

alignTargetToCameraImagePoint

tracked target point を camera image の指定点に合わせます。image coordinate system ([0, 1]^2) では、x は右向き、y は下向きで、origin は左上隅です。screen coordinates から image coordinates へ変換するには imageCoordinatesFromScreenCoordinates を使用できます。

void easyar_SurfaceTracker_alignTargetToCameraImagePoint(easyar_SurfaceTracker * This, easyar_Vec2F cameraImagePoint)
void alignTargetToCameraImagePoint(Vec2F cameraImagePoint)
public void alignTargetToCameraImagePoint(@Nonnull Vec2F cameraImagePoint)
fun alignTargetToCameraImagePoint(cameraImagePoint: Vec2F): Unit
- (void)alignTargetToCameraImagePoint:(easyar_Vec2F *)cameraImagePoint
public func alignTargetToCameraImagePoint(_ cameraImagePoint: Vec2F) -> Void
public virtual void alignTargetToCameraImagePoint(Vec2F cameraImagePoint)

パラメーター

名前 説明
cameraImagePoint Vec2F

戻り値

説明
Void