IMP Reference Guide  develop.af393bce43,2020/02/22 The Integrative Modeling Platform
IMP::em2d::CenteredMat Class Reference

#include <IMP/em2d/CenteredMat.h>

## Detailed Description

Decorator for a cv::Mat to use coordinates respect to a point Almost always that point is the center

Definition at line 21 of file CenteredMat.h.

## Public Member Functions

CenteredMat (cv::Mat &m)

CenteredMat (cv::Mat &m, int center_row, int center_col)

void do_show (std::ostream &out) const
Shows information about the class. More...

int get_end (int i) const

bool get_is_in_range (int i, int j) const
Returns true if the indices are in the matrix. More...

int get_start (int i) const

double & operator() (int i, int j)
Returns the element (i,j) RELATIVE to the center. More...

void show (std::ostream &out=std::cout) const

## Protected Member Functions

void set_starts_and_ends ()
Sets the starting and ending points for the object. More...

## Protected Attributes

int center_col_

int center_row_

cv::Mat centered_

int end_ [2]

int start_ [2]

## Constructor & Destructor Documentation

 IMP::em2d::CenteredMat::CenteredMat ( cv::Mat & m )

Creates and CenteredMat for the matrix

Parameters
 m The matrix
Note
The center pixel is not provided. It is assumed to be the center of the matrix

Definition at line 30 of file CenteredMat.h.

 IMP::em2d::CenteredMat::CenteredMat ( cv::Mat & m, int center_row, int center_col )

Creates a CenteredMat for the matrix

Parameters
 m The matrix center_row - The row for the point used as center of CenteredMat center_col - The column for the point used as center of CenteredMat
Returns

Definition at line 48 of file CenteredMat.h.

## Member Function Documentation

 void IMP::em2d::CenteredMat::do_show ( std::ostream & out ) const

Parameters
 out Stream used to show the information

Definition at line 108 of file CenteredMat.h.

 int IMP::em2d::CenteredMat::get_end ( int i ) const

See get_start() function help. In the example of the 5x5 matrix, the end values would be (2,2)

Parameters
 i The dimension to use (0 - rows, 1 - columns)
Returns
The end point in the given dimension

Definition at line 75 of file CenteredMat.h.

 bool IMP::em2d::CenteredMat::get_is_in_range ( int i, int j ) const

Returns true if the indices are in the matrix.

Remember that the indices are those respect to the center of CenteredMat

Parameters
 i Row j Column
Returns
whether all the indices are in the matrix.

Definition at line 84 of file CenteredMat.h.

 int IMP::em2d::CenteredMat::get_start ( int i ) const

get the starting value for a dimension. ! For example, in a matrix of 5x5 centered at the origin (2,2), the ! starting point will be (-2,2)

Parameters
 i The dimension to use (0 - rows, 1 - columns)
Returns
The starting point in the given dimension

Definition at line 67 of file CenteredMat.h.

 double& IMP::em2d::CenteredMat::operator() ( int i, int j )

Returns the element (i,j) RELATIVE to the center.

Remember then that the indices can be negative. For performance the indices out of range are NOT checked

Parameters
 i row j column
Returns
the value of the matrix at row i and column j

Definition at line 98 of file CenteredMat.h.

 void IMP::em2d::CenteredMat::set_starts_and_ends ( )
protected

Sets the starting and ending points for the object.

See get_start() and get_end() for more help

Definition at line 121 of file CenteredMat.h.

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