|
template<typename VertexIterator > |
UnitVector3d | lsst::sphgeom::detail::centroid (VertexIterator const begin, VertexIterator const end) |
|
template<typename VertexIterator > |
Circle | lsst::sphgeom::detail::boundingCircle (VertexIterator const begin, VertexIterator const end) |
|
template<typename VertexIterator > |
Box | lsst::sphgeom::detail::boundingBox (VertexIterator const begin, VertexIterator const end) |
|
template<typename VertexIterator > |
Box3d | lsst::sphgeom::detail::boundingBox3d (VertexIterator const begin, VertexIterator const end) |
|
template<typename VertexIterator > |
bool | lsst::sphgeom::detail::contains (VertexIterator const begin, VertexIterator const end, UnitVector3d const &v) |
|
template<typename VertexIterator > |
Relationship | lsst::sphgeom::detail::relate (VertexIterator const begin, VertexIterator const end, Box const &b) |
|
template<typename VertexIterator > |
Relationship | lsst::sphgeom::detail::relate (VertexIterator const begin, VertexIterator const end, Circle const &c) |
|
template<typename VertexIterator1 , typename VertexIterator2 > |
Relationship | lsst::sphgeom::detail::relate (VertexIterator1 const begin1, VertexIterator1 const end1, VertexIterator2 const begin2, VertexIterator2 const end2) |
|
template<typename VertexIterator > |
Relationship | lsst::sphgeom::detail::relate (VertexIterator const begin, VertexIterator const end, ConvexPolygon const &p) |
|
template<typename VertexIterator > |
Relationship | lsst::sphgeom::detail::relate (VertexIterator const begin, VertexIterator const end, Ellipse const &e) |
|
This file contains the meat of the ConvexPolygon implementation.
These functions are parametrized by vertex iterator type, making it possible to call them given only a fixed size vertex array. The functions which compute indexes of HTM triangles and Q3C quads intersecting a spherical region use them to avoid the cost of creating ConvexPolygon objects for each triangle/quad.