codac 1.5.6
Loading...
Searching...
No Matches
codac_VIBesFigTubeVector.h
Go to the documentation of this file.
1
12#ifndef __CODAC_VIBESFIGTUBEVECTOR_H__
13#define __CODAC_VIBESFIGTUBEVECTOR_H__
14
15#include "codac_VIBesFigTube.h"
16#include "codac_TubeVector.h"
18
19namespace codac
20{
33 {
34 public:
35
38
44 VIBesFigTubeVector(const std::string& fig_name);
45
53 VIBesFigTubeVector(const std::string& fig_name, int start_index, int end_index);
54
64 VIBesFigTubeVector(const std::string& fig_name, const TubeVector *tube, const TrajectoryVector *traj = nullptr);
65
70
78 int size() const;
79
87 int subfigs_number() const;
88
96
103 const VIBesFigTube* operator[](int index) const;
104
113 void set_properties(int x, int y, int width, int height);
114
121 void show(bool detail_slices = false);
122
128 void set_cursor(double t);
129
135 void show_cursor(bool display = true);
136
140
148 void draw_box(const Interval& tdomain, const IntervalVector& box, const vibes::Params& params);
149
158 void draw_box(const Interval& tdomain, const IntervalVector& box, const std::string& color = "", const vibes::Params& params = vibes::Params());
159
163
172 void add_tube(const TubeVector *tube, const std::string& name, const std::string& color_frgrnd = DEFAULT_FRGRND_COLOR, const std::string& color_bckgrnd = DEFAULT_BCKGRND_COLOR);
173
180 void set_tube_name(const TubeVector *tube, const std::string& name);
181
191 void set_tube_derivative(const TubeVector *tube, const TubeVector *derivative);
192
200 void set_tube_color(const TubeVector *tube, const std::string& color_frgrnd, const std::string& color_bckgrnd = DEFAULT_BCKGRND_COLOR);
201
211 void set_tube_color(const TubeVector *tube, TubeColorType color_type, const std::string& color);
212
221
232 void remove_tube(const TubeVector *tube);
233
237
245 void add_trajectory(const TrajectoryVector *traj, const std::string& name, const std::string& color = DEFAULT_TRAJ_COLOR);
246
253 void set_trajectory_name(const TrajectoryVector *traj, const std::string& name);
254
261 void set_trajectory_color(const TrajectoryVector *traj, const std::string& color);
262
270 void set_trajectory_points_size(const TrajectoryVector *traj, double points_size);
271
283
288
289 //static void draw(const std::string& fig_name, int x = 0, int y = 0);
290 //static void draw(const std::string& fig_name, const TubeVector *tubevector, int x = 0, int y = 0);
291 //static void draw(const std::string& fig_name, const TrajectoryVector *trajvector, int x = 0, int y = 0);
292 //static void draw(const std::string& fig_name, const TubeVector *tubevector, const TrajectoryVector *trajvector, int x = 0, int y = 0);
293 //static void end_drawing();
294
296
297 protected:
298
304 void create_subfigures(int n);
305
306 protected:
307
308 int m_n = 0;
309 VIBesFigTube **m_v_figs = nullptr;
310 int m_start_index = -1, m_end_index = -1;
311 };
312}
313
314#endif
Two-dimensional graphical item.
Definition codac_Figure.h:26
int x() const
Returns the horizontal coordinate of this figure.
int y() const
Returns the vertical coordinate of this figure.
int width() const
Returns the width of this figure.
int height() const
Returns the height of this figure.
const std::string name() const
Returns the name of this figure.
n-dimensional trajectory , defined as a temporal map of vector values
Definition codac_TrajectoryVector.h:38
n-dimensional tube , defined as an interval of n-dimensional trajectories
Definition codac_TubeVector.h:39
Two-dimensional graphical item to display scalar tubes or trajectories.
Definition codac_VIBesFigTube.h:48
Multi-view item to display vector tubes or trajectories.
Definition codac_VIBesFigTubeVector.h:33
void add_trajectory(const TrajectoryVector *traj, const std::string &name, const std::string &color=DEFAULT_TRAJ_COLOR)
Adds a trajectory vector object to this figure.
VIBesFigTubeVector(const std::string &fig_name)
Creates a VIBesFigTubeVector.
void set_trajectory_name(const TrajectoryVector *traj, const std::string &name)
Sets a new name for a trajectory vector.
void set_cursor(double t)
Set the position of the temporal cursor of this figure.
void set_tube_color(const TubeVector *tube, const std::string &color_frgrnd, const std::string &color_bckgrnd=DEFAULT_BCKGRND_COLOR)
Sets color properties for a given tube vector.
VIBesFigTube ** m_v_figs
array of components (scalar figures)
Definition codac_VIBesFigTubeVector.h:309
void show(bool detail_slices=false)
Displays this figure with optional details.
int m_end_index
restriction on the dimensions that will be displayed
Definition codac_VIBesFigTubeVector.h:310
void remove_trajectory(const TrajectoryVector *traj)
Removes a trajectory vector from this figure.
void set_tube_derivative(const TubeVector *tube, const TubeVector *derivative)
Links a tube vector to its derivative for display purposes.
int size() const
Returns the dimension of the objects displayed in the figure.
void draw_box(const Interval &tdomain, const IntervalVector &box, const vibes::Params &params)
Draws a multi-dimensional box.
void remove_tube(const TubeVector *tube)
Removes a tube vector from this figure.
int m_n
dimension of this figure
Definition codac_VIBesFigTubeVector.h:308
void reset_tube_background(const TubeVector *tube)
Reset the background of a given tube vector.
VIBesFigTubeVector(const std::string &fig_name, int start_index, int end_index)
Creates a VIBesFigTubeVector.
const VIBesFigTube * operator[](int index) const
Returns a const pointer to the ith VIBesFigTube of this figure.
void set_trajectory_color(const TrajectoryVector *traj, const std::string &color)
Sets color properties for a given trajectory vector.
void set_tube_color(const TubeVector *tube, TubeColorType color_type, const std::string &color)
Sets color properties for a given tube vector.
void set_trajectory_points_size(const TrajectoryVector *traj, double points_size)
Sets points size for a given trajectory, and activates a display mode with points instead of a line f...
VIBesFigTube * operator[](int index)
Returns a pointer to the ith VIBesFigTube of this figure.
int subfigs_number() const
Returns number of dimensions to be displayed.
void show_cursor(bool display=true)
Displays the cursor on this figure.
void set_properties(int x, int y, int width, int height)
Sets the properties (coordinates and dimensions) of this figure.
void create_subfigures(int n)
Creates the subfigures related to the dimensions that will be displayed.
VIBesFigTubeVector(const std::string &fig_name, const TubeVector *tube, const TrajectoryVector *traj=nullptr)
Creates a VIBesFigTube.
~VIBesFigTubeVector()
VIBesFigTubeVector destructor.
void draw_box(const Interval &tdomain, const IntervalVector &box, const std::string &color="", const vibes::Params &params=vibes::Params())
Draws a multi-dimensional box.
void add_tube(const TubeVector *tube, const std::string &name, const std::string &color_frgrnd=DEFAULT_FRGRND_COLOR, const std::string &color_bckgrnd=DEFAULT_BCKGRND_COLOR)
Adds a tube vector object to this figure.
void set_tube_name(const TubeVector *tube, const std::string &name)
Sets a new name for a tube vector.
FixPoint of a separator The fixpoint of a separator is computed by calling the "::"separate function ...
Definition codac_capd_helpers.h:9
TubeColorType
Defines a set of colors for tube display.
Definition codac_VIBesFigTube.h:38