Coverage for python/lsst/skymap/patchInfo.py : 42%

Hot-keys on this page
r m x p toggle line displays
j k next/prev highlighted chunk
0 (zero) top of page
1 (one) first highlighted chunk
# # LSST Data Management System # Copyright 2008, 2009, 2010 LSST Corporation. # # This product includes software developed by the # LSST Project (http://www.lsst.org/). # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the LSST License Statement and # the GNU General Public License along with this program. If not, # see <http://www.lsstcorp.org/LegalNotices/>. #
"""Make an on-sky polygon from a bbox and a SkyWcs
Parameters ---------- bbox : `lsst.afw.geom.Box2I` or `lsst.afw.geom.Box2D` Bounding box of region, in pixel coordinates wcs : `lsst.afw.geom.SkyWcs` Celestial WCS
Returns ------- polygon : `lsst.sphgeom.ConvexPolygon` On-sky region """ pixelPoints = Box2D(bbox).getCorners() skyPoints = wcs.pixelToSky(pixelPoints) return ConvexPolygon.convexHull([sp.getVector() for sp in skyPoints])
"""Information about a patch within a tract of a sky map
See TractInfo for more information. """
"""Construct a PatchInfo
@param[in] index: x,y index of patch (a pair of ints) @param[in] innerBBox: inner bounding box (an afwGeom.Box2I) @param[in] outerBBox: inner bounding box (an afwGeom.Box2I) """ self._index = index self._innerBBox = innerBBox self._outerBBox = outerBBox if not outerBBox.contains(innerBBox): raise RuntimeError("outerBBox=%s does not contain innerBBox=%s" % (outerBBox, innerBBox))
"""Return patch index: a tuple of (x, y) """ return self._index
"""Get inner bounding box """ return self._innerBBox
"""Get outer bounding box """ return self._outerBBox
"""Get the inner on-sky region as an sphgeom.ConvexPolygon. """ return makeSkyPolygonFromBBox(bbox=self.getInnerBBox(), wcs=tractWcs)
"""Get the outer on-sky region as a sphgeom.ConvexPolygon. """ return makeSkyPolygonFromBBox(bbox=self.getOuterBBox(), wcs=tractWcs)
"""Support == """ return (self.getIndex() == rhs.getIndex()) \ and (self.getInnerBBox() == rhs.getInnerBBox()) \ and (self.getOuterBBox() == rhs.getOuterBBox())
"""Support != """ return not self.__eq__(rhs)
"""Return a brief string representation """ return "PatchInfo(index=%s)" % (self.getIndex(),)
"""Return a detailed string representation """ return "PatchInfo(index=%s, innerBBox=%s, outerBBox=%s)" % \ (self.getIndex(), self.getInnerBBox(), self.getOuterBBox()) |