eckit::geo::Figure class

Figure: describe a combination of "shape" (sphere, ellipsoid, geoid) and "size" (radius, a, b, elevation)

Derived classes

template<class DATUM>
class OblateSpheroidT
Oblate spheroid parametrised with a geodetic datum.
template<class DATUM>
class OblateSpheroidT
Oblate spheroid parametrised with a geodetic datum.
template<class DATUM>
class SphereT
Sphere parametrised with a geodetic datum.
template<class DATUM>
class SphereT
Sphere parametrised with a geodetic datum.
class OblateSpheroid
template<class DATUM>
class OblateSpheroidT
Oblate spheroid parametrised with a geodetic datum.
class Sphere
template<class DATUM>
class SphereT
Sphere parametrised with a geodetic datum.

Public types

using builder_t = BuilderT0<Figure>

Public static functions

static auto className() -> std::string

Constructors, destructors, conversion operators

Figure() defaulted noexcept
Figure(const Figure&) deleted
Figure(Figure&&) deleted
Figure(const Spec&) explicit
~Figure() defaulted virtual

Public functions

auto operator=(const Figure&) -> Figure& deleted
auto operator=(Figure&&) -> Figure& deleted
auto R() const -> double virtual
auto a() const -> double virtual
auto b() const -> double virtual
auto area() const -> double virtual
Surface area [L^2].
auto area(const area::BoundingBox&) -> double virtual
Surface area between parallels and meridians [L^2].
auto spec() const -> spec::Custom*
auto spec_str() const -> std::string
auto proj_str() const -> std::string
auto eccentricity() const -> double
auto flattening() const -> double

Private functions

void fill_spec(spec::Custom&) const virtual

Friends

auto operator==(const Figure& a, const Figure& b) -> bool
auto operator!=(const Figure& a, const Figure& b) -> bool