Namespace easyar
Классы
- Accelerometer
Accelerometer вызывает системный акселерометр, выводит AccelerometerResult. Когда устройство больше не нужно, вызовите close для его закрытия. После close использование недопустимо. Не рекомендуется открывать его многократно одновременно — это может привести к неработоспособности или снижению точности.
- AccelerometerResult
Показания акселерометра. Положительное направление оси x от центра устройства к правой части экрана. Положительное направление оси y от центра устройства к верхней части экрана. Положительное направление оси z от центра устройства перпендикулярно экрану наружу. Единицы измерения x,y,z — м/с². Единица измерения временной метки — секунды.
- AccelerometerResultSink
Входной порт для результатов акселерометра. Используется для предоставления входного порта компонента. Все члены этого класса потокобезопасны.
- AccelerometerResultSource
Выходной порт результатов акселерометра. Используется для предоставления выходного порта компонента. Все члены этого класса потокобезопасны.
- ARCoreCameraDevice
ARCoreCameraDevice реализует камеру на основе ARCore, выводит InputFrame (включая изображение, параметры камеры, метку времени, информацию о положении 6DOF и состояние отслеживания). При использовании необходимо сначала загрузить libarcore_sdk_c.so с помощью java.lang.System.loadLibrary. После создания можно вызывать start/stop для начала и остановки сбора данных видеопотока. Когда устройство больше не нужно, можно вызвать close для его закрытия. После close не следует продолжать использование. ARCoreCameraDevice выводит InputFrame через inputFrameSource, inputFrameSource следует подключить к InputFrameSink для использования. bufferCapacity обозначает ёмкость буфера InputFrame, если с устройства выводится больше этого количества InputFrame и они не освобождены, устройство перестанет выводить новые InputFrame до тех пор, пока предыдущие InputFrame не будут освобождены. Это может вызвать проблемы, такие как зависание изображения. Примечание: текущая реализация ARCore (v1.13.0) имеет утечку памяти при создании и уничтожении сессии; многократное создание и уничтожение может привести к постоянному росту использования памяти, и память не освобождается после уничтожения.
- ARCoreDeviceListDownloader
ARCoreDeviceListDownloader используется для загрузки обновлений калибровочных параметров списка устройств, используемых в ARCoreCameraDevice.
- ARKitCameraDevice
ARKitCameraDevice реализует камеру на основе ARKit, выводящую InputFrame (содержит изображение, параметры камеры, временную метку, 6DOF-позиционирование и статус отслеживания). После создания можно вызывать start/stop для запуска и остановки сбора видеопотока. Когда устройство больше не нужно, вызовите close для его закрытия. После close использовать его не следует. ARKitCameraDevice выводит InputFrame через inputFrameSource, который следует подключить к InputFrameSink для использования. bufferCapacity указывает ёмкость буфера для InputFrame. Если устройство выводит больше кадров, чем это значение, и они не освобождены, новые InputFrame перестанут выводиться до освобождения предыдущих. Это может вызвать зависание изображения.
- AttitudeSensor
AttitudeSensor использует предоставленный системой датчик положения, выводящий AttitudeSensorResult. Когда устройство больше не нужно, вызовите close для его закрытия. После close использование не рекомендуется. Не рекомендуется открывать одновременно несколько раз, это может привести к неработоспособности или снижению точности.
- AttitudeSensorResult
Показания датчика положения. Положительное направление оси x направлено от центра устройства к правой части экрана. Положительное направление оси y направлено от центра устройства к верхней части экрана. Положительное направление оси z направлено от центра устройства перпендикулярно экрану наружу. Устройство повернуто на угол θ вокруг осей (x, y, z). Единичный кватернион поворота: (cos(θ/2), x*sin(θ/2), y*sin(θ/2), z*sin(θ/2)). (v0, v1, v2, v3) = (cos(θ/2), x*sin(θ/2), y*sin(θ/2), z*sin(θ/2)). Опорная система координат определена как набор направленных ортонормированных базисных векторов, где:
Z направлен в небо, параллельно земле. (X, Y, Z) образуют правую систему.Единица измерения временной метки (timestamp) — секунды.
- AttitudeSensorResultSink
Входной порт результатов датчика ориентации. Используется для предоставления входного порта компонента. Все члены этого класса потокобезопасны.
- AttitudeSensorResultSource
Выходной порт результатов датчика ориентации. Используется для предоставления выходного порта компонента. Все члены этого класса являются потокобезопасными.
- BlockInfo
Модель, полученная в результате плотной реконструкции, представлена в виде триангуляционной сетки, называемой mesh. Поскольку mesh часто обновляется, для обеспечения эффективности вся сетка модели реконструкции разделена на множество mesh block. Каждый mesh block представляет собой куб со стороной примерно в 1 метр, содержащий элементы вроде vertex и index. BlockInfo описывает содержимое mesh block. Здесь (x,y,z) — это индексы mesh block. Умножив (x,y,z) на физический размер каждого mesh block, можно получить координаты начала этого блока в мировой системе координат. Это позволяет заранее отфильтровывать необходимые для отображения части на основе положения mesh block в мире, экономя время рендеринга.
- BlockPriorResult
Априорная информация карты. blockIds — это идентификатор карты. mode — это режим, в котором априорная информация используется системой, который может быть soft или hard. Ссылка на BlockPriorMode.
- Buffer
Buffer хранит сырые байтовые массивы и может использоваться для доступа к данным изображения. В Java API можно получить buffer из Image и скопировать данные в Java-байтовый массив. Во всех версиях EasyAR Sense вы можете получить доступ к данным изображения. См. Image.
- BufferDictionary
Отображение пути файла в Buffer. Используется для представления нескольких файлов, размещенных в памяти.
- BufferPool
BufferPool реализует пул памяти, который может использоваться для пользовательских функций, таких как подключение камеры, требующих многократного выделения памяти одинакового размера, сокращая время выделения памяти.
- CalibrationDownloader
CalibrationDownloader используется для загрузки обновлений калибровочных параметров, используемых в MotionTracker. После загрузки необходимо пересоздать MotionTracker, чтобы изменения вступили в силу.
- CallbackScheduler
Планировщик обратных вызовов. Имеет два подкласса: DelayedCallbackScheduler и ImmediateCallbackScheduler. DelayedCallbackScheduler используется для отложенного вызова обратных вызовов до момента их ручного запуска, может использоваться в однопоточной среде (например, в различных UI-средах). ImmediateCallbackScheduler используется для немедленного выполнения обратных вызовов, может использоваться в многопоточной среде (например, на серверах или в фоновых службах).
- CameraDevice
CameraDevice реализует устройство камеры, которое выводит InputFrame (содержит изображение, параметры камеры и временную метку). Доступно на Windows, Mac, Android и iOS. После открытия можно вызывать start/stop для начала и остановки сбора данных. start/stop не влияют на ранее установленные параметры камеры. Когда устройство больше не нужно, можно вызвать close для его закрытия. После close не следует продолжать использовать. CameraDevice выводит InputFrame через inputFrameSource, inputFrameSource следует подключить к InputFrameSink для использования. bufferCapacity обозначает ёмкость буфера InputFrame, если количество InputFrame, выведенных из этого устройства и не освобожденных, превышает это число, устройство перестанет выводить новые InputFrame, пока предыдущие InputFrame не будут освобождены. Это может вызвать проблемы, такие как зависание изображения. При использовании на Android необходимо добавить объявление разрешения android.permission.CAMERA в AndroidManifest.xml. При использовании на iOS необходимо добавить объявление разрешения NSCameraUsageDescription в Info.plist.
- CameraDeviceSelector
Для выбора Camera API на Android (camera1 или camera2). camera1 имеет лучшую совместимость, но не хватает некоторой необходимой информации, такой как временная метка. camera2 имеет проблемы совместимости на некоторых устройствах. Различные варианты будут выбирать camera1 или camera2 в зависимости от цели.
- CameraParameters
Параметры камеры, включая размер изображения, фокусное расстояние, главную точку, тип камеры и угол поворота камеры относительно естественной ориентации устройства.
- CloudLocalizer
CloudLocalizer реализует функцию облачной локализации.
- CloudLocalizerBlockInstance
Экземпляр блока, обнаруженный CloudLocalizer.
- CloudRecognizer
CloudRecognizer реализует функцию облачного распознавания. Для использования функции облачного распознавания необходимо создать облачную галерею распознавания в облаке. Пожалуйста, обратитесь к документации EasyAR CRS. Когда компонент больше не нужен, вызовите close для его закрытия. После закрытия (close) использование не следует продолжать. Перед использованием CloudRecognizer необходимо настроить и подготовить ImageTracker. Любой возвращённый target перед отслеживанием (track) должен быть вручную загружен в ImageTracker с помощью loadTarget. После загрузки распознавание и отслеживание target происходит так же, как и с локальными target. После распознавания target вы можете получить его из обратного вызова, затем вам следует использовать uid target для различения разных target. runtimeID target генерируется динамически и не подходит для уникального различения target в случае облачного распознавания.
- DelayedCallbackScheduler
Планировщик отложенных обратных вызовов. Используется для откладывания обратных вызовов до момента ручного вызова, может использоваться в однопоточных средах (например, в различных UI средах). Все члены этого класса потокобезопасны.
- DenseSpatialMap
DenseSpatialMap используется для точного трехмерного плотного восстановления окружающей среды, его восстановленная модель представлена треугольной сеткой, называемой mesh. DenseSpatialMap занимает буфер одной камеры.
- EventDumpRecorder
Регистратор дампа событий. Используется для сохранения ключевой диагностической информации в файл EED. Все члены этого класса потокобезопасны.
- FeedbackFrame
Кадр обратной связи. Содержит входной кадр и исторический выходной кадр, используемый реактивными компонентами синхронной обработки, такими как ImageTracker.
- FeedbackFrameFork
Демультиплексор кадров обратной связи. Предназначен для параллельной передачи одного кадра обратной связи нескольким компонентам. Все члены этого класса потокобезопасны.
- FeedbackFrameSink
Порт ввода кадра обратной связи. Используется для предоставления входного порта компонента. Все члены этого класса являются потокобезопасными.
- FeedbackFrameSource
Порт вывода кадра обратной связи. Используется для вывода выходного порта компонента. Все члены этого класса потокобезопасны.
- FrameFilterResult
FrameFilterResult является базовым классом для всех результатов компонентов синхронных алгоритмов.
- Gyroscope
Gyroscope вызывает предоставленный системой гироскоп, выводит GyroscopeResult. Когда устройство больше не нужно, можно вызвать close для его закрытия. После close не следует продолжать использовать. Не рекомендуется открывать несколько раз одновременно, может стать недоступным или снизится точность.
- GyroscopeResult
Показания гироскопа. Положительное направление оси x — от центра устройства к правой части экрана. Положительное направление оси y — от центра устройства к верхней части экрана. Положительное направление оси z — от центра устройства перпендикулярно экрану наружу. x, y, z представляют угловую скорость вращения вокруг соответствующей оси, единица измерения — радиан/секунда. Положительное направление вращения — против часовой стрелки, если смотреть на устройство с направления положительной полуоси соответствующей координатной оси. Единица измерения timestamp — секунды.
- GyroscopeResultSink
Входной порт для результатов гироскопа. Используется для предоставления входного порта компонента. Все члены этого класса потокобезопасны.
- GyroscopeResultSource
Выходной порт гироскопа. Используется для предоставления выходного порта компонента. Все члены этого класса потокобезопасны.
- Image
Image хранит данные изображения, представляя изображение в памяти. Он предоставляет доступ к исходным данным через массив байтов, а также интерфейсы для получения информации, такой как ширина/высота. Во всех версиях EasyAR Sense вы можете получить доступ к данным изображения. В iOS доступ можно получить так:
#import <easyar/buffer.oc.h> #import <easyar/image.oc.h> easyar_OutputFrame * outputFrame = [outputFrameBuffer peek]; if (outputFrame != nil) { easyar_Image * i = [[outputFrame inputFrame] image]; easyar_Buffer * b = [i buffer]; char * bytes = calloc([b size], 1); memcpy(bytes, [b data], [b size]); // use bytes here free(bytes); }В Android:
import cn.easyar.*; OutputFrame outputFrame = outputFrameBuffer.peek(); if (outputFrame != null) { InputFrame inputFrame = outputFrame.inputFrame(); Image i = inputFrame.image(); Buffer b = i.buffer(); byte[] bytes = new byte[b.size()]; b.copyToByteArray(0, bytes, 0, bytes.length); // use bytes here b.dispose(); i.dispose(); inputFrame.dispose(); outputFrame.dispose(); }
- ImageHelper
Класс помощника изображений.
- ImageTarget
ImageTarget представляет собой цель в виде плоского изображения, которую можно отслеживать с помощью ImageTracker. Значения внутри ImageTarget должны быть заполнены через методы create... перед чтением. После успешной загрузки в ImageTracker через loadTarget, цель может быть обнаружена и отслежена ImageTracker.
- ImageTargetParameters
ImageTargetParameters представляет параметры, необходимые для создания ImageTarget.
- ImageTracker
ImageTracker обеспечивает обнаружение и отслеживание плоских карт. ImageTracker занимает (1 + SimultaneousNum) буферов камеры. Используйте setBufferCapacity камеры для установки значения не меньше, чем общее количество буферов камеры, занимаемых всеми компонентами. После создания можно вызывать start/stop для запуска и остановки работы; start/stop - это очень легковесные вызовы. Когда компонент больше не нужен, вызовите close для его закрытия. После close не следует продолжать использование. ImageTracker получает FeedbackFrame через feedbackFrameSink. FeedbackFrameSource должен быть подключен к feedbackFrameSink для использования. Прежде чем Target сможет быть отслежен ImageTracker, его необходимо загрузить через loadTarget/unloadTarget. Результат загрузки/выгрузки можно получить через callback, передаваемый в интерфейс.
- ImageTrackerConfig
ImageTracker создать конфигурацию.
- ImageTrackerResult
ImageTracker результат.
- ImmediateCallbackScheduler
Немедленный планировщик обратных вызовов. Используется для немедленного выполнения обратных вызовов, может использоваться в многопоточных средах (например, серверах или фоновых службах). Все члены этого класса потокобезопасны.
- InertialCameraDevice
InertialCameraDevice реализует камеру на основе инерции движения, выводящую InputFrame (содержащий изображение, параметры камеры, временную метку, матрицу преобразования позы и статус отслеживания) с CameraTransformType равным FiveDofRotXZ. После создания можно вызывать start/stop для запуска и остановки сбора данных видеопотока. Когда устройство больше не нужно, вызовите close для его закрытия. После close не следует продолжать использование. InertialCameraDevice выводит InputFrame через inputFrameSource; inputFrameSource следует подключить к InputFrameSink для использования. bufferCapacity обозначает емкость буфера InputFrame. Если с устройства выводится большее количество InputFrame, чем это значение, и они не освобождены, устройство перестанет выводить новые InputFrame, пока предыдущие не будут освобождены. Это может вызвать проблемы, такие как зависание изображения.
- InputFrame
Входной кадр. Содержит изображение, параметры камеры, временную метку, преобразование камеры относительно мировой системы координат и состояние отслеживания. Параметры камеры, временная метка, преобразование камеры и состояние отслеживания являются необязательными, но определенные алгоритмические компоненты могут иметь особые требования к входным данным.
- InputFrameFork
Входной разделитель кадров. Используется для параллельной передачи одного входного кадра в несколько компонентов. Все члены этого класса потокобезопасны.
- InputFramePlayer
Входной кадровый проигрыватель. Есть выходной порт входного кадра, который используется для извлечения входных кадров из файла EIF. Все члены этого класса потокобезопасны.
- InputFrameRecorder
Входной рекордер кадров. Имеет входной порт для входных кадров и выходной порт для входных кадров, используется для сохранения проходящих входных кадров в файл EIF. Все члены этого класса потокобезопасны.
- InputFrameSink
Входной порт входного кадра. Используется для раскрытия входных портов компонента. Все члены этого класса являются потокобезопасными.
- InputFrameSource
Выходной порт входного кадра. Используется для предоставления выходного порта компонента. Все члены этого класса потокобезопасны.
- InputFrameThrottler
Входной ограничитель кадров. Имеет входной порт для входных кадров и выходной порт для входных кадров, предназначенный для блокировки новых входных кадров от попадания в алгоритмический компонент, пока тот не завершит обработку данных предыдущего кадра. InputFrameThrottler занимает 1 буфер камеры. Используйте camera.setBufferCapacity для установки емкости буфера не менее суммарного количества буферов камеры, занимаемого всеми компонентами. Все члены данного класса потокобезопасны. Важно: подключение и отключение signalInput не должны выполняться одновременно с потоком данных, иначе может возникнуть состояние невозможности вывода. (Рекомендуется завершать подключение потока данных до запуска Камеры.)
- InputFrameToFeedbackFrameAdapter
Адаптер входного кадра в кадр обратной связи. Имеет входной порт для входного кадра, входной порт для исторического выходного кадра и выходной порт для кадра обратной связи. Предназначен для объединения входного кадра и исторического выходного кадра в кадр обратной связи, передаваемый алгоритмическим компонентам, требующим ввода кадра обратной связи, например ImageTracker. При каждом поступлении входного кадра он объединяется с последним доступным историческим выходным кадром в кадр обратной связи. Если исторический выходной кадр отсутствует, соответствующий раздел в кадре обратной связи будет пустым. InputFrameToFeedbackFrameAdapter занимает 1 буфер камеры. Необходимо установить setBufferCapacity камеры не менее, чем общее количество буферов камеры, занимаемых всеми компонентами. Все члены данного класса потокобезопасны.
- InputFrameToOutputFrameAdapter
Адаптер входного кадра к выходному кадру. Имеет входной порт для входного кадра и выходной порт для выходного кадра. Предназначен для обертывания входного кадра в выходной кадр, обеспечивая возможность рендеринга без подключения алгоритмических компонентов. Все члены данного класса потокобезопасны.
- JniUtility
JNI-утилита. Оборачивает массивы Java и ByteBuffer в Unity. Не поддерживается на платформе iOS.
- LocationResult
Показания местоположения. latitude, longitude в градусах. altitude в метрах. horizontalAccuracy — точность по горизонтали в метрах. verticalAccuracy — точность по вертикали в метрах.
- LocationResultSink
Порт ввода результатов позиционирования. Используется для предоставления входного порта компонента. Все члены этого класса являются потокобезопасными.
- LocationResultSource
Порт вывода результатов положения。 Используется для экспонирования выходного порта компонента。 Все члены этого класса потокобезопасны。
- Log
Класс журнала. Используется для вывода журнала или настройки пользовательской функции вывода журнала.
- Magnetometer
Magnetometer вызывает встроенный магнитометр системы, выводит MagnetometerResult. Когда устройство больше не нужно, можно вызвать close, чтобы его закрыть. После close не следует продолжать использовать. Не рекомендуется открывать одновременно несколько раз, это может привести к невозможности использования или снижению точности.
- MagnetometerResult
Показания магнитометра. Положительное направление оси x: от центра устройства к правой части экрана. Положительное направление оси y: от центра устройства к верхней части экрана. Положительное направление оси z: от центра устройства перпендикулярно экрану наружу. Единицы измерения x, y, z: uT (микротесла). Единица измерения времени: секунды.
- MagnetometerResultSink
Порт ввода результатов магнитометра. Используется для раскрытия входного порта компонента. Все члены этого класса потокобезопасны.
- MagnetometerResultSource
Выходной порт результатов магнитометра. Используется для предоставления выходного порта компонента. Все члены этого класса потокобезопасны.
- Matrix33F
Матрица третьего порядка. Данные расположены в порядке строк.
- Matrix44F
Квадратная матрица четвёртого порядка. Расположение данных — по строкам.
- MegaLandmarkFilter
MegaLandmarkFilter реализует функцию фильтрации облачного позиционирования VPS.
- MegaTracker
Предоставляет функцию облачного позиционирования. MegaTracker занимает 1 буфер камеры.
- MegaTrackerBlockInstance
Экземпляр блока, обнаруженный MegaTracker.
- MegaTrackerLocalizationResponse
Ответ на запрос позиционирования MegaTracker.
- MegaTrackerResult
Выход MegaTracker обновляется с частотой OutputFrame.
- MotionInputData
Входные данные движения. Содержит метку времени, преобразование относительно мировой системы координат и состояние отслеживания.
- MotionTrackerCameraDevice
MotionTrackerCameraDevice реализует камеру с 6DOF-отслеживанием движения в реальном масштабе, которая выводит InputFrame (содержит изображение, параметры камеры, временную метку, 6DOF-позицию и статус отслеживания). После создания можно вызвать start/stop для запуска и остановки потока данных. Когда устройство больше не нужно, вызовите close для его закрытия. После close использовать его не следует. MotionTrackerCameraDevice выводит InputFrame через inputFrameSource; inputFrameSource следует подключить к InputFrameSink для использования.
- ObjectTarget
ObjectTarget представляет цель 3D-объекта, которую можно отслеживать с помощью ObjectTracker. Размер ObjectTarget определяется файлом
obj. Масштаб можно изменить, настроивscale. Значениеscaleпо умолчанию равно 1. После успешной загрузки ObjectTarget в ObjectTracker через loadTarget, он может быть обнаружен и отслежен ObjectTracker.
- ObjectTargetParameters
ObjectTargetParameters представляет параметры, необходимые для создания ObjectTarget.
- ObjectTracker
ObjectTracker реализует обнаружение и отслеживание 3D-объект-таргетов. ObjectTracker использует буфер (1 + SimultaneousNum) камер. Необходимо использовать setBufferCapacity камеры для установки количества буферов не менее, чем занимают все компоненты. После создания можно вызывать start/stop для запуска и остановки работы, start/stop — очень легкие вызовы. Когда компонент больше не нужен, можно вызвать close для его закрытия. После close использовать его не следует. ObjectTracker получает входные данные через feedbackFrameSink FeedbackFrame. FeedbackFrameSource должен быть подключен к feedbackFrameSink для использования. Перед тем как Target сможет отслеживаться ObjectTracker, его необходимо загрузить через loadTarget/unloadTarget. Результаты загрузки/выгрузки можно получить через callback-интерфейс.
- ObjectTrackerResult
ObjectTracker результат.
- OutputFrame
выходной кадр. Содержит входной кадр и результаты вывода компонента синхронной обработки.
- OutputFrameBuffer
Буфер выходного кадра. Имеет входной порт для выходного кадра и функцию получения выходного кадра для преобразования способа получения выходного кадра из асинхронного в синхронный опрос, подходит для покадрового рендеринга. OutputFrameBuffer занимает 1 буфер камеры. Используйте setBufferCapacity камеры, чтобы установить значение не меньше, чем количество буферов камеры, занимаемых всеми компонентами. Все члены этого класса потокобезопасны.
- OutputFrameFork
Выходной разделитель кадров. Используется для параллельной передачи одного выходного кадра в несколько компонентов. Все члены этого класса являются потокобезопасными.
- OutputFrameJoin
Выходной объединитель кадров. Используется для объединения выходных кадров нескольких компонентов в один выходной кадр. Все члены этого класса являются потокобезопасными. Обратите внимание, что подключение и отключение нескольких входов не должно выполняться одновременно с потоком данных, иначе может возникнуть состояние, при котором вывод невозможен. (Рекомендуется завершить подключение потока данных до запуска камеры).
- OutputFrameSink
Выходной кадр порт-вход. Используется для предоставления входного порта компонента. Все члены этого класса потокобезопасны.
- OutputFrameSource
Выходной порт выходного кадра. Используется для предоставления выходного порта компонента. Все члены этого класса являются потокобезопасными.
- ProximityLocationResult
Соседние показания местоположения. x, y, z в метрах. Начало координат - начало тайла карты. y вверх. Точность в метрах. timestamp, validTime в секундах. is2d указывает, используется ли y.
- ProximityLocationResultSink
Входной порт для результатов ближайшего местоположения. Используется для предоставления входного порта компонента. Все члены этого класса являются потокобезопасными.
- ProximityLocationResultSource
Порт вывода результатов соседнего расположения. Используется для предоставления выходного порта компонента. Все члены этого класса потокобезопасны.
- Recorder
Recorder реализует функцию записи экрана текущей среды рендеринга. В настоящее время Recorder работает только в средах Android (4.3 или новее) и iOS с OpenGL ES 3.0. Из-за зависимости от OpenGLES все функции этого класса (кроме requestPermissions, включая деструктор) должны вызываться в одном потоке, содержащем контекст OpenGLES. Только для Unity В Unity, если используется функция Multi-threaded rendering, поток скриптов отделяется от потока рендеринга, и невозможно вызвать updateFrame в потоке рендеринга. Поэтому, если требуется использовать функцию записи экрана, следует отключить Multi-threaded rendering. При использовании на Android необходимо добавить объявление разрешения android.permission.RECORD_AUDIO в AndroidManifest.xml. При использовании на iOS необходимо добавить объявление разрешения NSMicrophoneUsageDescription в Info.plist.
- RecorderConfiguration
RecorderConfiguration является конфигурацией запуска для Recorder.
- SignalSink
Сигнальный входной порт. Используется для предоставления доступа к входному порту компонента. Все члены этого класса являются потокобезопасными.
- SignalSource
Выходной порт сигнала. Используется для предоставления выходного порта компонента. Все члены этого класса являются потокобезопасными.
- SparseSpatialMap
Предоставляет основные функции системы SparseSpatialMap, включая генерацию и хранение карт, загрузку карт и локализацию, а также возможность получения информации об окружающей среде, такой как облака точек, плоскости, и выполнение hitTest. SparseSpatialMap использует 2 буфера камеры. Следует использовать setBufferCapacity камеры для установки количества буферов камеры, не меньшего, чем количество, используемое всеми компонентами.
- SparseSpatialMapConfig
Для настройки стратегии локализации в разреженном построении карты.
- SparseSpatialMapManager
Класс управления SparseSpatialMap для организации функций совместного использования SparseSpatialMap.
- SparseSpatialMapResult
Получает выходные данные системы разреженного картирования и локализации, которые обновляются с частотой OutputFrame.
- SurfaceTracker
SurfaceTracker отслеживает окружающие поверхности. SurfaceTracker занимает 1 буфер камеры. Установите setBufferCapacity камеры не менее общего количества буферов камеры, занимаемых всеми компонентами. После создания можно вызывать start/stop для запуска и остановки; эти вызовы очень легковесны. Когда компонент больше не нужен, вызовите close для его закрытия. После close использовать его нельзя. SurfaceTracker получает InputFrame через inputFrameSink. Подключите InputFrameSource к inputFrameSink для использования.
- SurfaceTrackerResult
SurfaceTracker результат.
- Target
Target является базовым классом в EasyAR для всех целей, которые могут отслеживаться ImageTracker или другими алгоритмами.
- TargetInstance
TargetInstance - это цель, отслеживаемая трекером. TargetInstance включает исходную цель Target, которая была отслежена, а также текущее состояние и позу этой цели.
- TargetTrackerResult
TargetTrackerResult является базовым классом для ImageTrackerResult и ObjectTrackerResult.
- TextureId
TextureId инкапсулирует объект текстуры в графическом API. Для OpenGL/OpenGLES следует использовать getInt и fromInt, для Direct3D — getPointer и fromPointer.
- ThreeDofCameraDevice
ThreeDofCameraDevice реализует устройство камеры с тремя степенями свободы (3DoF), выводящее InputFrame (содержащее изображение, параметры камеры, временную метку, матрицу преобразования позы и статус отслеживания) с CameraTransformType равным ThreeDofRotOnly. После создания можно вызвать start/stop для запуска и остановки сбора данных видеопотока. Когда устройство больше не нужно, вызовите close для его закрытия. После close использовать его не следует. ThreeDofCameraDevice выводит InputFrame через inputFrameSource; inputFrameSource следует подключить к InputFrameSink для использования. bufferCapacity указывает ёмкость буфера для InputFrame. Если устройство выводит больше кадров, чем это количество, и они не освобождены, оно перестанет выводить новые InputFrame, пока предыдущие не будут освобождены. Это может вызвать проблемы, например, зависание изображения.
- Vec2F
двумерный вектор float.
- Vec2I
двумерный int-вектор.
- Vec3D
трехмерный double вектор.
- Vec3F
трёхмерный float вектор.
- Vec4F
четырехмерный вектор float.
- Vec4I
четырехмерный int-вектор.
- VideoInputFramePlayer
Входной кадровый проигрыватель. Имеет выходной порт входных кадров для извлечения входных кадров из файлов EIF MKV. Все члены этого класса потокобезопасны.
- VideoInputFrameRecorder
Входной рекордер кадров. Имеет входной порт для входных кадров и выходной порт для входных кадров, предназначенный для сохранения проходящих входных кадров в файл EIF-MKV. Все члены этого класса являются потокобезопасными.
- VideoPlayer
VideoPlayer — это класс для воспроизведения видео. EasyAR поддерживает обычное видео, прозрачное видео и потоковое воспроизведение. Содержимое видео будет отображаться на texture, переданном в setRenderTexture. Этот класс поддерживает только texture OpenGLES 3.0. Из-за зависимости от OpenGLES, все функции этого класса (включая деструктор) должны вызываться в одном потоке, содержащем контекст OpenGLES. Текущая версия требует, чтобы ширина и высота были кратны 16. Поддерживаемые форматы видеофайлов Windows: совместимые с Media Foundation форматы, установка дополнительных декодеров может поддержать больше форматов, см. Supported Media Formats in Media Foundation, не поддерживается DirectShow Mac: не поддерживается Android: форматы, поддерживаемые системой, см. Supported media formats. iOS: форматы, поддерживаемые системой, в настоящее время нет доступной документации.
- VisionOSARKitCameraDevice
VisionOSARKitCameraDevice реализует камеру на основе VisionOS ARKit, выводящую InputFrame (содержит изображение, параметры камеры, временную метку, 6DOF позиционные данные и статус отслеживания). После создания можно вызывать start/stop для начала и остановки сбора видеопотока. Когда устройство больше не нужно, вызовите close для его закрытия. После close использование не допускается. VisionOSARKitCameraDevice выводит InputFrame через inputFrameSource, который следует подключить к InputFrameSink. bufferCapacity обозначает ёмкость буфера для InputFrame. Если устройство вывело больше кадров, чем эта ёмкость, и они не были освобождены, устройство перестанет выводить новые InputFrame до освобождения предыдущих. Это может вызвать зависание изображения.
- XREALCameraDevice
XREALCameraDevice реализует камеру на основе плагина XREAL Enterprise Native SDK Plugin, выводящую InputFrame (нельзя получить изображение, параметры камеры, метку времени, информацию о позиции 6DOF и статус отслеживания). После создания можно вызывать start/stop для запуска и остановки сбора данных видеопотока. Убедитесь, что isDeviceSupported вернул true перед вызовом start. Когда устройство больше не нужно, вызовите close для его отключения. После close использовать его не следует. XREALCameraDevice выводит InputFrame через inputFrameSource, который следует подключить к InputFrameSink для использования. bufferCapacity указывает ёмкость буфера для InputFrame. Если устройство выводит больше кадров, чем это количество, и они не освобождены, оно перестанет выводить новые InputFrame, пока предыдущие не будут освобождены. Это может вызвать зависание изображения и другие проблемы.
Перечисления
- BlockPriorMode
Режим работы с априорной картографической информацией
- CameraDeviceType
Тип устройства камеры.
- CameraModelType
Тип модели камеры.
- CameraTransformType
Тип преобразования камеры.
- CloudLocalizerStatus
Статус облачного позиционирования.
- MegaApiType
MEGA API тип.
- MotionTrackingStatus
Описывает качество отслеживания движения устройства.
- PixelFormat
PixelFormat обозначает формат пикселей изображения. Все форматы имеют ориентацию пикселей слева направо, сверху вниз.
- StorageType
StorageType указывает место хранения изображений, json-файлов, видео или других файлов. StorageType задает корневой каталог для хранения файлов, вы можете использовать относительные пути относительно этого корневого каталога во всех связанных интерфейсах.