ConvexSphericalPolygon class
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
Public static functions
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
- void invalidate_this_polygon()
- 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&