17 #ifndef GAZEBO_GUI_PLOT_INCREMENTALPLOT_HH_
18 #define GAZEBO_GUI_PLOT_INCREMENTALPLOT_HH_
24 #include <ignition/math/Vector2.hh>
43 class IncrementalPlotPrivate;
81 public:
void AddPoint(
const unsigned int _id,
82 const ignition::math::Vector2d &_pt);
87 public:
void AddPoints(
const unsigned int _id,
88 const std::vector<ignition::math::Vector2d> &_pts);
104 public:
void Update();
108 public:
void RemoveCurve(
const unsigned int _id);
121 public:
PlotCurvePtr DetachCurve(
const unsigned int _id);
126 public:
void SetCurveLabel(
const unsigned int _id,
127 const std::string &_label);
132 public:
void ShowAxisLabel(
const PlotAxis _axis,
const bool _show);
136 public:
void ShowGrid(
const bool _show);
140 public:
bool IsShowGrid()
const;
144 public:
void ShowHoverLine(
const bool _show);
148 public:
bool IsShowHoverLine()
const;
152 public: std::vector<PlotCurveWeakPtr> Curves()
const;
156 public:
virtual QSize sizeHint()
const;
160 protected:
void dragEnterEvent(QDragEnterEvent *_evt);
164 protected:
void dropEvent(QDropEvent *_evt);
168 Q_SIGNALS:
void VariableAdded(
const std::string &_name);
172 private: std::unique_ptr<IncrementalPlotPrivate> dataPtr;
std::shared_ptr< PlotCurve > PlotCurvePtr
Definition: PlottingTypes.hh:37
std::weak_ptr< PlotCurve > PlotCurveWeakPtr
Definition: PlottingTypes.hh:41
PlotAxis
Axis enum.
Definition: IncrementalPlot.hh:51
default namespace for gazebo
A plotting widget that handles incremental addition of data.
Definition: IncrementalPlot.hh:46
A Time class, can be used to hold wall- or sim-time.
Definition: Time.hh:44