Elaboradar 0.1
Caricamento in corso...
Ricerca in corso...
Nessun risultato
cylindrical.h
Vai alla documentazione di questo file.
1
5#ifndef RADARELAB_CILINDRICAL_CLASS_H
6#define RADARELAB_CILINDRICAL_CLASS_H
7
8#include <vector>
9#include <radarelab/volume.h>
10
11namespace radarelab {
12
16struct CylindricalVolume
17{
26 std::vector<Matrix2D<double>*> slices;
27 unsigned x_size;
28 unsigned z_size;
29
31 double resol[2];
32
33 CylindricalVolume(const Volume<double>& volume, double missing_value, double x_res, double z_res);
34 ~CylindricalVolume()
35 {
36 for (std::vector<Matrix2D<double>*>::iterator i = slices.begin(); i != slices.end(); ++i)
37 delete *i;
38 }
39
40 double& operator()(unsigned slice, unsigned row, unsigned col)
41 {
42 //if (slice >= slices.size()) throw std::runtime_error("slices: fuori coordinata slice");
43 return (*slices[slice])(row, col);
44 }
45
46 const double& operator()(unsigned slice, unsigned row, unsigned col) const
47 {
48 //if (slice >= slices.size()) throw std::runtime_error("slices: fuori coordinata slice");
49 return (*slices[slice])(row, col);
50 }
51
52 void resample(const Volume<double>& volume);
53};
54
55}
56
57#endif
Homogeneous volume with a common beam count for all PolarScans.
Definition volume.h:431
Namespace per volume dati.
Definition elev_fin.h:12
String functions.
Definition cart.cpp:4
std::vector< Matrix2D< double > * > slices
Vertical rectangular x,z semi-slices of the cylinder, with one side resting on the cylinder axis.
Definition cylindrical.h:26
double resol[2]
Resolution in x and z.
Definition cylindrical.h:31
Base for all matrices we use, since we rely on row-major data.
Definition matrix.h:37
Definisce le principali strutture che contengono i dati.