Xmipp
v3.23.11-Nereus
|
#include <grids.h>
Public Member Functions | |
GridVolumeT () | |
GridVolumeT (const GridVolumeT &_RV) | |
GridVolumeT (const Grid &_grid) | |
GridVolumeT & | operator= (const GridVolumeT &RV) |
void | assign (const GridVolumeT &RV) |
~GridVolumeT () | |
void | adapt_to_grid (const Grid &_grid) |
void | resize (const Matrix1D< double > &corner1, const Matrix1D< double > &corner2) |
template<class T1 > | |
void | resize (const GridVolumeT< T1 > &GV) |
void | initZeros () |
void | clear () |
Image< T > & | operator() (size_t n) |
void | get_volume (size_t n, Image< T > &V) |
const Image< T > & | operator() (size_t n) const |
const SimpleGrid & | grid (size_t n) const |
void | get_SimpleGrid (size_t n, SimpleGrid &G) |
const Grid & | grid () const |
void | get_Grid (Grid &G) |
size_t | VolumesNo () const |
GridVolumeT< T > | operator+ (T f) const |
GridVolumeT< T > | operator- (T f) const |
GridVolumeT< T > | operator* (T f) const |
GridVolumeT< T > | operator/ (T f) const |
GridVolumeT< T > friend | operator+ (T f, const GridVolumeT< T > &GV) |
GridVolumeT< T > friend | operator* (T f, const GridVolumeT< T > &GV) |
GridVolumeT< T > | operator+ (const GridVolumeT< T > &GV) |
GridVolumeT< T > | operator- (const GridVolumeT< T > &GV) |
GridVolumeT< T > | operator* (const GridVolumeT< T > &GV) |
GridVolumeT< T > | operator/ (const GridVolumeT< T > &GV) |
void | operator+= (const GridVolumeT< T > &GV) |
void | operator-= (const GridVolumeT< T > &GV) |
void | operator*= (const GridVolumeT< T > &GV) |
void | operator/= (const GridVolumeT< T > &GV) |
Grids I/O | |
The reconstructing volume is stored in the Xmipp format. Although it is not a true volume some special structure is used to store each subgrid and subvolume.
With respect to the volume structure, if the volume is smaller (Ydim,Xdim) than the size assigned to the file then the data is right justified and the extra data is filled with zeros. | |
void | write (const FileName &fn) const |
void | read (const FileName &fn, const std::string &basisName) |
Grid Volume class. The grid volumes are a special kind of volumes used in reconstructions where the volumes are understood as a 3D matrix of coefficients placed at the points defined by a Grid (BCC, FCC, ...) Remember that a complex grid like these ones are seen as lists of simpler grids. That is why this Grid Volumes are compound of a list of volumes. The first volume of the grid volume should contain the coefficients for the first grid in the list of grids, and so on.
|
inline |
Empty constructor. The volume list is empty, and the grid is also empty
|
inline |
|
inline |
Create using a grid as pattern and basis. Create the grid volume using this grid as pattern. This function calls adapt_to_grid , so look at there to know exactly what is performed
Definition at line 798 of file grids.h.
|
inline |
Destructor.
|
inline |
Reset current volume and use the given grid as pattern. The current grid volume is cleared. Then the given grid is taken as the grid for this grid volume. Zero-valued volumes are added to the volume list according to the number of grids inside the complex grid. The size and starting point of the volumes added are fixed by the lowest and highest fields of each SimpleGrid .
Definition at line 838 of file grids.h.
|
inline |
|
inline |
|
inline |
Get grid.
|
inline |
|
inline |
Another function for access to one of the volumes in the list.
|
inline |
Constant access to a simple grid. The grid is the SimpleGrid associated to the volume which occupies position n in the volume list.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Multiply by a constant. The constant is multiplied with all simple volumes. \Ex: V2=6*V1;
|
inline |
|
inline |
|
inline |
|
inline |
Sum a constant. The constant is added to all simple volumes. \Ex: V2=6+V1;
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Read grid volume. The volume is read from a Xmipp volume with a special structure at several slices.
Definition at line 1330 of file grids.h.
|
inline |
Resize. The grid volume is resized such that the space delimited by the two given corners is covered. Overlapping grid points are retained while non-overlapping ones are set to 0.
Definition at line 873 of file grids.h.
|
inline |
Resize after a pattern. The volume is of the same shape, the grids are copied, and the volume coeeficients are set to 0.
Definition at line 919 of file grids.h.
|
inline |
|
inline |
Write grid volume. The Filename is compulsory, an exception is thrown if the volume is too small to hold the control information of each layer.
Definition at line 1196 of file grids.h.