Class MegaTracker
Предоставляет функцию облачного позиционирования.
MegaTracker занимает 1 буфер камеры.
MegaTracker
Методы
isAvailable
Проверяет доступность MegaTracker. Всегда возвращает true.
bool easyar_MegaTracker_isAvailable(void)
static bool isAvailable()
public static boolean isAvailable()
companion object fun isAvailable(): Boolean
public static func isAvailable() -> Bool
public static bool isAvailable()
Возвращаемое значение
Порт ввода входного кадра. Входной кадр MegaTracker должен содержать параметры камеры, временные метки и пространственную информацию (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()
Возвращаемое значение
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()
Возвращаемое значение
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()
Возвращаемое значение
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()
Возвращаемое значение
bufferRequirement
Количество буферов камеры, занимаемых текущим компонентом.
int easyar_MegaTracker_bufferRequirement(easyar_MegaTracker * This)
public int bufferRequirement()
fun bufferRequirement(): Int
public func bufferRequirement() -> Int32
public virtual int bufferRequirement()
Возвращаемое значение
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()
Возвращаемое значение
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 |
|
Возвращаемое значение
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 |
|
Возвращаемое значение
updateToken
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 |
|
Возвращаемое значение
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)
Параметры
Возвращаемое значение
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<> |
|
Возвращаемое значение
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 |
|
Возвращаемое значение
switchEndPointWithToken
Переключить удаленную конечную точку с использованием 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)
Параметры
| Имя |
Тип |
Описание |
| server |
String |
|
| apiToken |
String |
|
| appId |
String |
|
Возвращаемое значение
bindBlockPrior
Привязать к конкретному блоку карты. Автоматически отвязывается при сбросе или переключении удаленной конечной точки.
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)
Параметры
Возвращаемое значение
unbindBlockPrior
void easyar_MegaTracker_unbindBlockPrior(easyar_MegaTracker * This)
public void unbindBlockPrior()
fun unbindBlockPrior(): Unit
public func unbindBlockPrior() -> Void
public virtual void unbindBlockPrior()
Возвращаемое значение
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 |
|
Возвращаемое значение
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 |
|
Возвращаемое значение
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 |
|
Возвращаемое значение
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 |
|
Возвращаемое значение
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 |
|
Возвращаемое значение
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)
Параметры
Возвращаемое значение
setCameraPositionOverride
Установить переопределение позиции камеры относительно блока карты. После установки 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> |
|
Возвращаемое значение
start
bool easyar_MegaTracker_start(easyar_MegaTracker * This)
public func start() -> Bool
public virtual bool start()
Возвращаемое значение
stop
Остановить MegaTracker. Вызовите start для перезапуска.
void easyar_MegaTracker_stop(easyar_MegaTracker * This)
public func stop() -> Void
public virtual void stop()
Возвращаемое значение
reset
Сбросить MegaTracker, очистить все состояния.
void easyar_MegaTracker_reset(easyar_MegaTracker * This)
public func reset() -> Void
public virtual void reset()
Возвращаемое значение
close
Закрыть MegaTracker. Не следует использовать после close.
void easyar_MegaTracker_close(easyar_MegaTracker * This)
public func close() -> Void
public virtual void close()
Возвращаемое значение
getSyncResult
Получить синхронные выходные результаты. Если MegaTracker приостановлен или асинхронный режим результатов не установлен в false через 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)
Параметры
Возвращаемое значение