CopperSpice API  1.7.2
QCameraFocusZone Class Reference

Provides information on zones used for autofocusing a camera. More...

Public Types

enum  FocusZoneStatus
 

Public Methods

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

Detailed Description

For cameras that support autofocusing, in order for a camera to autofocus on part of a sensor frame, it considers different zones within the frame. Which zones to use, and where the zones are located vary between different cameras.

This class exposes what zones are used by a particular camera, and a list of the zones can be retrieved by a QCameraFocus instance. You can use this information to present visual feedback. For example, drawing rectangles around areas of the camera frame that are in focus, or changing the color of a zone as it comes into focus.

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()
}
}
See also
QCameraFocus

Member Enumeration Documentation

Contains values indicating the status of the focus zone.

Constant Value Description
QCameraFocusZone::Invalid 0 Zone is not valid
QCameraFocusZone::Unused 1 Zone may be used for autofocusing, but is not currently.
QCameraFocusZone::Selected 2 Zone is currently being used for autofocusing, but is not in focus.
QCameraFocusZone::Focused 3 Zone is being used for autofocusing and is currently in focus.

Constructor & Destructor Documentation

QCameraFocusZone::QCameraFocusZone ( const QCameraFocusZone &  other)

Copy constructs a new QCameraFocusZone from other.

QCameraFocusZone::~QCameraFocusZone ( )

Destroys this QCameraFocusZone.

Method Documentation

QRectF QCameraFocusZone::area ( ) const

Returns the area of the camera frame that this focus zone encompasses.

Coordinates are in frame relative coordinates - QPointF(0,0) is the top left of the frame, and QPointF(1,1) is the bottom right.

bool QCameraFocusZone::isValid ( ) const

Returns true if this focus zone has a valid area and status.

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

Returns true if this object is not the same as other.

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

Copy assigns from other and returns a reference to this object.

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

Returns true if this object is the same as other.

QCameraFocusZone::FocusZoneStatus QCameraFocusZone::status ( ) const

Returns the current status of this focus zone.