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;
92 public: std::string Name()
const;
96 public:
void SetName(
const std::string &_name);
100 public:
bool Triggered()
const;
104 public:
void SetTriggered(
bool _triggered);
108 public: std::string TriggerTopic()
const;
112 public:
void SetTriggerTopic(
const std::string &_triggerTopic);
116 public: gz::math::Angle HorizontalFov()
const;
120 public:
void SetHorizontalFov(
const gz::math::Angle &_hfov);
124 public: uint32_t ImageWidth()
const;
128 public:
void SetImageWidth(uint32_t _width);
132 public: uint32_t ImageHeight()
const;
136 public:
void SetImageHeight(uint32_t _height);
149 public: std::string PixelFormatStr()
const;
153 public:
void SetPixelFormatStr(
const std::string &_fmt);
157 public: uint32_t AntiAliasingValue()
const;
161 public:
void SetAntiAliasingValue(uint32_t _antiAliasingValue);
165 public:
double DepthNearClip()
const;
169 public:
void SetDepthNearClip(
double _near);
173 public:
double DepthFarClip()
const;
177 public:
void SetDepthFarClip(
double _far);
181 public:
double NearClip()
const;
185 public:
void SetNearClip(
double _near);
189 public:
void SetHasDepthCamera(
bool _camera);
193 public:
bool HasDepthCamera()
const;
199 public:
void SetHasDepthNearClip(
bool _near);
203 public:
bool HasDepthNearClip()
const;
209 public:
void SetHasDepthFarClip(
bool _far);
213 public:
bool HasDepthFarClip()
const;
217 public:
double FarClip()
const;
221 public:
void SetFarClip(
double _far);
226 public:
void SetHasSegmentationType(
bool _type);
230 public:
bool HasSegmentationType()
const;
234 public:
const std::string &SegmentationType()
const;
238 public:
void SetSegmentationType(
const std::string &_type);
243 public:
void SetHasBoundingBoxType(
bool _type);
247 public:
bool HasBoundingBoxType()
const;
251 public:
const std::string &BoundingBoxType()
const;
255 public:
void SetBoundingBoxType(
const std::string &_type);
259 public:
bool SaveFrames()
const;
263 public:
void SetSaveFrames(
bool _save);
267 public:
const std::string &SaveFramesPath()
const;
271 public:
void SetSaveFramesPath(
const std::string &_path);
275 public:
const Noise &ImageNoise()
const;
279 public:
void SetImageNoise(
const Noise &_noise);
283 public:
double DistortionK1()
const;
287 public:
void SetDistortionK1(
double _k1);
291 public:
double DistortionK2()
const;
295 public:
void SetDistortionK2(
double _k2);
299 public:
double DistortionK3()
const;
303 public:
void SetDistortionK3(
double _k3);
307 public:
double DistortionP1()
const;
311 public:
void SetDistortionP1(
double _p1);
315 public:
double DistortionP2()
const;
319 public:
void SetDistortionP2(
double _p2);
323 public:
const gz::math::Vector2d &DistortionCenter()
const;
327 public:
void SetDistortionCenter(
const gz::math::Vector2d &_center);
332 public:
const gz::math::Pose3d &RawPose()
const;
337 public:
void SetRawPose(
const gz::math::Pose3d &_pose);
343 public:
const std::string &PoseRelativeTo()
const;
349 public:
void SetPoseRelativeTo(
const std::string &_frame);
358 public:
const std::string OpticalFrameId()
const;
363 public:
void SetOpticalFrameId(
const std::string &_frame);
371 public: std::string LensType()
const;
376 public:
void SetLensType(
const std::string &_type);
381 public:
bool LensScaleToHfov()
const;
386 public:
void SetLensScaleToHfov(
bool _scale);
390 public:
double LensC1()
const;
394 public:
void SetLensC1(
double _c1);
398 public:
double LensC2()
const;
402 public:
void SetLensC2(
double _c2);
406 public:
double LensC3()
const;
410 public:
void SetLensC3(
double _c3);
414 public:
double LensFocalLength()
const;
418 public:
void SetLensFocalLength(
double _f);
423 public:
const std::string &LensFunction()
const;
428 public:
void SetLensFunction(
const std::string &_fun);
433 public: gz::math::Angle LensCutoffAngle()
const;
438 public:
void SetLensCutoffAngle(
const gz::math::Angle &_angle);
443 public:
int LensEnvironmentTextureSize()
const;
448 public:
void SetLensEnvironmentTextureSize(
int _size);
452 public:
double LensIntrinsicsFx()
const;
456 public:
void SetLensIntrinsicsFx(
double _fx);
460 public:
double LensIntrinsicsFy()
const;
464 public:
void SetLensIntrinsicsFy(
double _fy);
468 public:
double LensIntrinsicsCx()
const;
472 public:
void SetLensIntrinsicsCx(
double _cx);
476 public:
double LensIntrinsicsCy()
const;
480 public:
void SetLensIntrinsicsCy(
double _cy);
484 public:
double LensProjectionFx()
const;
488 public:
void SetLensProjectionFx(
double _fx_p);
492 public:
double LensProjectionFy()
const;
496 public:
void SetLensProjectionFy(
double _fy_p);
500 public:
double LensProjectionCx()
const;
504 public:
void SetLensProjectionCx(
double _cx_p);
508 public:
double LensProjectionCy()
const;
512 public:
void SetLensProjectionCy(
double _cy_p);
516 public:
double LensProjectionTx()
const;
520 public:
void SetLensProjectionTx(
double _tx);
524 public:
double LensProjectionTy()
const;
528 public:
void SetLensProjectionTy(
double _ty);
532 public:
double LensIntrinsicsSkew()
const;
536 public:
void SetLensIntrinsicsSkew(
double _s);
542 const std::string &_format);
551 public: uint32_t VisibilityMask()
const;
555 public:
void SetVisibilityMask(uint32_t _mask);
559 public:
bool HasLensIntrinsics()
const;
569 GZ_UTILS_IMPL_PTR(dataPtr)