Xmipp
v3.23.11-Nereus
|
#include <grids.h>
Public Member Functions | |
void | add_grid (const SimpleGrid &SG) |
const SimpleGrid & | operator() (size_t n) const |
SimpleGrid & | operator() (size_t n) |
void | get_SimpleGrid (int n, SimpleGrid &G) const |
size_t | GridsNo () const |
void | assign (const Grid &G) |
void | clear () |
void | voxel_corners (Matrix1D< double > &Gcorner1, Matrix1D< double > &Gcorner2, const Matrix2D< double > *V=nullptr) const |
Friends | |
std::ostream & | operator<< (std::ostream &o, const Grid &grid) |
Complex Grids. Grid is the structure where "true" grids like (BCC, FCC, CC, ...) are stored. A complex grid is nothing else than a list of Simple Grids, and this is so because a complex grid is supposed to be the superposition of several simple grids, each one with all the information that a SimpleGrid has got. When projecting the volume or whatever what you must do is to project each simple grid, or apply the function you want to each simple grid. For instance, here you have a function to show a complex grid
Initially the complex grid is empty, and you must fill it adding new simple grids to it with the function Grid::add_grid . The simple grids must be prepared to work before entering into the complex one.
|
inline |
Add a grid to the set. The complex grid is a list of simple grids, use this function to add a simple grid to the complex one, remember that before using this function the simple grid must have been prepared to work (see SimpleGrid::prepare_grid ). See class documentation for an example of use.
|
inline |
|
inline |
|
inline |
Another function for get a "pointer" to a simple grid.
|
inline |
|
inline |
Get a constant "pointer" to a simple grid. The complex grid is built upon the STL vectors, using this function you can access (constant access, you cannot modify the simple grid) any of the simple grids inside the list. Remember that the first grid is the number 0. An exception is thrown if you try to access a simple grid beyond the number of actual simple grids inside the complex one. \ Ex: std::cout << "The first grid in the BCC grid is " << BCC(0);
Definition at line 504 of file grids.h.
|
inline |
Get a "pointer" to a simple grid. The complex grid is built upon the STL vectors, using this function you can access any of the simple grids inside the list. Remember that the first grid is the number 0. An exception is thrown if you try to access a simple grid beyond the number of actual simple grids inside the complex one. \ Ex: BCC(0).origin=vectorR3(1,1,1);
Definition at line 519 of file grids.h.
void Grid::voxel_corners | ( | Matrix1D< double > & | Gcorner1, |
Matrix1D< double > & | Gcorner2, | ||
const Matrix2D< double > * | V = nullptr |
||
) | const |
Minimum size for a voxel volume if it is to hold the whole grid. The returned vectors Gcorner1 and Gcorner2 enclose this grid. You can supply a deformation matrix (see blobs2voxels )
Definition at line 120 of file grids.cpp.
|
friend |