LSST Applications g0f08755f38+9c285cab97,g1635faa6d4+13f3999e92,g1653933729+a8ce1bb630,g1a0ca8cf93+bf6eb00ceb,g28da252d5a+0829b12dee,g29321ee8c0+5700dc9eac,g2bbee38e9b+9634bc57db,g2bc492864f+9634bc57db,g2cdde0e794+c2c89b37c4,g3156d2b45e+41e33cbcdc,g347aa1857d+9634bc57db,g35bb328faa+a8ce1bb630,g3a166c0a6a+9634bc57db,g3e281a1b8c+9f2c4e2fc3,g414038480c+077ccc18e7,g41af890bb2+fde0dd39b6,g5fbc88fb19+17cd334064,g781aacb6e4+a8ce1bb630,g80478fca09+55a9465950,g82479be7b0+d730eedb7d,g858d7b2824+9c285cab97,g9125e01d80+a8ce1bb630,g9726552aa6+10f999ec6a,ga5288a1d22+2a84bb7594,gacf8899fa4+c69c5206e8,gae0086650b+a8ce1bb630,gb58c049af0+d64f4d3760,gc28159a63d+9634bc57db,gcf0d15dbbd+4b7d09cae4,gda3e153d99+9c285cab97,gda6a2b7d83+4b7d09cae4,gdaeeff99f8+1711a396fd,ge2409df99d+5e831397f4,ge79ae78c31+9634bc57db,gf0baf85859+147a0692ba,gf3967379c6+41c94011de,gf3fb38a9a8+8f07a9901b,gfb92a5be7c+9c285cab97,w.2024.46
LSST Data Management Base Package
|
Chunker
subdivides the unit sphere into longitude-latitude boxes.
More...
#include <Chunker.h>
Public Member Functions | |
Chunker (std::int32_t numStripes, std::int32_t numSubStripesPerStripe) | |
bool | operator== (Chunker const &c) const |
bool | operator!= (Chunker const &c) const |
std::int32_t | getNumStripes () const |
getNumStripes returns the number of fixed-height latitude intervals in the sky subdivision. | |
std::int32_t | getNumSubStripesPerStripe () const |
getNumSubStripesPerStripe returns the number of fixed-height latitude sub-intervals in each stripe. | |
std::vector< std::int32_t > | getChunksIntersecting (Region const &r) const |
getChunksIntersecting returns all the chunks that potentially intersect the given region. | |
std::vector< SubChunks > | getSubChunksIntersecting (Region const &r) const |
getSubChunksIntersecting returns all the sub-chunks that potentially intersect the given region. | |
std::vector< std::int32_t > | getAllChunks () const |
getAllChunks returns the complete set of chunk IDs for the unit sphere. | |
std::vector< std::int32_t > | getAllSubChunks (std::int32_t chunkId) const |
getAllSubChunks returns the complete set of sub-chunk IDs for the given chunk. | |
bool | valid (std::int32_t chunkId) const |
Return 'true' if the specified chunk number is valid. | |
Box | getChunkBoundingBox (std::int32_t stripe, std::int32_t chunk) const |
Box | getSubChunkBoundingBox (std::int32_t subStripe, std::int32_t subChunk) const |
std::int32_t | getStripe (std::int32_t chunkId) const |
Return the stripe for the specified chunkId. | |
std::int32_t | getChunk (std::int32_t chunkId, std::int32_t stripe) const |
Return the chunk for the given chunkId and stripe. | |
Chunker
subdivides the unit sphere into longitude-latitude boxes.
The unit sphere is divided into latitude angle "stripes" of fixed height H. For each stripe, a width W is computed such that any two points in the stripe with longitude angles separated by at least W have angular separation of at least H. The stripe is then broken into an integral number of chunks of width at least W. The same procedure is used to obtain finer subchunks - each stripe is broken into a configureable number of equal-height "substripes", and each substripe is broken into equal-width subchunks.
lsst::sphgeom::Chunker::Chunker | ( | std::int32_t | numStripes, |
std::int32_t | numSubStripesPerStripe ) |
Definition at line 64 of file Chunker.cc.
std::vector< std::int32_t > lsst::sphgeom::Chunker::getAllChunks | ( | ) | const |
getAllChunks
returns the complete set of chunk IDs for the unit sphere.
Definition at line 265 of file Chunker.cc.
std::vector< std::int32_t > lsst::sphgeom::Chunker::getAllSubChunks | ( | std::int32_t | chunkId | ) | const |
getAllSubChunks
returns the complete set of sub-chunk IDs for the given chunk.
Definition at line 276 of file Chunker.cc.
|
inline |
Box lsst::sphgeom::Chunker::getChunkBoundingBox | ( | std::int32_t | stripe, |
std::int32_t | chunk ) const |
Definition at line 298 of file Chunker.cc.
std::vector< std::int32_t > lsst::sphgeom::Chunker::getChunksIntersecting | ( | Region const & | r | ) | const |
getChunksIntersecting
returns all the chunks that potentially intersect the given region.
Definition at line 110 of file Chunker.cc.
|
inline |
|
inline |
|
inline |
Box lsst::sphgeom::Chunker::getSubChunkBoundingBox | ( | std::int32_t | subStripe, |
std::int32_t | subChunk ) const |
Definition at line 309 of file Chunker.cc.
std::vector< SubChunks > lsst::sphgeom::Chunker::getSubChunksIntersecting | ( | Region const & | r | ) | const |
getSubChunksIntersecting
returns all the sub-chunks that potentially intersect the given region.
Definition at line 155 of file Chunker.cc.
|
inline |
|
inline |
bool lsst::sphgeom::Chunker::valid | ( | std::int32_t | chunkId | ) | const |
Return 'true' if the specified chunk number is valid.
Definition at line 292 of file Chunker.cc.