18 #ifndef GZ_RENDERING_CAMERALENS_HH_
19 #define GZ_RENDERING_CAMERALENS_HH_
23 #include <gz/math/Vector3.hh>
24 #include <gz/utils/ImplPtr.hh>
26 #include "gz/rendering/config.hh"
27 #include "gz/rendering/Export.hh"
33 inline namespace GZ_RENDERING_VERSION_NAMESPACE {
90 public:
void SetCustomMappingFunction(
double _c1,
double _c2,
99 public:
bool IsCustom()
const;
103 public:
double C1()
const;
107 public:
double C2()
const;
111 public:
double C3()
const;
115 public:
double F()
const;
123 public:
double CutOffAngle()
const;
127 public:
bool ScaleToHFOV()
const;
135 public:
void SetC1(
double _c);
139 public:
void SetC2(
double _c);
143 public:
void SetC3(
double _c);
147 public:
void SetF(
double _f);
155 public:
void SetCutOffAngle(
double _angle);
162 public:
void SetScaleToHFOV(
bool _scale);
168 public:
float ApplyMappingFunction(
float _f)
const;
181 private:
void ConvertToCustom();
185 GZ_UTILS_UNIQUE_IMPL_PTR(dataPtr)