class
ConvexSphericalPolygon
Public types
- class GreatCircleSegment
-
template<class Points>using contains_PointLonLat = std::
is_same<typename std:: decay<typename Points::value_type>::type, PointLonLat>
Public static variables
- static int MAX_GRIDCELL_EDGES constexpr
- static int MAX_SIZE constexpr
Constructors, destructors, conversion operators
- ConvexSphericalPolygon() defaulted
-
template<class Points, typename std::ConvexSphericalPolygon(const Points& points)
enable_if<contains_ PointLonLat<Points>::value, void>::type* = nullptr> - ConvexSphericalPolygon(const PointLonLat points[], size_t size)
- ConvexSphericalPolygon(const PointXYZ& p1, const PointXYZ& p2, const PointXYZ& p3)
- ConvexSphericalPolygon(const PointXYZ points[], size_t size)
- operator bool() const
Public functions
- auto size() const -> size_t
- auto area() const -> double
- auto centroid() const -> const PointXYZ&
- auto radius() const -> double
-
auto intersect(const ConvexSphericalPolygon& pol,
std::
ostream* f = nullptr, double pointsEqualEPS = std:: numeric_limits<double>::epsilon()) const -> ConvexSphericalPolygon - auto equals(const ConvexSphericalPolygon& plg, const double deg_prec = 1e-10) const -> bool
-
void print(std::
ostream&) const -
auto json(int precision = 0) const -> std::
string -
auto operator[](idx_
t n) const -> const PointXYZ& - auto next(const int index) const -> int
Friends
-
auto operator<<(std::
ostream& out, const ConvexSphericalPolygon& p) -> std:: ostream&