17 #ifndef SDF_CAMERA_HH_
18 #define SDF_CAMERA_HH_
21 #include <ignition/math/Pose3.hh>
22 #include <ignition/utils/ImplPtr.hh>
27 #include <sdf/sdf_config.h>
32 inline namespace SDF_VERSION_NAMESPACE {
68 public:
bool operator==(
const Camera &_alt)
const;
74 public:
bool operator!=(
const Camera &_alt)
const;
92 public: std::string Name()
const;
96 public:
void SetName(
const std::string &_name);
100 public: ignition::math::Angle HorizontalFov()
const;
104 public:
void SetHorizontalFov(
const ignition::math::Angle &_hfov);
108 public: uint32_t ImageWidth()
const;
112 public:
void SetImageWidth(uint32_t _width);
116 public: uint32_t ImageHeight()
const;
120 public:
void SetImageHeight(uint32_t _height);
133 public: std::string PixelFormatStr()
const;
137 public:
void SetPixelFormatStr(
const std::string &_fmt);
141 public:
double DepthNearClip()
const;
145 public:
void SetDepthNearClip(
double _near);
149 public:
double DepthFarClip()
const;
153 public:
void SetDepthFarClip(
double _far);
157 public:
double NearClip()
const;
161 public:
void SetNearClip(
double _near);
165 public:
void SetHasDepthCamera(
bool _camera);
169 public:
bool HasDepthCamera()
const;
175 public:
void SetHasDepthNearClip(
bool _near);
179 public:
bool HasDepthNearClip()
const;
185 public:
void SetHasDepthFarClip(
bool _far);
189 public:
bool HasDepthFarClip()
const;
193 public:
double FarClip()
const;
197 public:
void SetFarClip(
double _far);
202 public:
void SetHasSegmentationType(
bool _type);
206 public:
bool HasSegmentationType()
const;
210 public:
const std::string &SegmentationType()
const;
214 public:
void SetSegmentationType(
const std::string &_type);
219 public:
void SetHasBoundingBoxType(
bool _type);
223 public:
bool HasBoundingBoxType()
const;
227 public:
const std::string &BoundingBoxType()
const;
231 public:
void SetBoundingBoxType(
const std::string &_type);
235 public:
bool SaveFrames()
const;
239 public:
void SetSaveFrames(
bool _save);
243 public:
const std::string &SaveFramesPath()
const;
247 public:
void SetSaveFramesPath(
const std::string &_path);
251 public:
const Noise &ImageNoise()
const;
255 public:
void SetImageNoise(
const Noise &_noise);
259 public:
double DistortionK1()
const;
263 public:
void SetDistortionK1(
double _k1);
267 public:
double DistortionK2()
const;
271 public:
void SetDistortionK2(
double _k2);
275 public:
double DistortionK3()
const;
279 public:
void SetDistortionK3(
double _k3);
283 public:
double DistortionP1()
const;
287 public:
void SetDistortionP1(
double _p1);
291 public:
double DistortionP2()
const;
295 public:
void SetDistortionP2(
double _p2);
299 public:
const ignition::math::Vector2d &DistortionCenter()
const;
303 public:
void SetDistortionCenter(
const ignition::math::Vector2d &_center);
308 public:
const ignition::math::Pose3d &RawPose()
const;
313 public:
void SetRawPose(
const ignition::math::Pose3d &_pose);
319 public:
const std::string &PoseRelativeTo()
const;
325 public:
void SetPoseRelativeTo(
const std::string &_frame);
333 public: std::string LensType()
const;
338 public:
void SetLensType(
const std::string &_type);
343 public:
bool LensScaleToHfov()
const;
348 public:
void SetLensScaleToHfov(
bool _scale);
352 public:
double LensC1()
const;
356 public:
void SetLensC1(
double _c1);
360 public:
double LensC2()
const;
364 public:
void SetLensC2(
double _c2);
368 public:
double LensC3()
const;
372 public:
void SetLensC3(
double _c3);
376 public:
double LensFocalLength()
const;
380 public:
void SetLensFocalLength(
double _f);
385 public:
const std::string &LensFunction()
const;
390 public:
void SetLensFunction(
const std::string &_fun);
395 public: ignition::math::Angle LensCutoffAngle()
const;
400 public:
void SetLensCutoffAngle(
const ignition::math::Angle &_angle);
405 public:
int LensEnvironmentTextureSize()
const;
410 public:
void SetLensEnvironmentTextureSize(
int _size);
414 public:
double LensIntrinsicsFx()
const;
418 public:
void SetLensIntrinsicsFx(
double _fx);
422 public:
double LensIntrinsicsFy()
const;
426 public:
void SetLensIntrinsicsFy(
double _fy);
430 public:
double LensIntrinsicsCx()
const;
434 public:
void SetLensIntrinsicsCx(
double _cx);
438 public:
double LensIntrinsicsCy()
const;
442 public:
void SetLensIntrinsicsCy(
double _cy);
446 public:
double LensIntrinsicsSkew()
const;
450 public:
void SetLensIntrinsicsSkew(
double _s);
456 const std::string &_format);
465 public: uint32_t VisibilityMask()
const;
469 public:
void SetVisibilityMask(uint32_t _mask);
473 public:
bool HasLensIntrinsics()
const;
481 IGN_UTILS_IMPL_PTR(dataPtr)