Table of Contents

Class MegaTracker

Ruang Nama
easyar

Menyediakan fungsi pelacakan awan. MegaTracker menggunakan 1 buffer kamera.

MegaTracker

Metode

isAvailable

Memeriksa ketersediaan MegaTracker. Selalu mengembalikan true.

bool easyar_MegaTracker_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()

Mengembalikan

Tipe Deskripsi
Boolean

inputFrameSink

Port input untuk frame input. Frame input MegaTracker harus berisi parameter kamera, informasi timestamp, dan informasi spasial (cameraTransform dan trackingStatus). Lihat InputFrameSink.

void easyar_MegaTracker_inputFrameSink(easyar_MegaTracker * 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()

Mengembalikan

Tipe Deskripsi
InputFrameSink

accelerometerResultSink

Port input untuk hasil akselerometer. Lihat AccelerometerResultSink.

void easyar_MegaTracker_accelerometerResultSink(easyar_MegaTracker * This, easyar_AccelerometerResultSink * * Return)
std::shared_ptr<AccelerometerResultSink> accelerometerResultSink()
public @Nonnull AccelerometerResultSink accelerometerResultSink()
fun accelerometerResultSink(): AccelerometerResultSink
- (easyar_AccelerometerResultSink *)accelerometerResultSink
public func accelerometerResultSink() -> AccelerometerResultSink
public virtual AccelerometerResultSink accelerometerResultSink()

Mengembalikan

Tipe Deskripsi
AccelerometerResultSink

locationResultSink

Opsional. Port input untuk hasil lokasi. Lihat LocationResultSink.

void easyar_MegaTracker_locationResultSink(easyar_MegaTracker * This, easyar_LocationResultSink * * Return)
std::shared_ptr<LocationResultSink> locationResultSink()
public @Nonnull LocationResultSink locationResultSink()
fun locationResultSink(): LocationResultSink
- (easyar_LocationResultSink *)locationResultSink
public func locationResultSink() -> LocationResultSink
public virtual LocationResultSink locationResultSink()

Mengembalikan

Tipe Deskripsi
LocationResultSink

proximityLocationResultSink

Opsional. Port input untuk hasil lokasi kedekatan. Lihat ProximityLocationResultSink.

void easyar_MegaTracker_proximityLocationResultSink(easyar_MegaTracker * This, easyar_ProximityLocationResultSink * * Return)
std::shared_ptr<ProximityLocationResultSink> proximityLocationResultSink()
public @Nonnull ProximityLocationResultSink proximityLocationResultSink()
fun proximityLocationResultSink(): ProximityLocationResultSink
- (easyar_ProximityLocationResultSink *)proximityLocationResultSink
public func proximityLocationResultSink() -> ProximityLocationResultSink
public virtual ProximityLocationResultSink proximityLocationResultSink()

Mengembalikan

Tipe Deskripsi
ProximityLocationResultSink

bufferRequirement

Jumlah buffer kamera yang digunakan oleh komponen saat ini.

int easyar_MegaTracker_bufferRequirement(easyar_MegaTracker * This)
int bufferRequirement()
public int bufferRequirement()
fun bufferRequirement(): Int
- (int)bufferRequirement
public func bufferRequirement() -> Int32
public virtual int bufferRequirement()

Mengembalikan

Tipe Deskripsi
Int32

outputFrameSource

Port output untuk frame output. Lihat OutputFrameSource.

void easyar_MegaTracker_outputFrameSource(easyar_MegaTracker * 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()

Mengembalikan

Tipe Deskripsi
OutputFrameSource

create

Membuat.

void easyar_MegaTracker_create(easyar_String * server, easyar_String * apiKey, easyar_String * apiSecret, easyar_String * appId, easyar_MegaTracker * * Return)
static std::shared_ptr<MegaTracker> create(std::string server, std::string apiKey, std::string apiSecret, std::string appId)
public static @Nonnull MegaTracker create(java.lang.@Nonnull String server, java.lang.@Nonnull String apiKey, java.lang.@Nonnull String apiSecret, java.lang.@Nonnull String appId)
companion object fun create(server: String, apiKey: String, apiSecret: String, appId: String): MegaTracker
+ (easyar_MegaTracker *)create:(NSString *)server apiKey:(NSString *)apiKey apiSecret:(NSString *)apiSecret appId:(NSString *)appId
public static func create(_ server: String, _ apiKey: String, _ apiSecret: String, _ appId: String) throws -> MegaTracker
public static MegaTracker create(string server, string apiKey, string apiSecret, string appId)

Parameter

Nama Tipe Deskripsi
server String
apiKey String
apiSecret String
appId String

Mengembalikan

Tipe Deskripsi
MegaTracker

createWithToken

Membuat menggunakan API Token.

void easyar_MegaTracker_createWithToken(easyar_String * server, easyar_String * apiToken, easyar_String * appId, easyar_MegaTracker * * Return)
static std::shared_ptr<MegaTracker> createWithToken(std::string server, std::string apiToken, std::string appId)
public static @Nonnull MegaTracker createWithToken(java.lang.@Nonnull String server, java.lang.@Nonnull String apiToken, java.lang.@Nonnull String appId)
companion object fun createWithToken(server: String, apiToken: String, appId: String): MegaTracker
+ (easyar_MegaTracker *)createWithToken:(NSString *)server apiToken:(NSString *)apiToken appId:(NSString *)appId
public static func createWithToken(_ server: String, _ apiToken: String, _ appId: String) throws -> MegaTracker
public static MegaTracker createWithToken(string server, string apiToken, string appId)

Parameter

Nama Tipe Deskripsi
server String
apiToken String
appId String

Mengembalikan

Tipe Deskripsi
MegaTracker

updateToken

Memperbarui API Token.

void easyar_MegaTracker_updateToken(easyar_MegaTracker * This, easyar_String * apiToken)
void updateToken(std::string apiToken)
public void updateToken(java.lang.@Nonnull String apiToken)
fun updateToken(apiToken: String): Unit
- (void)updateToken:(NSString *)apiToken
public func updateToken(_ apiToken: String) -> Void
public virtual void updateToken(string apiToken)

Parameter

Nama Tipe Deskripsi
apiToken String

Mengembalikan

Tipe Deskripsi
Void

setMegaApiType

Mengatur jenis API MEGA. Default-nya adalah Block-based.

void easyar_MegaTracker_setMegaApiType(easyar_MegaTracker * This, easyar_MegaApiType type)
void setMegaApiType(MegaApiType type)
public void setMegaApiType(int type)
fun setMegaApiType(type: Int): Unit
- (void)setMegaApiType:(easyar_MegaApiType)type
public func setMegaApiType(_ type: MegaApiType) -> Void
public virtual void setMegaApiType(MegaApiType type)

Parameter

Nama Tipe Deskripsi
type MegaApiType

Mengembalikan

Tipe Deskripsi
Void

setSpotVersionId

Mengatur ID versi lokasi. Hanya tersedia saat MegaApiType.Landmark diaktifkan.

void easyar_MegaTracker_setSpotVersionId(easyar_MegaTracker * This, easyar_OptionalOfString spotVersionId)
void setSpotVersionId(std::optional<std::string> spotVersionId)
public void setSpotVersionId(java.lang.@Nullable String spotVersionId)
fun setSpotVersionId(spotVersionId: String?): Unit
- (void)setSpotVersionId:(NSString *)spotVersionId
public func setSpotVersionId(_ spotVersionId: String?) -> Void
public virtual void setSpotVersionId(Optional<string> spotVersionId)

Parameter

Nama Tipe Deskripsi
spotVersionId Optional<>

Mengembalikan

Tipe Deskripsi
Void

switchEndPoint

Mengganti endpoint jarak jauh.

void easyar_MegaTracker_switchEndPoint(easyar_MegaTracker * This, easyar_String * server, easyar_String * apiKey, easyar_String * apiSecret, easyar_String * appId)
void switchEndPoint(std::string server, std::string apiKey, std::string apiSecret, std::string appId)
public void switchEndPoint(java.lang.@Nonnull String server, java.lang.@Nonnull String apiKey, java.lang.@Nonnull String apiSecret, java.lang.@Nonnull String appId)
fun switchEndPoint(server: String, apiKey: String, apiSecret: String, appId: String): Unit
- (void)switchEndPoint:(NSString *)server apiKey:(NSString *)apiKey apiSecret:(NSString *)apiSecret appId:(NSString *)appId
public func switchEndPoint(_ server: String, _ apiKey: String, _ apiSecret: String, _ appId: String) -> Void
public virtual void switchEndPoint(string server, string apiKey, string apiSecret, string appId)

Parameter

Nama Tipe Deskripsi
server String
apiKey String
apiSecret String
appId String

Mengembalikan

Tipe Deskripsi
Void

switchEndPointWithToken

Mengganti endpoint jarak jauh menggunakan API Token.

void easyar_MegaTracker_switchEndPointWithToken(easyar_MegaTracker * This, easyar_String * server, easyar_String * apiToken, easyar_String * appId)
void switchEndPointWithToken(std::string server, std::string apiToken, std::string appId)
public void switchEndPointWithToken(java.lang.@Nonnull String server, java.lang.@Nonnull String apiToken, java.lang.@Nonnull String appId)
fun switchEndPointWithToken(server: String, apiToken: String, appId: String): Unit
- (void)switchEndPointWithToken:(NSString *)server apiToken:(NSString *)apiToken appId:(NSString *)appId
public func switchEndPointWithToken(_ server: String, _ apiToken: String, _ appId: String) -> Void
public virtual void switchEndPointWithToken(string server, string apiToken, string appId)

Parameter

Nama Tipe Deskripsi
server String
apiToken String
appId String

Mengembalikan

Tipe Deskripsi
Void

bindBlockPrior

Mengikat ke blok peta tertentu. Ikatan akan dilepas otomatis saat reset atau ganti endpoint.

void easyar_MegaTracker_bindBlockPrior(easyar_MegaTracker * This, easyar_BlockPriorResult * blockPrior)
void bindBlockPrior(std::shared_ptr<BlockPriorResult> blockPrior)
public void bindBlockPrior(@Nonnull BlockPriorResult blockPrior)
fun bindBlockPrior(blockPrior: BlockPriorResult): Unit
- (void)bindBlockPrior:(easyar_BlockPriorResult *)blockPrior
public func bindBlockPrior(_ blockPrior: BlockPriorResult) -> Void
public virtual void bindBlockPrior(BlockPriorResult blockPrior)

Parameter

Nama Tipe Deskripsi
blockPrior BlockPriorResult

Mengembalikan

Tipe Deskripsi
Void

unbindBlockPrior

Melepaskan ikatan blok peta.

void easyar_MegaTracker_unbindBlockPrior(easyar_MegaTracker * This)
void unbindBlockPrior()
public void unbindBlockPrior()
fun unbindBlockPrior(): Unit
- (void)unbindBlockPrior
public func unbindBlockPrior() -> Void
public virtual void unbindBlockPrior()

Mengembalikan

Tipe Deskripsi
Void

setRequestTimeParameters

Mengatur parameter waktu permintaan. timeoutMilliseconds adalah waktu habis koneksi. requestIntervalMilliseconds adalah interval permintaan yang diharapkan, default 1000, minimal 300, nilai lebih besar meningkatkan keseluruhan error.

void easyar_MegaTracker_setRequestTimeParameters(easyar_MegaTracker * This, easyar_OptionalOfInt timeoutMilliseconds, int requestIntervalMilliseconds)
void setRequestTimeParameters(std::optional<int> timeoutMilliseconds, int requestIntervalMilliseconds)
public void setRequestTimeParameters(java.lang.@Nullable Integer timeoutMilliseconds, int requestIntervalMilliseconds)
fun setRequestTimeParameters(timeoutMilliseconds: Int?, requestIntervalMilliseconds: Int): Unit
- (void)setRequestTimeParameters:(NSNumber *)timeoutMilliseconds requestIntervalMilliseconds:(int)requestIntervalMilliseconds
public func setRequestTimeParameters(_ timeoutMilliseconds: Int32?, _ requestIntervalMilliseconds: Int32) -> Void
public virtual void setRequestTimeParameters(Optional<int> timeoutMilliseconds, int requestIntervalMilliseconds)

Parameter

Nama Tipe Deskripsi
timeoutMilliseconds Optional<>
requestIntervalMilliseconds Int32

Mengembalikan

Tipe Deskripsi
Void

setEnableLocalization

Mengaktifkan/nonaktifkan pelacakan. Saat nonaktif, hasil pelacakan dari server tidak akan dikeluarkan. Default true.

void easyar_MegaTracker_setEnableLocalization(easyar_MegaTracker * This, bool enableLocalization)
void setEnableLocalization(bool enableLocalization)
public void setEnableLocalization(boolean enableLocalization)
fun setEnableLocalization(enableLocalization: Boolean): Unit
- (void)setEnableLocalization:(bool)enableLocalization
public func setEnableLocalization(_ enableLocalization: Bool) -> Void
public virtual void setEnableLocalization(bool enableLocalization)

Parameter

Nama Tipe Deskripsi
enableLocalization Boolean

Mengembalikan

Tipe Deskripsi
Void

setEnableStatelessLocalization

Mengaktifkan/nonaktifkan pelacakan tanpa status. Saat diaktifkan, hasil pelacakan sebelumnya tidak digunakan. Default false.

void easyar_MegaTracker_setEnableStatelessLocalization(easyar_MegaTracker * This, bool enableStatelessLocalization)
void setEnableStatelessLocalization(bool enableStatelessLocalization)
public void setEnableStatelessLocalization(boolean enableStatelessLocalization)
fun setEnableStatelessLocalization(enableStatelessLocalization: Boolean): Unit
- (void)setEnableStatelessLocalization:(bool)enableStatelessLocalization
public func setEnableStatelessLocalization(_ enableStatelessLocalization: Bool) -> Void
public virtual void setEnableStatelessLocalization(bool enableStatelessLocalization)

Parameter

Nama Tipe Deskripsi
enableStatelessLocalization Boolean

Mengembalikan

Tipe Deskripsi
Void

setResultAsyncMode

Mengatur mode hasil asinkron. Jika hasil dikeluarkan via outputFrameSource, set ke true. Jika hasil didapat via getSyncResult, set ke false. Default enableAsync adalah true. Mode sinkron hanya berlaku dengan Lisensi XR.

bool easyar_MegaTracker_setResultAsyncMode(easyar_MegaTracker * This, bool enableAsync)
bool setResultAsyncMode(bool enableAsync)
public boolean setResultAsyncMode(boolean enableAsync)
fun setResultAsyncMode(enableAsync: Boolean): Boolean
- (bool)setResultAsyncMode:(bool)enableAsync
public func setResultAsyncMode(_ enableAsync: Bool) -> Bool
public virtual bool setResultAsyncMode(bool enableAsync)

Parameter

Nama Tipe Deskripsi
enableAsync Boolean

Mengembalikan

Tipe Deskripsi
Boolean

setRequestMessage

void easyar_MegaTracker_setRequestMessage(easyar_MegaTracker * This, easyar_String * message)
void setRequestMessage(std::string message)
public void setRequestMessage(java.lang.@Nonnull String message)
fun setRequestMessage(message: String): Unit
- (void)setRequestMessage:(NSString *)message
public func setRequestMessage(_ message: String) -> Void
public virtual void setRequestMessage(string message)

Parameter

Nama Tipe Deskripsi
message String

Mengembalikan

Tipe Deskripsi
Void

setLocalizationCallback

Mengatur callback pelacakan. Dipicu setiap kali pelacakan dilakukan.

void easyar_MegaTracker_setLocalizationCallback(easyar_MegaTracker * This, easyar_CallbackScheduler * callbackScheduler, easyar_OptionalOfFunctorOfVoidFromMegaTrackerLocalizationResponse callback)
void setLocalizationCallback(std::shared_ptr<CallbackScheduler> callbackScheduler, std::optional<std::function<void(std::shared_ptr<MegaTrackerLocalizationResponse>)>> callback)
public void setLocalizationCallback(@Nonnull CallbackScheduler callbackScheduler, @Nullable FunctorOfVoidFromMegaTrackerLocalizationResponse callback)
fun setLocalizationCallback(callbackScheduler: CallbackScheduler, callback: FunctorOfVoidFromMegaTrackerLocalizationResponse?): Unit
- (void)setLocalizationCallback:(easyar_CallbackScheduler *)callbackScheduler callback:(void (^)(easyar_MegaTrackerLocalizationResponse * response))callback
public func setLocalizationCallback(_ callbackScheduler: CallbackScheduler, _ callback: ((MegaTrackerLocalizationResponse) -> Void)?) -> Void
public virtual void setLocalizationCallback(CallbackScheduler callbackScheduler, Optional<Action<MegaTrackerLocalizationResponse>> callback)

Parameter

Nama Tipe Deskripsi
callbackScheduler CallbackScheduler
callback Optional<Action<MegaTrackerLocalizationResponse>>

Mengembalikan

Tipe Deskripsi
Void

setCameraPositionOverride

Mengatur nilai override posisi kamera relatif terhadap blok peta. Setelah diatur, MegaTracker akan mengeluarkan nilai override, bukan menggunakan koordinat dari frame input. Berguna untuk meningkatkan akurasi pose saat informasi peta diketahui dan sensor terbatas.

void easyar_MegaTracker_setCameraPositionOverride(easyar_MegaTracker * This, easyar_OptionalOfFloat x, easyar_OptionalOfFloat y, easyar_OptionalOfFloat z)
void setCameraPositionOverride(std::optional<float> x, std::optional<float> y, std::optional<float> z)
public void setCameraPositionOverride(java.lang.@Nullable Float x, java.lang.@Nullable Float y, java.lang.@Nullable Float z)
fun setCameraPositionOverride(x: Float?, y: Float?, z: Float?): Unit
- (void)setCameraPositionOverride:(NSNumber *)x y:(NSNumber *)y z:(NSNumber *)z
public func setCameraPositionOverride(_ x: Float?, _ y: Float?, _ z: Float?) -> Void
public virtual void setCameraPositionOverride(Optional<float> x, Optional<float> y, Optional<float> z)

Parameter

Nama Tipe Deskripsi
x Optional<Single>
y Optional<Single>
z Optional<Single>

Mengembalikan

Tipe Deskripsi
Void

start

Memulai MegaTracker.

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

Mengembalikan

Tipe Deskripsi
Boolean

stop

Menghentikan MegaTracker. Panggil start untuk menjalankan kembali.

void easyar_MegaTracker_stop(easyar_MegaTracker * This)
void stop()
public void stop()
fun stop(): Unit
- (void)stop
public func stop() -> Void
public virtual void stop()

Mengembalikan

Tipe Deskripsi
Void

reset

Mereset MegaTracker, menghapus semua status.

void easyar_MegaTracker_reset(easyar_MegaTracker * This)
void reset()
public void reset()
fun reset(): Unit
- (void)reset
public func reset() -> Void
public virtual void reset()

Mengembalikan

Tipe Deskripsi
Void

close

Menutup MegaTracker. Tidak boleh digunakan setelah close.

void easyar_MegaTracker_close(easyar_MegaTracker * This)
void close()
public void close()
fun close(): Unit
- (void)close
public func close() -> Void
public virtual void close()

Mengembalikan

Tipe Deskripsi
Void

getSyncResult

Mendapatkan hasil output sinkron. Mengembalikan kosong jika MegaTracker dijeda atau mode asinkron tidak disetel ke false via setResultAsyncMode.

void easyar_MegaTracker_getSyncResult(easyar_MegaTracker * This, easyar_MotionInputData * motionInputData, easyar_OptionalOfMegaTrackerResult * Return)
std::optional<std::shared_ptr<MegaTrackerResult>> getSyncResult(std::shared_ptr<MotionInputData> motionInputData)
public @Nullable MegaTrackerResult getSyncResult(@Nonnull MotionInputData motionInputData)
fun getSyncResult(motionInputData: MotionInputData): MegaTrackerResult?
- (easyar_MegaTrackerResult *)getSyncResult:(easyar_MotionInputData *)motionInputData
public func getSyncResult(_ motionInputData: MotionInputData) -> MegaTrackerResult?
public virtual Optional<MegaTrackerResult> getSyncResult(MotionInputData motionInputData)

Parameter

Nama Tipe Deskripsi
motionInputData MotionInputData

Mengembalikan

Tipe Deskripsi
Optional<MegaTrackerResult>