#include <processor.h>
Inheritance diagram for EMAN::MaskGaussNonuniformProcessor:
Public Member Functions | |
MaskGaussNonuniformProcessor () | |
void | set_params (const Dict &new_params) |
Set the processor parameters using a key/value dictionary. | |
TypeDict | get_param_types () const |
Get processor parameter information in a dictionary. | |
string | get_name () const |
Get the processor's name. | |
string | get_desc () const |
Get the descrition of this specific processor. | |
Static Public Member Functions | |
Processor * | NEW () |
Static Public Attributes | |
const string | NAME = "mask.gaussian.nonuniform" |
Protected Member Functions | |
void | process_pixel (float *pixel, int xi, int yi, int zi) const |
Protected Attributes | |
float | radius_x |
float | radius_y |
float | radius_z |
float | gauss_width |
radius_x | x-axis radius | |
radius_y | y-axis radius | |
radius_z | z-axis radius | |
gauss_width | Gaussian falloff width, relative to each radius, default 0.05 |
Definition at line 2623 of file processor.h.
|
Definition at line 2626 of file processor.h. 02626 :radius_x(0), radius_y(0), radius_z(0), gauss_width(0) 02627 { 02628 }
|
|
Get the descrition of this specific processor. This function must be overwritten by a subclass.
Implements EMAN::Processor. Definition at line 2668 of file processor.h. 02669 { 02670 return "A Gaussian falloff to zero. Nonisotropic, specify inner radius for x,y,z and Gaussian falloff width. Falloff \ 02671 width is also nonisotropic and relative to the radii, with 1 being equal to the radius on that axis."; 02672 }
|
|
Get the processor's name. Each processor is identified by a unique name.
Implements EMAN::Processor. Definition at line 2659 of file processor.h. 02660 {
02661 return NAME;
02662 }
|
|
Get processor parameter information in a dictionary. Each parameter has one record in the dictionary. Each record contains its name, data-type, and description.
Reimplemented from EMAN::Processor. Definition at line 2647 of file processor.h. References EMAN::TypeDict::put(). 02648 { 02649 TypeDict d; 02650 02651 d.put("radius_x", EMObject::INT, "x-axis radius"); 02652 d.put("radius_y", EMObject::INT, "y-axis radius"); 02653 d.put("radius_z", EMObject::INT, "z-axis radius"); 02654 d.put("gauss_width", EMObject::FLOAT, "Gaussian falloff width, relative to each radius, default 0.05"); 02655 02656 return d; 02657 }
|
|
Definition at line 2663 of file processor.h. 02664 { 02665 return new MaskGaussNonuniformProcessor(); 02666 }
|
|
Implements EMAN::CoordinateProcessor. Definition at line 2677 of file processor.h. References dist(), nx, ny, and sqrt(). 02678 { 02679 float dist = pow((xi - nx/2)/radius_x,2.0f) + pow((yi - ny/2)/radius_y,2.0f) + pow((zi - nz/2)/radius_z,2.0f); 02680 if (dist>1.0) (*pixel)*=exp(-pow((sqrt(dist)-1.0f)/gauss_width,2.0f)); 02681 }
|
|
Set the processor parameters using a key/value dictionary.
Reimplemented from EMAN::Processor. Definition at line 2630 of file processor.h. 02631 { 02632 params = new_params; 02633 02634 if (params.has_key("radius_x")) radius_x=params["radius_x"]; 02635 else radius_x=5.0; 02636 02637 if (params.has_key("radius_y")) radius_y=params["radius_y"]; 02638 else radius_y=5.0; 02639 02640 if (params.has_key("radius_z")) radius_z=params["radius_z"]; 02641 else radius_z=5.0; 02642 02643 if (params.has_key("gauss_width")) gauss_width=params["gauss_width"]; 02644 else gauss_width=0.05f; 02645 }
|
|
Definition at line 2683 of file processor.h. |
|
Definition at line 108 of file processor.cpp. |
|
Definition at line 2683 of file processor.h. |
|
Definition at line 2683 of file processor.h. |
|
Definition at line 2683 of file processor.h. |