12 #include <QtGui/QWidget>
13 #include <QtGui/QPaintEvent>
14 #include <QtGui/QPainter>
15 #include <QtGui/QImage>
17 #include <QtCore/QByteArray>
18 #include <QtCore/QList>
19 #include <QtGui/qfiledialog.h>
20 #include <QtGui/QMenu>
21 #include <QtCore/QString>
22 #include <QtDesigner/QDesignerExportWidget>
24 #include <QVTKWidget.h>
25 #include <vtkSmartPointer.h>
26 #include <vtkUnsignedCharArray.h>
27 #include <vtkStructuredGrid.h>
28 #include <vtkStructuredGridGeometryFilter.h>
29 #include <vtkPolyDataMapper.h>
31 #include <vtkXYPlotActor.h>
33 #include <vtkRenderWindowInteractor.h>
34 #include <vtkCommand.h>
44 virtual void Execute (vtkObject *caller,
unsigned long eventId,
void *callData);
54 Q_CLASSINFO(
"Author",
"Alexander Duda")
60 vtkSmartPointer<vtkStructuredGrid> generateStructuredGrid(
int number_of_beams,
int number_of_bins ,
61 float horizontal_resolution,
float distance_resolution,
62 float vertical_resolution = 0);
64 void setUpStructuredGrid(vtkSmartPointer<vtkStructuredGrid> sgrid,
65 int number_of_beams,
int number_of_bins,
66 float horizontal_resolution,
float distance_resolution,
67 float vertical_resolution,
float start_angle = 0);
69 int getActorID(
const vtkActor *actor);
70 vtkStructuredGridGeometryFilter* getFilter(
int id);
71 vtkUnsignedCharArray* getData(
int id);
74 void addSonarBeam(
float bearing,
int number_of_bins,
const char* pbuffer);
75 void setUpSonar(
int number_of_beams,
int number_of_bins,
float horizontal_resolution,
76 float distance_resolution,
float vertical_resolution);
77 void setParameterToAuto(
bool value);
78 void deleteBeams(
int from,
int to);
82 void setPlotData(
int id);
85 void setPlotVisible(
bool val);
92 float horizontal_resolution;
93 float vertical_resolution;
94 float distance_resolution;
101 vtkSmartPointer<vtkStructuredGrid> sonar_wireframe;
102 vtkSmartPointer<vtkRenderWindow> render_window;
103 vtkSmartPointer<vtkRenderer> renderer;
106 std::vector<vtkSmartPointer<vtkUnsignedCharArray> > sonar_data;
107 std::vector<vtkSmartPointer<vtkStructuredGrid> > sonar_grid;
108 std::vector<vtkSmartPointer<vtkStructuredGridGeometryFilter> > sonar_filter;
109 std::vector<vtkSmartPointer<vtkPolyDataMapper> > sonar_mapper;
110 std::vector<vtkSmartPointer<vtkActor> > sonar_actor;
112 vtkSmartPointer<vtkXYPlotActor> plot_actor;
115 int normalizeDelata(
int delta);
KeyEvent(SonarDisplay *p)
virtual void Execute(vtkObject *caller, unsigned long eventId, void *callData)