Elaboradar 0.1
Caricamento in corso...
Ricerca in corso...
Nessun risultato

◆ resample_volume() [1/2]

template<typename T>
void radarelab::algo::azimuthresample::LevelwiseResampler< T >::resample_volume ( const volume::Scans< T > & src,
Volume< T > & dst,
double src_beam_width ) const
inline

Fill dst with data from src, coping with the two volumes having a different number of beams per scan.

Merger is the function used to merge beams from src into dst. It takes the source PolarScan, the destination PolarScan and a vector with the indices of the beams of src that need to be used.

Definizione alla linea 96 del file azimuth_resample.h.

97 {
98 // Copy volume metadata
99 dst.load_info = src.load_info;
100 dst.quantity = src.quantity;
101 dst.units = src.units;
102 dst.radarSite=src.radarSite;
103 for (unsigned iel = 0; iel < src.size(); ++iel)
104 {
105 const PolarScan<T>& src_scan = src.at(iel);
106 PolarScan<T>& dst_scan = dst.append_scan(src_scan.beam_size, src_scan.elevation, src_scan.cell_size);
108 dst_scan.nodata = src_scan.nodata;
109 dst_scan.undetect = src_scan.undetect;
110 dst_scan.gain = src_scan.gain;
111 dst_scan.offset = src_scan.offset;
112 }
113 }
virtual void resample_polarscan(const PolarScan< T > &src, PolarScan< T > &dst, double src_beam_width) const =0
Fill dst with data from src, using the given merger function.
Resample a volume one level at a time.

Referenzia radarelab::Volume< T >::append_scan(), radarelab::PolarScanBase::beam_size, radarelab::PolarScanBase::cell_size, radarelab::PolarScanBase::elevation, radarelab::PolarScan< T >::gain, radarelab::volume::Scans< T >::load_info, radarelab::PolarScan< T >::nodata, radarelab::PolarScan< T >::offset, radarelab::volume::Scans< T >::quantity, radarelab::volume::Scans< T >::radarSite, resample_polarscan(), radarelab::PolarScan< T >::undetect, e radarelab::volume::Scans< T >::units.