23 __all__ = [
"PatchInfo",
"makeSkyPolygonFromBBox"]
30 """Make an on-sky polygon from a bbox and a SkyWcs 34 bbox : `lsst.geom.Box2I` or `lsst.geom.Box2D` 35 Bounding box of region, in pixel coordinates 36 wcs : `lsst.afw.geom.SkyWcs` 41 polygon : `lsst.sphgeom.ConvexPolygon` 44 pixelPoints =
Box2D(bbox).getCorners()
45 skyPoints = wcs.pixelToSky(pixelPoints)
46 return ConvexPolygon.convexHull([sp.getVector()
for sp
in skyPoints])
50 """Information about a patch within a tract of a sky map. 52 See `TractInfo` for more information. 56 index : `tuple` of `int` 57 x,y index of patch (a pair of ints) 58 innerBBox : `lsst.geom.Box2I` 60 outerBBox : `lsst.geom.Box2I` 64 def __init__(self, index, innerBBox, outerBBox):
68 if not outerBBox.contains(innerBBox):
69 raise RuntimeError(
"outerBBox=%s does not contain innerBBox=%s" % (outerBBox, innerBBox))
72 """Return patch index: a tuple of (x, y) 76 result : `tuple` of `int` 82 """Get inner bounding box. 86 bbox : `lsst.geom.Box2I` 87 The inner bounding Box. 92 """Get outer bounding box. 96 bbox : `lsst.geom.Box2I` 97 The outer bounding Box. 102 """Get the inner on-sky region. 106 result : `lsst.sphgeom.ConvexPolygon` 107 The inner sky region. 112 """Get the outer on-sky region. 116 result : `lsst.sphgeom.ConvexPolygon` 117 The outer sky region. 122 return (self.
getIndex() == rhs.getIndex()) \
127 return not self.
__eq__(rhs)
130 return "PatchInfo(index=%s)" % (self.
getIndex(),)
133 return "PatchInfo(index=%s, innerBBox=%s, outerBBox=%s)" % \
A floating-point coordinate rectangle geometry.
def makeSkyPolygonFromBBox(bbox, wcs)
def getInnerSkyPolygon(self, tractWcs)
def getOuterSkyPolygon(self, tractWcs)
def __init__(self, index, innerBBox, outerBBox)