IMP  2.1.1
The Integrative Modeling Platform
IMP::algebra::LogEmbeddingD< D > Class Template Reference

#include <IMP/algebra/grid_embeddings.h>

Public Member Functions

 LogEmbeddingD (const VectorD< D > &origin, const VectorD< D > &cell, const VectorD< D > &base)
 
 LogEmbeddingD (const BoundingBoxD< D > &bb, const VectorD< D > &bases, const Ints &counts, bool bound_centers=false)
 
 LogEmbeddingD (const VectorD< D > &, const VectorD< D > &)
 
unsigned int get_dimension () const
 
ExtendedGridIndexD< D > get_extended_index (const VectorD< D > &o) const
 Return the index that would contain the voxel if the grid extended there. More...
 
GridIndexD< D > get_index (const VectorD< D > &o) const
 
const VectorD< D > get_origin () const
 
const VectorD< D > & get_unit_cell () const
 Return the unit cell, relative to the origin. More...
 
void set_origin (const VectorD< D > &o)
 
void set_unit_cell (const VectorD< D > &o, const VectorD< D > &base)
 
void set_unit_cell (const VectorD< D > &o)
 
void show (std::ostream &out=std::cout) const
 

Center

Return the coordinates of the center of the voxel.

VectorD< D > get_center (const ExtendedGridIndexD< D > &ei) const
 
VectorD< D > get_center (const GridIndexD< D > &ei) const
 

Bounding box

Return the bounding box of the voxel.

BoundingBoxD< D > get_bounding_box (const ExtendedGridIndexD< D > &ei) const
 
BoundingBoxD< D > get_bounding_box (const GridIndexD< D > &ei) const
 

Detailed Description

template<int D>
class IMP::algebra::LogEmbeddingD< D >

Embedding of a grid as log-evenly spaced axis aligned grid.

Definition at line 174 of file grid_embeddings.h.

Constructor & Destructor Documentation

template<int D>
IMP::algebra::LogEmbeddingD< D >::LogEmbeddingD ( const BoundingBoxD< D > &  bb,
const VectorD< D > &  bases,
const Ints counts,
bool  bound_centers = false 
)

Embedding of a grid as a log-evenly distributed axis-aligned grid over the bounding box bb.

Parameters
bbthe bounding box in which the grid is embedded
basesbases[i] is a positive log base used for the grid spacing in dimension i. Set base[i] to 1 in order to create aa standard evenly spaced grid along dimension i.
countscounts[i] is the number of discrete points in dimension i
bound_centersif true, then the bounding box tightly bounds the centers of the voxels, not their extents.

Definition at line 231 of file grid_embeddings.h.

+ Here is the call graph for this function:

Member Function Documentation

template<int D>
ExtendedGridIndexD<D> IMP::algebra::LogEmbeddingD< D >::get_extended_index ( const VectorD< D > &  o) const

For example vectors below the "lower left" corner of the grid have indexes with all negative components. This operation will always succeed.

Definition at line 300 of file grid_embeddings.h.

template<int D>
const VectorD<D>& IMP::algebra::LogEmbeddingD< D >::get_unit_cell ( ) const

That is, the unit cell is

BoundingBoxD<D>(get_zeros_vector_d<D>(),get_unit_cell());

Definition at line 294 of file grid_embeddings.h.


The documentation for this class was generated from the following file: