Interface for an object storing Ellipse data. More...
#include <ellipse.h>
Public Member Functions | |
| virtual void | convolve (const Ellipse &ell) |
| Convolve this ellipse with another. | |
| virtual double | get_area () const |
| Return the area of this ellipse, equal to pi*sigma_major*sigma_minor. | |
| virtual double | get_cov_xy () const |
| Return the covariance, equal to sigma_x*sigma_y*rho. | |
| virtual double | get_hwhm_x () const |
| Get the x-axis half-width at half-maximum. | |
| virtual double | get_hwhm_y () const |
| Get the y-axis half-width at half-maximum. | |
| virtual double | get_radius_trace () const |
| Return the trace radius, equal to sqrt(sigma_x^2 + sigma_y^2) | |
| virtual double | get_sigma_x () const =0 |
| Get sigma_x. | |
| virtual double | get_sigma_y () const =0 |
| Get sigma_y. | |
| virtual double | get_rho () const =0 |
| Get rho. | |
| virtual double | get_sigma_x_sq () const |
| Get the square of sigma_x. | |
| virtual double | get_sigma_y_sq () const |
| Get the square of sigma_y. | |
| virtual double | get_sigma_xy () const |
| Return sigma_x*sigma_y. | |
| virtual std::array< double, 3 > | get_hxyr () const |
| Get hwhm_x, hwhm_y, rho. | |
| virtual std::array< double, 3 > | get_xyr () const |
| Get sigma_x, sigma_y, rho. | |
| virtual void | set (double sigma_x, double sigma_y, double rho) |
| Set sigma_x, sigma_y, rho. | |
| virtual void | set (const Covariance &covar) |
| Set values from a Covariance object. | |
| virtual void | set (const EllipseMajor &ellipse) |
| Set values from an EllipseMajor object. | |
| virtual void | set_h (double hwhm_x, double hwhm_y, double rho) |
| Set hwhm_x, hwhm_y, rho (half-width at half-max) | |
| virtual void | set_hwhm_x (double hwhm_x) |
| Set the x-axis half-width at half-max (FWHM/2) | |
| virtual void | set_hwhm_y (double hwhm_y) |
| Set the y-axis half-width at half-max (FWHM/2) | |
| virtual void | set_sigma_x (double sigma_x)=0 |
| Set the x-axis dispersion (sigma) | |
| virtual void | set_sigma_y (double sigma_y)=0 |
| Set the y-axis dispersion (sigma) | |
| virtual void | set_rho (double rho)=0 |
| Set the correlation parameter (rho) | |
| virtual void | set_hxyr (const std::array< double, 3 > &hxyr) |
| Set hwhm_x, hwhm_y, rho from an array. | |
| virtual void | set_xyr (const std::array< double, 3 > &xyr) |
| Set sigma_x, sigma_y, rho from an array. | |
| virtual std::string | repr (bool name_keywords=false, std::string_view namespace_separator=Object::CC_NAMESPACE_SEPARATOR) const override=0 |
| virtual std::string | str () const override=0 |
| Return a brief, human-readable string representation of this. | |
| bool | operator== (const EllipseData &other) const |
| bool | operator!= (const EllipseData &other) const |
Static Public Member Functions | |
| static void | check (double size_x, double size_y, double rho, std::string_view error_suffix="") |
| Check whether Ellipse parameter values are valid, throwing if not. | |
| static void | check_size (double size, std::string_view error_suffix="") |
| Check whether an x- or x-yaxis size value is valid. | |
| static void | check_rho (double rho, std::string_view error_suffix="") |
| Check whether a rho value is valid. | |
Static Public Member Functions inherited from lsst::gauss2d::Object | |
| static std::string_view | null_str (const std::string_view &namespace_separator) |
Friends | |
| std::ostream & | operator<< (std::ostream &out, const EllipseData &obj) |
Additional Inherited Members | |
Static Public Attributes inherited from lsst::gauss2d::Object | |
| static constexpr std::string_view | CC_NAMESPACE_SEPARATOR = "::" |
| The C++ namespace separator. | |
| static constexpr std::string_view | NULL_STR_GENERAL = "None" |
| static constexpr std::string_view | PY_NAMESPACE_SEPARATOR = "." |
Interface for an object storing Ellipse data.
This is an abstract class designed to store data for an Ellipse to retrieve. No additional restrictions are placed on implementations. Some default implementations are provided.
|
pure virtual |
Get rho.
Implemented in lsst::gauss2d::Ellipse, and lsst::gauss2d::EllipseValues.
|
pure virtual |
Get sigma_x.
Implemented in lsst::gauss2d::Ellipse, and lsst::gauss2d::EllipseValues.
|
pure virtual |
Get sigma_y.
Implemented in lsst::gauss2d::Ellipse, and lsst::gauss2d::EllipseValues.
|
virtual |
Get sigma_x, sigma_y, rho.
Reimplemented in lsst::gauss2d::EllipseValues.
|
overridepure virtual |
Return a full, callable string representation of this.
| name_keywords | Whether to prefix arguments with "{name}=", where name is the arg name in the header (as with keyword arguments in Python). |
| namespace_separator | The string to use to delimit namespaces, i.e. :: in C++ and . in Python. |
Implements lsst::gauss2d::Object.
Implemented in lsst::gauss2d::Ellipse, and lsst::gauss2d::EllipseValues.
|
virtual |
Set sigma_x, sigma_y, rho.
Reimplemented in lsst::gauss2d::EllipseValues.
|
virtual |
Set hwhm_x, hwhm_y, rho (half-width at half-max)
Reimplemented in lsst::gauss2d::EllipseValues.
|
pure virtual |
Set the correlation parameter (rho)
Implemented in lsst::gauss2d::Ellipse, and lsst::gauss2d::EllipseValues.
|
pure virtual |
Set the x-axis dispersion (sigma)
Implemented in lsst::gauss2d::Ellipse, and lsst::gauss2d::EllipseValues.
|
pure virtual |
Set the y-axis dispersion (sigma)
Implemented in lsst::gauss2d::Ellipse, and lsst::gauss2d::EllipseValues.
|
overridepure virtual |
Return a brief, human-readable string representation of this.
Implements lsst::gauss2d::Object.
Implemented in lsst::gauss2d::Ellipse, and lsst::gauss2d::EllipseValues.