lsst.sphgeom gafb225b75d+8911f0c7c0
 
Loading...
Searching...
No Matches
lsst::sphgeom::UnionRegion Class Reference

#include <CompoundRegion.h>

Inheritance diagram for lsst::sphgeom::UnionRegion:
lsst::sphgeom::CompoundRegion lsst.sphgeom._continue_class.Region

Public Member Functions

 UnionRegion (std::vector< std::unique_ptr< Region > > operands)
 Construct by taking ownership of operands.
 
std::unique_ptr< Regionclone () const override
 
bool isEmpty () const override
 
Box getBoundingBox () const override
 
Box3d getBoundingBox3d () const override
 
Circle getBoundingCircle () const override
 
bool contains (UnitVector3d const &v) const override
 
Relationship relate (Region const &r) const override
 
TriState overlaps (Region const &other) const override
 
TriState overlaps (Box const &) const override
 
TriState overlaps (Circle const &) const override
 
TriState overlaps (ConvexPolygon const &) const override
 
TriState overlaps (Ellipse const &) const override
 
std::vector< std::uint8_t > encode () const override
 
- Public Member Functions inherited from lsst::sphgeom::CompoundRegion
 CompoundRegion (std::vector< std::unique_ptr< Region > > operands) noexcept
 Construct by taking ownership of operands.
 
 CompoundRegion (CompoundRegion const &)
 
 CompoundRegion (CompoundRegion &&) noexcept=default
 
CompoundRegionoperator= (CompoundRegion const &)=delete
 
CompoundRegionoperator= (CompoundRegion &&)=delete
 
size_t nOperands () const
 
Region const & getOperand (std::size_t n) const
 
Relationship relate (Box const &b) const override
 
Relationship relate (Circle const &c) const override
 
Relationship relate (ConvexPolygon const &p) const override
 
Relationship relate (Ellipse const &e) const override
 
- Public Member Functions inherited from lsst.sphgeom._continue_class.Region
Region from_ivoa_pos (cls, str pos)
 
str to_ivoa_pos (self)
 

Static Public Member Functions

static std::unique_ptr< UnionRegiondecode (std::vector< std::uint8_t > const &s)
 
static std::unique_ptr< UnionRegiondecode (std::uint8_t const *buffer, size_t n)
 
- Static Public Member Functions inherited from lsst::sphgeom::CompoundRegion
static std::unique_ptr< CompoundRegiondecode (std::vector< std::uint8_t > const &s)
 
static std::unique_ptr< CompoundRegiondecode (std::uint8_t const *buffer, size_t n)
 

Static Public Attributes

static constexpr std::uint8_t TYPE_CODE = 'u'
 

Additional Inherited Members

- Protected Member Functions inherited from lsst::sphgeom::CompoundRegion
std::vector< std::uint8_t > _encode (std::uint8_t tc) const
 
std::vector< std::unique_ptr< Region > > const & operands () const
 
template<typename Compound>
void flatten_operands ()
 
- Static Protected Member Functions inherited from lsst::sphgeom::CompoundRegion
static std::vector< std::unique_ptr< Region > > _decode (std::uint8_t tc, std::uint8_t const *buffer, std::size_t nBytes)
 

Detailed Description

UnionRegion is a lazy point-set union of its operands.

All operations on a UnionRegion are implementing by delegating to its nested operand regions and combining the results.

Member Function Documentation

◆ decode()

static std::unique_ptr< UnionRegion > lsst::sphgeom::UnionRegion::decode ( std::vector< std::uint8_t > const & s)
inlinestatic

decode deserializes a UnionRegion from a byte string produced by encode.

◆ relate()

Relationship lsst::sphgeom::UnionRegion::relate ( Region const & r) const
overridevirtual

The documentation for this class was generated from the following files: