23__all__ = [
'EquatSkyMapConfig',
'EquatSkyMap']
29from .baseSkyMap
import BaseSkyMap
30from .tractInfo
import TractInfo
34 numTracts = pexConfig.Field(
35 doc=
"number of tracts; warning: TAN projection requires at least 3",
39 decRange = pexConfig.ListField(
40 doc=
"range of declination (deg)",
43 default=(-1.25, 1.25),
51 """Equatorial sky map pixelization, e.g. for SDSS stripe 82 image data.
53 EquatSkyMap represents an equatorial band of sky divided along declination
54 into overlapping tracts.
59 The configuration for this SkyMap;
if None use the default config.
61 ConfigClass = EquatSkyMapConfig
65 BaseSkyMap.__init__(self, config)
67 decRange = tuple(
geom.Angle(dr, geom.degrees)
for dr
in self.
configconfig.decRange)
68 midDec = (decRange[0] + decRange[1]) / 2.0
72 for id
in range(self.
configconfig.numTracts):
73 begRA = tractWidthRA * id
74 endRA = begRA + tractWidthRA
82 midRA = begRA + tractWidthRA / 2.0
93 patchInnerDimensions=self.
configconfig.patchInnerDimensions,
94 patchBorder=self.
configconfig.patchBorder,
96 vertexCoordList=vertexCoordList,
97 tractOverlap=tractOverlap,
108 - version: a pair of ints
123 - version: a pair of ints
126 version = stateDict["version"]
127 if version >= (2, 0):
128 raise RuntimeError(
"Version = %s >= (2,0); cannot unpickle" % (version,))
132 """Return version (e.g. for pickle).
136 result : `tuple` of `int`
137 Version as a pair of integers.
142 """Add subclass-specific state or configuration options to the SHA1."""
143 sha1.update(struct.pack(
"<i2d", self.
configconfig.numTracts, *self.
configconfig.decRange))
def __init__(self, config=None)
def __init__(self, config=None)
def __setstate__(self, stateDict)
def updateSha1(self, sha1)