class
#include <eckit/geo/figure/Sphere.h>
Sphere
Base classes
- class eckit::geo::Figure
- Figure: describe a combination of "shape" (sphere, ellipsoid, geoid) and "size" (radius, a, b, elevation)
Public types
Public static functions
- static auto centralAngle(const PointLonLat&, const PointLonLat&) -> double
- Great-circle central angle between two points [radian].
- static auto centralAngle(double radius, const PointXYZ&, const PointXYZ&) -> double
- Great-circle central angle between two points (Cartesian coordinates)
- static auto distance(double radius, const PointLonLat&, const PointLonLat&) -> double
- Great-circle distance between two points.
- static auto distance(double radius, const PointXYZ&, const PointXYZ&) -> double
- Great-circle distance between two points (Cartesian coordinates)
- static auto area(double radius) -> double
- Surface area [L^2].
-
static auto area(double radius,
const area::
BoundingBox&) -> double - Surface area between parallels and meridians [L^2].
- static auto greatCircleLatitudeGivenLongitude(const PointLonLat&, const PointLonLat&, double lon) -> double
- Great-circle intermediate latitude provided two circle points and intermediate longitude [degree].
- static void greatCircleLongitudeGivenLatitude(const PointLonLat&, const PointLonLat&, double lat, double& lon1, double& lon2)
- Great-circle intermediate longitude(s) provided two circle points and intermediate latitude [degree].
- static auto convertSphericalToCartesian(double radius, const PointLonLat&, double height = 0.) -> PointXYZ
- Convert spherical to Cartesian coordinates.
- static auto convertCartesianToSpherical(double radius, const PointXYZ&) -> PointLonLat
- Convert Cartesian to spherical coordinates.
-
static auto className() -> std::
string
Constructors, destructors, conversion operators
Public functions
- auto R() const -> double override
- auto a() const -> double override
- auto b() const -> double override
- auto area() const -> double override
- Surface area [L^2].
-
auto area(const area::
BoundingBox& bbox) -> double override - 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
Typedef documentation
using eckit:: geo:: figure:: Sphere:: builder_t = BuilderT0<Figure>
#include <eckit/geo/Figure.h>
Function documentation
static std:: string eckit:: geo:: figure:: Sphere:: className()
#include <eckit/geo/Figure.h>
spec:: Custom* eckit:: geo:: figure:: Sphere:: spec() const
#include <eckit/geo/Figure.h>
std:: string eckit:: geo:: figure:: Sphere:: spec_str() const
#include <eckit/geo/Figure.h>
std:: string eckit:: geo:: figure:: Sphere:: proj_str() const
#include <eckit/geo/Figure.h>
double eckit:: geo:: figure:: Sphere:: eccentricity() const
#include <eckit/geo/Figure.h>
double eckit:: geo:: figure:: Sphere:: flattening() const
#include <eckit/geo/Figure.h>