Alternaria
fit cylinders and ellipsoids to fungus
Structure_density Class Reference

Parameters for density functions over an Alternaria Structure element. More...

#include <structure.h>

Inheritance diagram for Structure_density:
Collaboration diagram for Structure_density:

List of all members.

Public Member Functions

virtual ~Structure_density ()
 Destructor.
virtual Structure_densityclone () const =0
 Clones this Structure_density.
const Density::Uniform_paramsget_centroid_x () const
 Gets the Structure_density::centroid_x density parameters.
const Density::Uniform_paramsget_centroid_z () const
 Gets the Structure_density::centroid_z density parameters.
const Density::Uniform_paramsget_centroid_y () const
 Gets the Structure_density::centroid_y density parameters.
const Density::Gaussian_paramsget_length () const
 Gets the Structure_density::length density parameters.
const Density::Gaussian_paramsget_width () const
 Gets the Structure_density::width density parameters.
const Density::Gaussian_paramsget_theta () const
 Gets the Structure_density::theta density parameters.
const Density::Uniform_paramsget_psi () const
 Gets the Structure_density::psi density parameters.
const Density::Gaussian_paramsget_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 Structuresample (float base_theta, float base_psi, size_t level) const =0
 Creates a random Structure with no parent.
virtual Structuresample (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 Structuresample (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.

Detailed Description

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.


Constructor & Destructor Documentation

virtual Structure_density::~Structure_density ( ) [inline, virtual]

Destructor.

Definition at line 576 of file structure.h.


Member Function Documentation

virtual Structure_density* Structure_density::clone ( ) const [pure virtual]
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.

Parameters:
minMinimum value.
maxMaximum value.
Exceptions:
jwscxx::base::Arg_errorParameters 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.

Parameters:
minMinimum value.
maxMaximum value.
Exceptions:
jwscxx::base::Arg_errorParameters 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.

Parameters:
minMinimum value.
maxMaximum value.
Exceptions:
jwscxx::base::Arg_errorParameters 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.

Parameters:
muMean value.
sigmaStandard deviation.
minMinimum value.
maxMaximum value.
Exceptions:
jwscxx::base::Arg_errorParameters 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.

Parameters:
muMean value.
sigmaStandard deviation.
minMinimum value.
maxMaximum value.
Exceptions:
jwscxx::base::Arg_errorParameters 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.

Parameters:
muMean value.
sigmaStandard deviation.
minMinimum value.
maxMaximum value.
Exceptions:
jwscxx::base::Arg_errorParameters 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.

Parameters:
minMinimum value.
maxMaximum value.
Exceptions:
jwscxx::base::Arg_errorParameters 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.

Parameters:
muMean value.
sigmaStandard deviation.
minMinimum value.
maxMaximum value.
Exceptions:
jwscxx::base::Arg_errorParameters 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.

Returns:
A randomly sampled 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.

Returns:
A randomly sampled 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.

Returns:
A randomly sampled Apical_structure::centroid z value.

Definition at line 281 of file structure.cpp.

float Structure_density::sample_length ( ) const

Creates a random Structure::length.

Returns:
A randomly sampled Structure::length.

Definition at line 289 of file structure.cpp.

float Structure_density::sample_width ( ) const

Creates a random Structure::width.

Returns:
A randomly sampled Structure::width.

Definition at line 297 of file structure.cpp.

float Structure_density::sample_theta ( ) const

Creates a random Structure::theta.

Returns:
A randomly sampled Structure::theta.

Definition at line 305 of file structure.cpp.

float Structure_density::sample_psi ( ) const

Creates a random Structure::psi.

Returns:
A randomly sampled Structure::psi.

Definition at line 313 of file structure.cpp.

float Structure_density::sample_opacity ( ) const

Creates a random Structure::opacity.

Returns:
A randomly sampled 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]
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]
virtual Structure* Structure_density::sample ( class Structure parent,
float  base_theta,
float  base_psi 
) const throw (jwscxx::base::Arg_error) [pure virtual]

Member Data Documentation

X-dimension of Apical_structure::centroid.

Definition at line 749 of file structure.h.

Y-dimension of Apical_structure::centroid.

Definition at line 752 of file structure.h.

Z-dimension of Apical_structure::centroid.

Definition at line 755 of file structure.h.

Length of the structure element.

Definition at line 758 of file structure.h.

Width of the structure element.

Definition at line 761 of file structure.h.

Euler rotation angle around the x-axis.

Definition at line 764 of file structure.h.

Euler rotation angle around the z-axis.

Definition at line 767 of file structure.h.

Opacity of structure pigment.

Definition at line 770 of file structure.h.


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