25#ifndef LSST_GAUSS2D_COORDINATESYSTEM_H
26#define LSST_GAUSS2D_COORDINATESYSTEM_H
33namespace lsst::gauss2d {
43class CoordinateSystem :
public Object {
45 explicit CoordinateSystem(
double dx1 = 1.,
double dy2 = 1,
double x_min = 0,
double y_min = 0);
51 double get_dx1()
const;
52 double get_dy2()
const;
54 double get_x_min()
const;
55 double get_y_min()
const;
57 bool is_xy_aligned()
const;
59 bool operator==(
const CoordinateSystem& other)
const;
60 bool operator!=(
const CoordinateSystem& other)
const;
62 std::string
repr(
bool name_keywords =
false,
64 std::string
str()
const override;
A coordinate system specifying image scale and orientation.
Definition coordinatesystem.h:43
std::string repr(bool name_keywords=false, std::string_view namespace_separator=Object::CC_NAMESPACE_SEPARATOR) const override
Definition coordinatesystem.cc:51
std::string str() const override
Return a brief, human-readable string representation of this.
Definition coordinatesystem.cc:58
static constexpr std::string_view CC_NAMESPACE_SEPARATOR
The C++ namespace separator.
Definition object.h:45