17 #ifndef SDF_CAMERA_HH_
18 #define SDF_CAMERA_HH_
21 #include <gz/math/Pose3.hh>
26 #include <sdf/sdf_config.h>
31 inline namespace SDF_VERSION_NAMESPACE {
92 public:
bool operator==(
const Camera &_alt)
const;
98 public:
bool operator!=(
const Camera &_alt)
const;
110 public: std::string CameraInfoTopic()
const;
114 public:
void SetCameraInfoTopic(
const std::string& _cameraInfoTopic);
124 public: std::string Name()
const;
128 public:
void SetName(
const std::string &_name);
132 public: gz::math::Angle HorizontalFov()
const;
136 public:
void SetHorizontalFov(
const gz::math::Angle &_hfov);
140 public: uint32_t ImageWidth()
const;
144 public:
void SetImageWidth(uint32_t _width);
148 public: uint32_t ImageHeight()
const;
152 public:
void SetImageHeight(uint32_t _height);
165 public: std::string PixelFormatStr()
const;
169 public:
void SetPixelFormatStr(
const std::string &_fmt);
173 public: uint32_t AntiAliasingValue()
const;
177 public:
void SetAntiAliasingValue(uint32_t _antiAliasingValue);
181 public:
double DepthNearClip()
const;
185 public:
void SetDepthNearClip(
double _near);
189 public:
double DepthFarClip()
const;
193 public:
void SetDepthFarClip(
double _far);
197 public:
double NearClip()
const;
201 public:
void SetNearClip(
double _near);
205 public:
void SetHasDepthCamera(
bool _camera);
209 public:
bool HasDepthCamera()
const;
215 public:
void SetHasDepthNearClip(
bool _near);
219 public:
bool HasDepthNearClip()
const;
225 public:
void SetHasDepthFarClip(
bool _far);
229 public:
bool HasDepthFarClip()
const;
233 public:
double FarClip()
const;
237 public:
void SetFarClip(
double _far);
241 public:
bool SaveFrames()
const;
245 public:
void SetSaveFrames(
bool _save);
249 public:
const std::string &SaveFramesPath()
const;
253 public:
void SetSaveFramesPath(
const std::string &_path);
257 public:
const Noise &ImageNoise()
const;
261 public:
void SetImageNoise(
const Noise &_noise);
265 public:
double DistortionK1()
const;
269 public:
void SetDistortionK1(
double _k1);
273 public:
double DistortionK2()
const;
277 public:
void SetDistortionK2(
double _k2);
281 public:
double DistortionK3()
const;
285 public:
void SetDistortionK3(
double _k3);
289 public:
double DistortionP1()
const;
293 public:
void SetDistortionP1(
double _p1);
297 public:
double DistortionP2()
const;
301 public:
void SetDistortionP2(
double _p2);
305 public:
const gz::math::Vector2d &DistortionCenter()
const;
309 public:
void SetDistortionCenter(
310 const gz::math::Vector2d &_center)
const;
316 public:
const gz::math::Pose3d &Pose()
const
323 public:
void SetPose(
const gz::math::Pose3d &_pose)
329 public:
const gz::math::Pose3d &RawPose()
const;
334 public:
void SetRawPose(
const gz::math::Pose3d &_pose);
340 public:
const std::string &PoseRelativeTo()
const;
346 public:
void SetPoseRelativeTo(
const std::string &_frame);
353 public:
const std::string &PoseFrame()
const
361 public:
void SetPoseFrame(
const std::string &_frame)
370 public: std::string LensType()
const;
375 public:
void SetLensType(
const std::string &_type);
380 public:
bool LensScaleToHfov()
const;
385 public:
void SetLensScaleToHfov(
bool _scale);
389 public:
double LensC1()
const;
393 public:
void SetLensC1(
double _c1);
397 public:
double LensC2()
const;
401 public:
void SetLensC2(
double _c2);
405 public:
double LensC3()
const;
409 public:
void SetLensC3(
double _c3);
413 public:
double LensFocalLength()
const;
417 public:
void SetLensFocalLength(
double _f);
422 public:
const std::string &LensFunction()
const;
427 public:
void SetLensFunction(
const std::string &_fun);
432 public: gz::math::Angle LensCutoffAngle()
const;
437 public:
void SetLensCutoffAngle(
const gz::math::Angle &_angle);
442 public:
int LensEnvironmentTextureSize()
const;
447 public:
void SetLensEnvironmentTextureSize(
int _size);
451 public:
double LensIntrinsicsFx()
const;
455 public:
void SetLensIntrinsicsFx(
double _fx);
459 public:
double LensIntrinsicsFy()
const;
463 public:
void SetLensIntrinsicsFy(
double _fy);
467 public:
double LensIntrinsicsCx()
const;
471 public:
void SetLensIntrinsicsCx(
double _cx);
475 public:
double LensIntrinsicsCy()
const;
479 public:
void SetLensIntrinsicsCy(
double _cy);
483 public:
double LensProjectionFx()
const;
487 public:
void SetLensProjectionFx(
double _fx_p);
491 public:
double LensProjectionFy()
const;
495 public:
void SetLensProjectionFy(
double _fy_p);
499 public:
double LensProjectionCx()
const;
503 public:
void SetLensProjectionCx(
double _cx_p);
507 public:
double LensProjectionCy()
const;
511 public:
void SetLensProjectionCy(
double _cy_p);
515 public:
double LensProjectionTx()
const;
519 public:
void SetLensProjectionTx(
double _tx);
523 public:
double LensProjectionTy()
const;
527 public:
void SetLensProjectionTy(
double _ty);
531 public:
double LensIntrinsicsSkew()
const;
535 public:
void SetLensIntrinsicsSkew(
double _s);
541 const std::string &_format);
550 public: uint32_t VisibilityMask()
const;
554 public:
void SetVisibilityMask(uint32_t _mask);
558 public:
bool HasLensProjection()
const;
561 private: CameraPrivate *dataPtr =
nullptr;