QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
CameraCalc Class Reference

#include <CameraCalc.h>

+ Inheritance diagram for CameraCalc:
+ Collaboration diagram for CameraCalc:

Signals

void imageFootprintSideChanged (double imageFootprintSide)
 
void imageFootprintFrontalChanged (double imageFootprintFrontal)
 
void distanceModeChanged (int altFrame)
 
void isManualCameraChanged (void)
 
void isCustomCameraChanged (void)
 
void cameraBrandChanged (void)
 
void cameraModelChanged (void)
 
void cameraModelListChanged (void)
 
void updateCameraStats (void)
 
- Signals inherited from CameraSpec
void dirtyChanged (bool dirty)
 

Public Member Functions

 CameraCalc (PlanMasterController *masterController, const QString &settingsGroup, QObject *parent=nullptr)
 
FactvalueSetIsDistance (void)
 
FactdistanceToSurface (void)
 
FactimageDensity (void)
 
FactfrontalOverlap (void)
 
FactsideOverlap (void)
 
FactadjustedFootprintSide (void)
 
FactadjustedFootprintFrontal (void)
 
const FactvalueSetIsDistance (void) const
 
const FactdistanceToSurface (void) const
 
const FactimageDensity (void) const
 
const FactfrontalOverlap (void) const
 
const FactsideOverlap (void) const
 
const FactadjustedFootprintSide (void) const
 
const FactadjustedFootprintFrontal (void) const
 
bool isManualCamera (void) const
 
bool isCustomCamera (void) const
 
double imageFootprintSide (void) const
 
double imageFootprintFrontal (void) const
 
QGroundControlQmlGlobal::AltitudeFrame distanceMode (void) const
 
void setDistanceMode (QGroundControlQmlGlobal::AltitudeFrame altFrame)
 
void setCameraBrand (const QString &cameraBrand)
 
void setCameraModel (const QString &cameraModel)
 
void save (QJsonObject &json) const
 
bool load (const QJsonObject &json, bool deprecatedFollowTerrain, QString &errorString, bool forPresets)
 
void _setCameraNameFromV3TransectLoad (const QString &cameraName)
 
- Public Member Functions inherited from CameraSpec
 CameraSpec (const QString &settingsGroup, QObject *parent=nullptr)
 
const CameraSpecoperator= (const CameraSpec &other)
 
SettingsFactsensorWidth (void)
 
SettingsFactsensorHeight (void)
 
SettingsFactimageWidth (void)
 
SettingsFactimageHeight (void)
 
SettingsFactfocalLength (void)
 
SettingsFactlandscape (void)
 
SettingsFactfixedOrientation (void)
 
SettingsFactminTriggerInterval (void)
 
bool dirty (void) const
 
void setDirty (bool dirty)
 
void save (QJsonObject &json) const
 
bool load (const QJsonObject &json, QString &errorString)
 

Static Public Member Functions

static QString xlatCustomCameraName (void)
 < Size of image size frontal in meters
 
static QString xlatManualCameraName (void)
 
static QString canonicalCustomCameraName (void)
 
static QString canonicalManualCameraName (void)
 

Static Public Attributes

static constexpr const char * cameraNameName = "CameraName"
 
static constexpr const char * valueSetIsDistanceName = "ValueSetIsDistance"
 
static constexpr const char * distanceToSurfaceName = "DistanceToSurface"
 
static constexpr const char * distanceModeName = "DistanceMode"
 
static constexpr const char * imageDensityName = "ImageDensity"
 
static constexpr const char * frontalOverlapName = "FrontalOverlap"
 
static constexpr const char * sideOverlapName = "SideOverlap"
 
static constexpr const char * adjustedFootprintFrontalName = "AdjustedFootprintFrontal"
 
static constexpr const char * adjustedFootprintSideName = "AdjustedFootprintSide"
 

Detailed Description

Definition at line 11 of file CameraCalc.h.

Constructor & Destructor Documentation

◆ CameraCalc()

CameraCalc::CameraCalc ( PlanMasterController masterController,
const QString &  settingsGroup,
QObject *  parent = nullptr 
)

User visible camera name for custom camera setting User visible camera name for manual camera setting true: distance specified, resolution calculated Distance to surface for image foot print calculation Image density on surface (cm/px) Side footprint adjusted down for overlap Frontal footprint adjusted down for overlap

Definition at line 9 of file CameraCalc.cc.

References CameraMetaData::brand, distanceModeChanged(), CameraSpec::focalLength(), CameraSpec::imageHeight(), CameraSpec::imageWidth(), isCustomCameraChanged(), isManualCameraChanged(), CameraSpec::landscape(), Fact::rawValue(), Fact::rawValueChanged(), CameraSpec::sensorHeight(), CameraSpec::sensorWidth(), CameraSpec::setDirty(), Fact::valueChanged(), xlatCustomCameraName(), and xlatManualCameraName().

Member Function Documentation

◆ _setCameraNameFromV3TransectLoad()

void CameraCalc::_setCameraNameFromV3TransectLoad ( const QString &  cameraName)

Definition at line 392 of file CameraCalc.cc.

References Fact::setRawValue().

◆ adjustedFootprintFrontal() [1/2]

◆ adjustedFootprintFrontal() [2/2]

const Fact * CameraCalc::adjustedFootprintFrontal ( void  ) const
inline

Definition at line 66 of file CameraCalc.h.

◆ adjustedFootprintSide() [1/2]

Fact * CameraCalc::adjustedFootprintSide ( void  )
inline

◆ adjustedFootprintSide() [2/2]

const Fact * CameraCalc::adjustedFootprintSide ( void  ) const
inline

Definition at line 65 of file CameraCalc.h.

◆ cameraBrandChanged

void CameraCalc::cameraBrandChanged ( void  )
signal

Referenced by setCameraBrand().

◆ cameraModelChanged

void CameraCalc::cameraModelChanged ( void  )
signal

Referenced by setCameraBrand(), and setCameraModel().

◆ cameraModelListChanged

void CameraCalc::cameraModelListChanged ( void  )
signal

◆ canonicalCustomCameraName()

QString CameraCalc::canonicalCustomCameraName ( void  )
static

Definition at line 274 of file CameraCalc.cc.

Referenced by isCustomCamera(), and load().

◆ canonicalManualCameraName()

QString CameraCalc::canonicalManualCameraName ( void  )
static

Definition at line 280 of file CameraCalc.cc.

Referenced by isManualCamera(), and load().

◆ distanceMode()

◆ distanceModeChanged

void CameraCalc::distanceModeChanged ( int  altFrame)
signal

◆ distanceToSurface() [1/2]

◆ distanceToSurface() [2/2]

const Fact * CameraCalc::distanceToSurface ( void  ) const
inline

Definition at line 61 of file CameraCalc.h.

◆ frontalOverlap() [1/2]

Fact * CameraCalc::frontalOverlap ( void  )
inline

Definition at line 55 of file CameraCalc.h.

◆ frontalOverlap() [2/2]

const Fact * CameraCalc::frontalOverlap ( void  ) const
inline

Definition at line 63 of file CameraCalc.h.

◆ imageDensity() [1/2]

Fact * CameraCalc::imageDensity ( void  )
inline

Definition at line 54 of file CameraCalc.h.

◆ imageDensity() [2/2]

const Fact * CameraCalc::imageDensity ( void  ) const
inline

Definition at line 62 of file CameraCalc.h.

◆ imageFootprintFrontal()

double CameraCalc::imageFootprintFrontal ( void  ) const
inline

Definition at line 71 of file CameraCalc.h.

◆ imageFootprintFrontalChanged

void CameraCalc::imageFootprintFrontalChanged ( double  imageFootprintFrontal)
signal

◆ imageFootprintSide()

double CameraCalc::imageFootprintSide ( void  ) const
inline

Definition at line 70 of file CameraCalc.h.

◆ imageFootprintSideChanged

void CameraCalc::imageFootprintSideChanged ( double  imageFootprintSide)
signal

◆ isCustomCamera()

bool CameraCalc::isCustomCamera ( void  ) const
inline

Definition at line 69 of file CameraCalc.h.

References canonicalCustomCameraName(), and Fact::rawValue().

◆ isCustomCameraChanged

void CameraCalc::isCustomCameraChanged ( void  )
signal

Referenced by CameraCalc().

◆ isManualCamera()

bool CameraCalc::isManualCamera ( void  ) const
inline

Definition at line 68 of file CameraCalc.h.

References canonicalManualCameraName(), and Fact::rawValue().

Referenced by load(), and save().

◆ isManualCameraChanged

void CameraCalc::isManualCameraChanged ( void  )
signal

◆ load()

◆ save()

◆ setCameraBrand()

void CameraCalc::setCameraBrand ( const QString &  cameraBrand)

◆ setCameraModel()

void CameraCalc::setCameraModel ( const QString &  cameraModel)

◆ setDistanceMode()

void CameraCalc::setDistanceMode ( QGroundControlQmlGlobal::AltitudeFrame  altFrame)

Definition at line 296 of file CameraCalc.cc.

References distanceModeChanged().

Referenced by SurveyComplexItem::applyPreviousAltitudeFrame(), and load().

◆ sideOverlap() [1/2]

Fact * CameraCalc::sideOverlap ( void  )
inline

Definition at line 56 of file CameraCalc.h.

◆ sideOverlap() [2/2]

const Fact * CameraCalc::sideOverlap ( void  ) const
inline

Definition at line 64 of file CameraCalc.h.

◆ updateCameraStats

void CameraCalc::updateCameraStats ( void  )
signal

◆ valueSetIsDistance() [1/2]

Fact * CameraCalc::valueSetIsDistance ( void  )
inline

Definition at line 52 of file CameraCalc.h.

Referenced by TransectStyleComplexItem::applyNewAltitude().

◆ valueSetIsDistance() [2/2]

const Fact * CameraCalc::valueSetIsDistance ( void  ) const
inline

Definition at line 60 of file CameraCalc.h.

◆ xlatCustomCameraName()

QString CameraCalc::xlatCustomCameraName ( void  )
static

< Size of image size frontal in meters

< Size of image size side in meters

Definition at line 286 of file CameraCalc.cc.

Referenced by CameraCalc(), and setCameraBrand().

◆ xlatManualCameraName()

QString CameraCalc::xlatManualCameraName ( void  )
static

Definition at line 291 of file CameraCalc.cc.

Referenced by CameraCalc(), and setCameraBrand().

Member Data Documentation

◆ adjustedFootprintFrontalName

constexpr const char* CameraCalc::adjustedFootprintFrontalName = "AdjustedFootprintFrontal"
staticconstexpr

Definition at line 90 of file CameraCalc.h.

Referenced by load(), and save().

◆ adjustedFootprintSideName

constexpr const char* CameraCalc::adjustedFootprintSideName = "AdjustedFootprintSide"
staticconstexpr

Definition at line 91 of file CameraCalc.h.

Referenced by load(), and save().

◆ cameraNameName

constexpr const char* CameraCalc::cameraNameName = "CameraName"
staticconstexpr

Definition at line 83 of file CameraCalc.h.

Referenced by load(), and save().

◆ distanceModeName

constexpr const char* CameraCalc::distanceModeName = "DistanceMode"
staticconstexpr

Definition at line 86 of file CameraCalc.h.

Referenced by load(), and save().

◆ distanceToSurfaceName

constexpr const char* CameraCalc::distanceToSurfaceName = "DistanceToSurface"
staticconstexpr

Definition at line 85 of file CameraCalc.h.

Referenced by load(), and save().

◆ frontalOverlapName

constexpr const char* CameraCalc::frontalOverlapName = "FrontalOverlap"
staticconstexpr

Definition at line 88 of file CameraCalc.h.

Referenced by load(), and save().

◆ imageDensityName

constexpr const char* CameraCalc::imageDensityName = "ImageDensity"
staticconstexpr

Definition at line 87 of file CameraCalc.h.

Referenced by load(), and save().

◆ sideOverlapName

constexpr const char* CameraCalc::sideOverlapName = "SideOverlap"
staticconstexpr

Definition at line 89 of file CameraCalc.h.

Referenced by load(), and save().

◆ valueSetIsDistanceName

constexpr const char* CameraCalc::valueSetIsDistanceName = "ValueSetIsDistance"
staticconstexpr

Definition at line 84 of file CameraCalc.h.

Referenced by load(), and save().


The documentation for this class was generated from the following files: