Table of Contents

Class MegaTracker

네임스페이스
easyar

클라우드 위치 추적 기능을 제공합니다. MegaTracker는 1개 camera 버퍼를 차지합니다.

MegaTracker

메서드

isAvailable

MegaTracker 사용 가능 여부를 확인합니다. 항상 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()

반환 값

형식 설명
Boolean

inputFrameSink

입력 프레임 입력 포트. MegaTracker 입력 프레임은 camera 파라미터, 타임스탬프 정보 및 공간 정보(cameraTransform 및 trackingStatus)를 포함해야 합니다. 참조 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()

반환 값

형식 설명
InputFrameSink

accelerometerResultSink

가속도계 결과 입력 포트. 참조 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()

반환 값

형식 설명
AccelerometerResultSink

locationResultSink

선택 사항. 위치 결과 입력포트. 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()

반환 값

형식 설명
LocationResultSink

proximityLocationResultSink

선택 사항. 근접 위치 결과 입력 포트. 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()

반환 값

형식 설명
ProximityLocationResultSink

bufferRequirement

현재 구성 요소가 카메라 버퍼를 점유하는 수량.

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

반환 값

형식 설명
Int32

outputFrameSource

출력 프레임 출력 포트. 참조 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()

반환 값

형식 설명
OutputFrameSource

create

생성.

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)

매개 변수

이름 형식 설명
server String
apiKey String
apiSecret String
appId String

반환 값

형식 설명
MegaTracker

createWithToken

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)

매개 변수

이름 형식 설명
server String
apiToken String
appId String

반환 값

형식 설명
MegaTracker

updateToken

업데이트 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)

매개 변수

이름 형식 설명
apiToken String

반환 값

형식 설명
Void

setMegaApiType

MEGA API 유형을 설정합니다. 기본값은 Block입니다.

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)

매개 변수

이름 형식 설명
type MegaApiType

반환 값

형식 설명
Void

setSpotVersionId

위치 버전 ID를 설정합니다. MegaApiType.Landmark가 켜져 있을 때만 사용 가능합니다.

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)

매개 변수

이름 형식 설명
spotVersionId Optional<>

반환 값

형식 설명
Void

switchEndPoint

원격 엔드포인트 전환

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)

매개 변수

이름 형식 설명
server String
apiKey String
apiSecret String
appId String

반환 값

형식 설명
Void

switchEndPointWithToken

API 토큰을 사용하여 원격 엔드포인트를 전환합니다.

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)

매개 변수

이름 형식 설명
server String
apiToken String
appId String

반환 값

형식 설명
Void

bindBlockPrior

특정 맵 block에 바인딩. 리셋하거나 원격 엔드포인트를 전환할 때 자동으로 바인딩 해제됩니다.

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)

매개 변수

이름 형식 설명
blockPrior BlockPriorResult

반환 값

형식 설명
Void

unbindBlockPrior

지도 블록 바인딩 해제.

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

반환 값

형식 설명
Void

setRequestTimeParameters

요청 시간 파라미터를 설정합니다. timeoutMilliseconds는 연결 타임아웃 시간입니다. requestIntervalMilliseconds는 예상 요청 간격 시간으로, 기본값은 1000, 최소 300이며 값이 클수록 전체 오차가 커집니다.

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)

매개 변수

이름 형식 설명
timeoutMilliseconds Optional<>
requestIntervalMilliseconds Int32

반환 값

형식 설명
Void

setEnableLocalization

위치 활성화 여부를 설정합니다. 위치를 활성화하지 않으면 서버에서 반환된 위치 결과가 출력되지 않습니다. 기본값은 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)

매개 변수

이름 형식 설명
enableLocalization Boolean

반환 값

형식 설명
Void

setEnableStatelessLocalization

상태 비저장 위치 결정 사용 여부를 설정합니다. 상태 비저장 위치 결정이 활성화되면 위치를 확인할 때 이전 위치 결과를 사용하지 않습니다. 기본값은 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)

매개 변수

이름 형식 설명
enableStatelessLocalization Boolean

반환 값

형식 설명
Void

setResultAsyncMode

결과 비동기 모드를 설정합니다. 결과가 outputFrameSource를 통해 출력되는 경우 true로 설정해야 하며, 결과가 getSyncResult를 통해 획득되는 경우 false로 설정해야 합니다. 기본값 enableAsync는 true입니다. 동기 모드는 XR License를 사용할 때만 유효합니다.

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)

매개 변수

이름 형식 설명
enableAsync Boolean

반환 값

형식 설명
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)

매개 변수

이름 형식 설명
message String

반환 값

형식 설명
Void

setLocalizationCallback

위치 콜백을 설정합니다. 매번 위치가 측정될 때마다 이 콜백이 발생시킵니다.

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)

매개 변수

이름 형식 설명
callbackScheduler CallbackScheduler
callback Optional<Action<MegaTrackerLocalizationResponse>>

반환 값

형식 설명
Void

setCameraPositionOverride

카메라 위치를 지도 block에 상대적으로 커버리지 값으로 설정합니다. 설정 후 MegaTracker는 입력 프레임 데이터의 해당 좌표를 사용하지 않고 커버리지 값을 출력합니다. 지도 정보가 알려져 있고 센서가 제한적인 상황에서 출력 포즈의 정확도를 향상시키는 데 사용할 수 있습니다.

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)

매개 변수

이름 형식 설명
x Optional<Single>
y Optional<Single>
z Optional<Single>

반환 값

형식 설명
Void

start

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

반환 값

형식 설명
Boolean

stop

MegaTracker를 중지합니다. 다시 실행하려면 start를 호출하세요.

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

반환 값

형식 설명
Void

reset

MegaTracker를 초기화하고 모든 상태를 지웁니다.

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

반환 값

형식 설명
Void

close

MegaTracker를 닫습니다. 닫은 후에는 사용해서는 안 됩니다.

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

반환 값

형식 설명
Void

getSyncResult

동기식 출력 결과를 가져옵니다. MegaTracker가 일시 중지되었거나 setResultAsyncMode를 통해 결과 비동기 모드가 false로 설정되지 않은 경우 반환값이 비어 있습니다.

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)

매개 변수

이름 형식 설명
motionInputData MotionInputData

반환 값

형식 설명
Optional<MegaTrackerResult>