Тип QML CameraFocus
Интерфейс для настроек камеры, связанных с фокусировкой. Подробнее...
| Оператор импорта: | import QtMultimedia 5.6 |
Свойства
- 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/archives/qt-5.6/qml-qtmultimedia-camerafocus.html