FlowEngine 7.517
Photogrammetry Software Development Kit
Loading...
Searching...
No Matches
FlowEngine::CameraConstraintInterface Class Referenceabstract

Stores a 3d camera constraint. More...

#include <CameraConstraintInterface.h>

Public Member Functions

virtual FLE_DLL ~CameraConstraintInterface ()=default
 Default virtual destructor.
 
virtual FLE_DLL void setCamera (CameraInterface &camera)=0
 
virtual FLE_DLL void getCamera (CameraInterface &camera) const =0
 
virtual FLE_DLL void setPosition (const Point3 &constraint)=0
 
virtual FLE_DLL void getPosition (Point3 &outConstraint) const =0
 
virtual FLE_DLL Result setWeight (float weight)=0
 Set the weight for this camera constraint.
 
virtual FLE_DLL void getWeight (float &outWeight) const =0
 

Detailed Description

Stores a 3d camera constraint.

Constructor & Destructor Documentation

◆ ~CameraConstraintInterface()

virtual FLE_DLL FlowEngine::CameraConstraintInterface::~CameraConstraintInterface ( )
virtualdefault

Default virtual destructor.

Member Function Documentation

◆ getCamera()

virtual FLE_DLL void FlowEngine::CameraConstraintInterface::getCamera ( CameraInterface camera) const
pure virtual

Returns the camera associated with this constraint.

Parameters
[in,out]cameraa valid instance of a CameraInterface object.

◆ getPosition()

virtual FLE_DLL void FlowEngine::CameraConstraintInterface::getPosition ( Point3 outConstraint) const
pure virtual

Returns the 3D constraint for this camera constraint.

Parameters
[out]outConstraintx-y-z constraint position in space.

◆ getWeight()

virtual FLE_DLL void FlowEngine::CameraConstraintInterface::getWeight ( float &  outWeight) const
pure virtual

Returns the 3D constraint weight for this camera constraint.

Parameters
[out]outWeightconstraint weight.

◆ setCamera()

virtual FLE_DLL void FlowEngine::CameraConstraintInterface::setCamera ( CameraInterface camera)
pure virtual

Changes the camera associated with this constraint.

Parameters
[in]cameraa valid instance of a CameraInterface object.

◆ setPosition()

virtual FLE_DLL void FlowEngine::CameraConstraintInterface::setPosition ( const Point3 constraint)
pure virtual

Set the 3D constraint for for this camera constraint.

Parameters
[in]constraintx-y-z constraint position in space.

◆ setWeight()

virtual FLE_DLL Result FlowEngine::CameraConstraintInterface::setWeight ( float  weight)
pure virtual

Set the weight for this camera constraint.

Note
This parameter is ignored when using the constraint in the structure and motion phase, instead, it's used during bundle adjustment.
Parameters
[in]weightconstraint weight. The valid range is (0, inf). This value should be in inverse proportion to the precision of the coordinates, following this formula:
weight = 5.0 * 0.3 / cpc
where cpc is the expected precision in meters.
e.g. when using GPS coordinates (cpc == 10.0) then weight = 0.15
e.g. when using RTK coordinates (cpc == 0.3) then weight = 5.0
Returns
One of the following result codes: