Alternaria
fit cylinders and ellipsoids to fungus
|
Parameters for density functions over an Alternaria Structure element. More...
#include <structure.h>
Public Member Functions | |
virtual | ~Structure_density () |
Destructor. | |
virtual Structure_density * | clone () const =0 |
Clones this Structure_density. | |
const Density::Uniform_params & | get_centroid_x () const |
Gets the Structure_density::centroid_x density parameters. | |
const Density::Uniform_params & | get_centroid_z () const |
Gets the Structure_density::centroid_z density parameters. | |
const Density::Uniform_params & | get_centroid_y () const |
Gets the Structure_density::centroid_y density parameters. | |
const Density::Gaussian_params & | get_length () const |
Gets the Structure_density::length density parameters. | |
const Density::Gaussian_params & | get_width () const |
Gets the Structure_density::width density parameters. | |
const Density::Gaussian_params & | get_theta () const |
Gets the Structure_density::theta density parameters. | |
const Density::Uniform_params & | get_psi () const |
Gets the Structure_density::psi density parameters. | |
const Density::Gaussian_params & | get_opacity () const |
Gets the Structure_density::opacity density parameters. | |
void | set_centroid_x (float min, float max) throw (jwscxx::base::Arg_error) |
Sets the Structure_density::centroid_x density parameters. | |
void | set_centroid_y (float min, float max) throw (jwscxx::base::Arg_error) |
Sets the Structure_density::centroid_y density parameters. | |
void | set_centroid_z (float min, float max) throw (jwscxx::base::Arg_error) |
Sets the Structure_density::centroid_z density parameters. | |
void | set_length (float mu, float sigma, float min, float max) throw (jwscxx::base::Arg_error) |
Sets the Structure_density::length density parameters. | |
void | set_width (float mu, float sigma, float min, float max) throw (jwscxx::base::Arg_error) |
Sets the Structure_density::width density parameters. | |
void | set_theta (float mu, float sigma, float min, float max) throw (jwscxx::base::Arg_error) |
Sets the Structure_density::theta density parameters. | |
void | set_psi (float min, float max) throw (jwscxx::base::Arg_error) |
Sets the Structure_density::psi density parameters. | |
void | set_opacity (float mu, float sigma, float min, float max) throw (jwscxx::base::Arg_error) |
Sets the Structure_density::opacity density parameters. | |
float | sample_centroid_x () const |
Creates a random Apical_structure::centroid x value. | |
float | sample_centroid_y () const |
Creates a random Apical_structure::centroid y value. | |
float | sample_centroid_z () const |
Creates a random Apical_structure::centroid z value. | |
float | sample_length () const |
Creates a random Structure::length. | |
float | sample_width () const |
Creates a random Structure::width. | |
float | sample_theta () const |
Creates a random Structure::theta. | |
float | sample_psi () const |
Creates a random Structure::psi. | |
float | sample_opacity () const |
Creates a random Structure::opacity. | |
virtual Structure * | sample (float base_theta, float base_psi, size_t level) const =0 |
Creates a random Structure with no parent. | |
virtual Structure * | sample (float centroid_x, float centroid_y, float centroid_z, float base_theta, float base_psi, size_t level) const =0 throw (jwscxx::base::Arg_error) |
Creates a random Structure with no parent. | |
virtual Structure * | sample (class Structure *parent, float base_theta, float base_psi) const =0 throw (jwscxx::base::Arg_error) |
Creates a random Structure with a parent. | |
Protected Attributes | |
Density::Uniform_params | centroid_x |
X-dimension of Apical_structure::centroid. | |
Density::Uniform_params | centroid_y |
Y-dimension of Apical_structure::centroid. | |
Density::Uniform_params | centroid_z |
Z-dimension of Apical_structure::centroid. | |
Density::Gaussian_params | length |
Length of the structure element. | |
Density::Gaussian_params | width |
Width of the structure element. | |
Density::Gaussian_params | theta |
Euler rotation angle around the x-axis. | |
Density::Uniform_params | psi |
Euler rotation angle around the z-axis. | |
Density::Gaussian_params | opacity |
Opacity of structure pigment. |
Parameters for density functions over an Alternaria Structure element.
Abstract class providing some basic functionality for all Alternaria structure elements.
Definition at line 571 of file structure.h.
virtual Structure_density::~Structure_density | ( | ) | [inline, virtual] |
Destructor.
Definition at line 576 of file structure.h.
virtual Structure_density* Structure_density::clone | ( | ) | const [pure virtual] |
Clones this Structure_density.
Implemented in Lateral_structure_density, Apical_hypha_density, Lateral_hypha_density, and Spore_density.
const Density::Uniform_params& Structure_density::get_centroid_x | ( | ) | const [inline] |
Gets the Structure_density::centroid_x density parameters.
Definition at line 584 of file structure.h.
const Density::Uniform_params& Structure_density::get_centroid_z | ( | ) | const [inline] |
Gets the Structure_density::centroid_z density parameters.
Definition at line 589 of file structure.h.
const Density::Uniform_params& Structure_density::get_centroid_y | ( | ) | const [inline] |
Gets the Structure_density::centroid_y density parameters.
Definition at line 594 of file structure.h.
const Density::Gaussian_params& Structure_density::get_length | ( | ) | const [inline] |
Gets the Structure_density::length density parameters.
Definition at line 599 of file structure.h.
const Density::Gaussian_params& Structure_density::get_width | ( | ) | const [inline] |
Gets the Structure_density::width density parameters.
Definition at line 603 of file structure.h.
const Density::Gaussian_params& Structure_density::get_theta | ( | ) | const [inline] |
Gets the Structure_density::theta density parameters.
Definition at line 607 of file structure.h.
const Density::Uniform_params& Structure_density::get_psi | ( | ) | const [inline] |
Gets the Structure_density::psi density parameters.
Definition at line 611 of file structure.h.
const Density::Gaussian_params& Structure_density::get_opacity | ( | ) | const [inline] |
Gets the Structure_density::opacity density parameters.
Definition at line 615 of file structure.h.
void Structure_density::set_centroid_x | ( | float | min, |
float | max | ||
) | throw (jwscxx::base::Arg_error) |
Sets the Structure_density::centroid_x density parameters.
min | Minimum value. |
max | Maximum value. |
jwscxx::base::Arg_error | Parameters are not a valid range. |
Definition at line 106 of file structure.cpp.
void Structure_density::set_centroid_y | ( | float | min, |
float | max | ||
) | throw (jwscxx::base::Arg_error) |
Sets the Structure_density::centroid_y density parameters.
min | Minimum value. |
max | Maximum value. |
jwscxx::base::Arg_error | Parameters are not a valid range. |
Definition at line 118 of file structure.cpp.
void Structure_density::set_centroid_z | ( | float | min, |
float | max | ||
) | throw (jwscxx::base::Arg_error) |
Sets the Structure_density::centroid_z density parameters.
min | Minimum value. |
max | Maximum value. |
jwscxx::base::Arg_error | Parameters are not a valid range. |
Definition at line 130 of file structure.cpp.
void Structure_density::set_length | ( | float | mu, |
float | sigma, | ||
float | min, | ||
float | max | ||
) | throw (jwscxx::base::Arg_error) |
Sets the Structure_density::length density parameters.
mu | Mean value. |
sigma | Standard deviation. |
min | Minimum value. |
max | Maximum value. |
jwscxx::base::Arg_error | Parameters are not a valid range or sigma is too small. |
Definition at line 146 of file structure.cpp.
void Structure_density::set_width | ( | float | mu, |
float | sigma, | ||
float | min, | ||
float | max | ||
) | throw (jwscxx::base::Arg_error) |
Sets the Structure_density::width density parameters.
mu | Mean value. |
sigma | Standard deviation. |
min | Minimum value. |
max | Maximum value. |
jwscxx::base::Arg_error | Parameters are not a valid range or sigma is too small. |
Definition at line 172 of file structure.cpp.
void Structure_density::set_theta | ( | float | mu, |
float | sigma, | ||
float | min, | ||
float | max | ||
) | throw (jwscxx::base::Arg_error) |
Sets the Structure_density::theta density parameters.
mu | Mean value. |
sigma | Standard deviation. |
min | Minimum value. |
max | Maximum value. |
jwscxx::base::Arg_error | Parameters are not a valid range or sigma is too small. |
Definition at line 198 of file structure.cpp.
void Structure_density::set_psi | ( | float | min, |
float | max | ||
) | throw (jwscxx::base::Arg_error) |
Sets the Structure_density::psi density parameters.
min | Minimum value. |
max | Maximum value. |
jwscxx::base::Arg_error | Parameters are not a valid range. |
Definition at line 224 of file structure.cpp.
void Structure_density::set_opacity | ( | float | mu, |
float | sigma, | ||
float | min, | ||
float | max | ||
) | throw (jwscxx::base::Arg_error) |
Sets the Structure_density::opacity density parameters.
mu | Mean value. |
sigma | Standard deviation. |
min | Minimum value. |
max | Maximum value. |
jwscxx::base::Arg_error | Parameters are not a valid range or sigma is too small. |
Definition at line 248 of file structure.cpp.
float Structure_density::sample_centroid_x | ( | ) | const |
Creates a random Apical_structure::centroid x value.
Definition at line 265 of file structure.cpp.
float Structure_density::sample_centroid_y | ( | ) | const |
Creates a random Apical_structure::centroid y value.
Definition at line 273 of file structure.cpp.
float Structure_density::sample_centroid_z | ( | ) | const |
Creates a random Apical_structure::centroid z value.
Definition at line 281 of file structure.cpp.
float Structure_density::sample_length | ( | ) | const |
Creates a random Structure::length.
Definition at line 289 of file structure.cpp.
float Structure_density::sample_width | ( | ) | const |
Creates a random Structure::width.
Definition at line 297 of file structure.cpp.
float Structure_density::sample_theta | ( | ) | const |
Creates a random Structure::theta.
Definition at line 305 of file structure.cpp.
float Structure_density::sample_psi | ( | ) | const |
Creates a random Structure::psi.
Definition at line 313 of file structure.cpp.
float Structure_density::sample_opacity | ( | ) | const |
Creates a random Structure::opacity.
Definition at line 320 of file structure.cpp.
virtual Structure* Structure_density::sample | ( | float | base_theta, |
float | base_psi, | ||
size_t | level | ||
) | const [pure virtual] |
Creates a random Structure with no parent.
Implemented in Apical_structure_density, Lateral_structure_density, Apical_hypha_density, Lateral_hypha_density, and Spore_density.
virtual Structure* Structure_density::sample | ( | float | centroid_x, |
float | centroid_y, | ||
float | centroid_z, | ||
float | base_theta, | ||
float | base_psi, | ||
size_t | level | ||
) | const throw (jwscxx::base::Arg_error) [pure virtual] |
Creates a random Structure with no parent.
Implemented in Apical_structure_density, Lateral_structure_density, Apical_hypha_density, Lateral_hypha_density, and Spore_density.
virtual Structure* Structure_density::sample | ( | class Structure * | parent, |
float | base_theta, | ||
float | base_psi | ||
) | const throw (jwscxx::base::Arg_error) [pure virtual] |
Creates a random Structure with a parent.
Implemented in Apical_structure_density, Lateral_structure_density, Apical_hypha_density, Lateral_hypha_density, and Spore_density.
Density::Uniform_params Structure_density::centroid_x [protected] |
X-dimension of Apical_structure::centroid.
Definition at line 749 of file structure.h.
Density::Uniform_params Structure_density::centroid_y [protected] |
Y-dimension of Apical_structure::centroid.
Definition at line 752 of file structure.h.
Density::Uniform_params Structure_density::centroid_z [protected] |
Z-dimension of Apical_structure::centroid.
Definition at line 755 of file structure.h.
Density::Gaussian_params Structure_density::length [protected] |
Length of the structure element.
Definition at line 758 of file structure.h.
Density::Gaussian_params Structure_density::width [protected] |
Width of the structure element.
Definition at line 761 of file structure.h.
Density::Gaussian_params Structure_density::theta [protected] |
Euler rotation angle around the x-axis.
Definition at line 764 of file structure.h.
Density::Uniform_params Structure_density::psi [protected] |
Euler rotation angle around the z-axis.
Definition at line 767 of file structure.h.
Density::Gaussian_params Structure_density::opacity [protected] |
Opacity of structure pigment.
Definition at line 770 of file structure.h.