Spec-Zone.ru › Qt 5.15

Класс QCameraFocusZone

Класс QCameraFocusZone предоставляет информацию о зонах, используемых для автоматической фокусировки камеры. Подробнее...

Заголовок: #include <QCameraFocusZone>
qmake: QT += multimedia
  • Список всех членов, включая унаследованные

Типы публичного доступа

Перечисление FocusZoneStatus { Недействительный, Неиспользуемый, Выбранный, Сфокусированный }

Функции публичного доступа

QCameraFocusZone(const QCameraFocusZone &other)
QCameraFocusZone & operator=(const QCameraFocusZone &other)
~QCameraFocusZone()
QRectF area() const
bool isValid() const
QCameraFocusZone::FocusZoneStatus status() const
bool operator!=(const QCameraFocusZone &other) const
bool operator==(const QCameraFocusZone &other) const

Подробное описание

Для камер, поддерживающих автоматическую фокусировку, для того чтобы камера сфокусировалась на части кадрового датчика, она рассматривает разные зоны внутри кадра. Какие зоны использовать и где эти зоны расположены, зависит от конкретной камеры.

Этот класс показывает, какие зоны используются конкретной камерой, и список зон можно получить с помощью экземпляра QCameraFocus.

Вы можете использовать эту информацию для визуального отображения обратной связи — например, для рисования прямоугольников вокруг областей кадрового датчика, которые находятся в фокусе, или изменения цвета зоны при переходе в фокус.

focus->setFocusPointMode(QCameraFocus::FocusPointAuto);
const QList<QCameraFocusZone> zones = focus->focusZones();
for (const QCameraFocusZone &zone : zones) {
    if (zone.status() == QCameraFocusZone::Focused) {
        // Draw a green box at zone.area()
    } else if (zone.status() == QCameraFocusZone::Selected) {
        // This area is selected for autofocusing, but is not in focus
        // Draw a yellow box at zone.area()
    }
}

См. такжеQCameraFocus.

Документация по типам членов

Перечисление QCameraFocusZone::FocusZoneStatus

Постоянная Значение Описание
QCameraFocusZone::Invalid 0 Эта зона недействительна
QCameraFocusZone::Unused 1 Эта зона может использоваться для автоматической фокусировки, но в настоящее время не используется.
QCameraFocusZone::Selected 2 Эта зона в настоящее время используется для автоматической фокусировки, но не находится в фокусе.
QCameraFocusZone::Focused 3 Эта зона используется для автоматической фокусировки и в настоящее время находится в фокусе.

Документация по функциям-членам

QCameraFocusZone::QCameraFocusZone(const QCameraFocusZone &other)

Создает новый QCameraFocusZone как копию other.

QCameraFocusZone &QCameraFocusZone::operator=(const QCameraFocusZone &other)

Присваивает other этому QCameraFocusZone.

QCameraFocusZone::~QCameraFocusZone()

Удаляет этот QCameraFocusZone.

QRectF QCameraFocusZone::area() const

Возвращает область кадрового датчика, охватываемую этой зоной фокусировки.

Координаты находятся в относительных координатах кадра — QPointF(0,0) — это верхний левый угол кадра, а QPointF(1,1) — нижний правый.

bool QCameraFocusZone::isValid() const

Возвращает true, если у этой зоны фокусировки есть действительная область и статус.

QCameraFocusZone::FocusZoneStatus QCameraFocusZone::status() const

Возвращает текущий статус этой зоны фокусировки.

bool QCameraFocusZone::operator!=(const QCameraFocusZone &other) const

Возвращает true, если эта зона фокусировки не совпадает с other.

bool QCameraFocusZone::operator==(const QCameraFocusZone &other) const

Возвращает true, если эта зона фокусировки совпадает с other.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qcamerafocuszone.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API