Тип QML CameraFocus
Интерфейс для настроек фокусировки камеры. Подробнее...
| Заявление об импорте: | import QtMultimedia 5.8 |
Свойства
- customFocusPoint : точка
- focusMode : перечисление
- focusPointMode : перечисление
- focusZones : список<focusZone>
Методы
- bool isFocusModeSupported(mode)
- bool isFocusPointModeSupported(mode)
Подробное описание
Этот тип позволяет управлять ручными и автоматическими настройками фокусировки, включая информацию о любых частях кадровой области камеры, выбранных для автоматической фокусировки.
Его не следует создавать отдельно, вместо этого следует использовать свойство focus объекта Camera.
Item {
width: 640
height: 360
Camera {
id: camera
focus {
focusMode: Camera.FocusMacro
focusPointMode: Camera.FocusPointCustom
customFocusPoint: Qt.point(0.2, 0.2) // Focus relative to top-left corner
}
}
VideoOutput {
source: camera
anchors.fill: parent
}
} Документация по свойствам
customFocusPoint : точка
Это свойство содержит положение пользовательской точки фокусировки в относительных координатах кадра: QPointF(0,0) указывает на верхнюю левую точку кадра, QPointF(0.5,0.5) указывает на центр кадра.
Пользовательская точка фокусировки используется только в режиме фокусировки FocusPointCustom.
focusMode : перечисление
Это свойство содержит текущий режим фокусировки камеры, который может быть одним из следующих значений:
| Значение | Описание |
|---|---|
| FocusManual | Ручной или фиксированный режим фокусировки. |
| FocusHyperfocal | Фокусировка на гиперфокальном расстоянии, с достижением максимальной глубины резкости. Все объекты на расстояниях от половины этого расстояния до бесконечности будут приемлемо резкими. |
| FocusInfinity | Фокусировка строго на бесконечность. |
| FocusAuto | Режим однократной автоматической фокусировки. |
| FocusContinuous | Режим непрерывной автоматической фокусировки. |
| FocusMacro | Однократная автоматическая фокусировка на объектах, близких к камере. |
Можно комбинировать несколько значений Camera::FocusMode, например Camera.FocusMacro + Camera.FocusContinuous.
В режимах автоматической фокусировки свойство focusPointMode и свойство focusZones предоставляют информацию и управление тем, как выполняется автоматическая фокусировка.
focusPointMode : перечисление
Это свойство содержит текущий режим точки фокусировки камеры. Оно используется в режимах автоматической фокусировки для определения, на что наводить фокус. Если текущий режим точки фокусировки Camera.FocusPointCustom, свойство customFocusPoint позволяет указать, на какую часть кадра наводить фокус.
Свойство может принимать одно из следующих значений:
| Значение | Описание |
|---|---|
| FocusPointAuto | Автоматический выбор одной или нескольких точек фокусировки. |
| FocusPointCenter | Фокусировка на центре кадра. |
| FocusPointFaceDetection | Фокусировка на лицах в кадре. |
| FocusPointCustom | Фокусировка на пользовательской точке, определенной свойством customFocusPoint. |
focusZones : список<focusZone>
Это свойство содержит список текущих зон фокусировки камеры, каждая из которых включает area указанные в тех же координатах, что и customFocusPoint, и зона status как одно из следующих значений:
| Значение | Описание |
|---|---|
| Camera.FocusAreaUnused | Эта область точки фокусировки в настоящее время не используется при автоматической фокусировке. |
| Camera.FocusAreaSelected | Эта область точки фокусировки используется при автоматической фокусировке, но не находится в фокусе. |
| Camera.FocusAreaFocused | Эта точка фокусировки используется при автоматической фокусировке и находится в фокусе. |
VideoOutput {
id: viewfinder
source: camera
//display focus areas on camera viewfinder:
Repeater {
model: camera.focus.focusZones
Rectangle {
border {
width: 2
color: status == Camera.FocusAreaFocused ? "green" : "white"
}
color: "transparent"
// Map from the relative, normalized frame coordinates
property variant mappedRect: viewfinder.mapNormalizedRectToItem(area);
x: mappedRect.x
y: mappedRect.y
width: mappedRect.width
height: mappedRect.height
}
}
} Документация по методам
bool isFocusModeSupported(mode) const
Возвращает true, если указанный mode — поддерживаемый режим фокусировки, и false в противном случае.
bool isFocusPointModeSupported(mode) const
Возвращает true, если указанный mode — поддерживаемый режим точки фокусировки, и false в противном случае.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qml-qtmultimedia-camerafocus.html