17 #ifndef SDF_CAMERA_HH_
18 #define SDF_CAMERA_HH_
21 #include <gz/math/Pose3.hh>
22 #include <gz/utils/ImplPtr.hh>
32 inline namespace SDF_VERSION_NAMESPACE {
68 public:
bool operator==(
const Camera &_alt)
const;
74 public:
bool operator!=(
const Camera &_alt)
const;
86 public: std::string CameraInfoTopic()
const;
90 public:
void SetCameraInfoTopic(
const std::string& _cameraInfoTopic);
100 public: std::string Name()
const;
104 public:
void SetName(
const std::string &_name);
108 public:
bool Triggered()
const;
112 public:
void SetTriggered(
bool _triggered);
116 public: std::string TriggerTopic()
const;
120 public:
void SetTriggerTopic(
const std::string &_triggerTopic);
124 public: gz::math::Angle HorizontalFov()
const;
128 public:
void SetHorizontalFov(
const gz::math::Angle &_hfov);
132 public: uint32_t ImageWidth()
const;
136 public:
void SetImageWidth(uint32_t _width);
140 public: uint32_t ImageHeight()
const;
144 public:
void SetImageHeight(uint32_t _height);
157 public: std::string PixelFormatStr()
const;
161 public:
void SetPixelFormatStr(
const std::string &_fmt);
165 public: uint32_t AntiAliasingValue()
const;
169 public:
void SetAntiAliasingValue(uint32_t _antiAliasingValue);
173 public:
double DepthNearClip()
const;
177 public:
void SetDepthNearClip(
double _near);
181 public:
double DepthFarClip()
const;
185 public:
void SetDepthFarClip(
double _far);
189 public:
double NearClip()
const;
193 public:
void SetNearClip(
double _near);
197 public:
void SetHasDepthCamera(
bool _camera);
201 public:
bool HasDepthCamera()
const;
207 public:
void SetHasDepthNearClip(
bool _near);
211 public:
bool HasDepthNearClip()
const;
217 public:
void SetHasDepthFarClip(
bool _far);
221 public:
bool HasDepthFarClip()
const;
225 public:
double FarClip()
const;
229 public:
void SetFarClip(
double _far);
234 public:
void SetHasSegmentationType(
bool _type);
238 public:
bool HasSegmentationType()
const;
242 public:
const std::string &SegmentationType()
const;
246 public:
void SetSegmentationType(
const std::string &_type);
251 public:
void SetHasBoundingBoxType(
bool _type);
255 public:
bool HasBoundingBoxType()
const;
259 public:
const std::string &BoundingBoxType()
const;
263 public:
void SetBoundingBoxType(
const std::string &_type);
267 public:
bool SaveFrames()
const;
271 public:
void SetSaveFrames(
bool _save);
275 public:
const std::string &SaveFramesPath()
const;
279 public:
void SetSaveFramesPath(
const std::string &_path);
283 public:
const Noise &ImageNoise()
const;
287 public:
void SetImageNoise(
const Noise &_noise);
291 public:
double DistortionK1()
const;
295 public:
void SetDistortionK1(
double _k1);
299 public:
double DistortionK2()
const;
303 public:
void SetDistortionK2(
double _k2);
307 public:
double DistortionK3()
const;
311 public:
void SetDistortionK3(
double _k3);
315 public:
double DistortionP1()
const;
319 public:
void SetDistortionP1(
double _p1);
323 public:
double DistortionP2()
const;
327 public:
void SetDistortionP2(
double _p2);
331 public:
const gz::math::Vector2d &DistortionCenter()
const;
335 public:
void SetDistortionCenter(
const gz::math::Vector2d &_center);
340 public:
const gz::math::Pose3d &RawPose()
const;
345 public:
void SetRawPose(
const gz::math::Pose3d &_pose);
351 public:
const std::string &PoseRelativeTo()
const;
357 public:
void SetPoseRelativeTo(
const std::string &_frame);
366 public:
const std::string OpticalFrameId()
const;
371 public:
void SetOpticalFrameId(
const std::string &_frame);
379 public: std::string LensType()
const;
384 public:
void SetLensType(
const std::string &_type);
389 public:
bool LensScaleToHfov()
const;
394 public:
void SetLensScaleToHfov(
bool _scale);
398 public:
double LensC1()
const;
402 public:
void SetLensC1(
double _c1);
406 public:
double LensC2()
const;
410 public:
void SetLensC2(
double _c2);
414 public:
double LensC3()
const;
418 public:
void SetLensC3(
double _c3);
422 public:
double LensFocalLength()
const;
426 public:
void SetLensFocalLength(
double _f);
431 public:
const std::string &LensFunction()
const;
436 public:
void SetLensFunction(
const std::string &_fun);
441 public: gz::math::Angle LensCutoffAngle()
const;
446 public:
void SetLensCutoffAngle(
const gz::math::Angle &_angle);
451 public:
int LensEnvironmentTextureSize()
const;
456 public:
void SetLensEnvironmentTextureSize(
int _size);
460 public:
double LensIntrinsicsFx()
const;
464 public:
void SetLensIntrinsicsFx(
double _fx);
468 public:
double LensIntrinsicsFy()
const;
472 public:
void SetLensIntrinsicsFy(
double _fy);
476 public:
double LensIntrinsicsCx()
const;
480 public:
void SetLensIntrinsicsCx(
double _cx);
484 public:
double LensIntrinsicsCy()
const;
488 public:
void SetLensIntrinsicsCy(
double _cy);
492 public:
double LensProjectionFx()
const;
496 public:
void SetLensProjectionFx(
double _fx_p);
500 public:
double LensProjectionFy()
const;
504 public:
void SetLensProjectionFy(
double _fy_p);
508 public:
double LensProjectionCx()
const;
512 public:
void SetLensProjectionCx(
double _cx_p);
516 public:
double LensProjectionCy()
const;
520 public:
void SetLensProjectionCy(
double _cy_p);
524 public:
double LensProjectionTx()
const;
528 public:
void SetLensProjectionTx(
double _tx);
532 public:
double LensProjectionTy()
const;
536 public:
void SetLensProjectionTy(
double _ty);
540 public:
double LensIntrinsicsSkew()
const;
544 public:
void SetLensIntrinsicsSkew(
double _s);
550 const std::string &_format);
559 public: uint32_t VisibilityMask()
const;
563 public:
void SetVisibilityMask(uint32_t _mask);
567 public:
bool HasLensIntrinsics()
const;
571 public:
bool HasLensProjection()
const;
581 GZ_UTILS_IMPL_PTR(dataPtr)