24 """Consider tweaking pixel scale so the average scale is as specified, rather 25 than the scale at the center. 28 __all__ = [
'DodecaSkyMapConfig',
'DodecaSkyMap']
35 from .baseSkyMap
import BaseSkyMap
36 from .tractInfo
import TractInfo
40 withTractsOnPoles = pexConfig.Field(
41 doc=
"if True center a tract on each pole, else put a vertex on each pole",
55 """Dodecahedron-based sky map pixelization. 57 DodecaSkyMap divides the sky into 12 overlapping Tracts arranged as the 58 faces of a dodecahedron. 62 config : `lsst.skymap.BaseSkyMapConfig` (optional) 63 The configuration for this SkyMap; if None use the default config. 65 ConfigClass = DodecaSkyMapConfig
69 BaseSkyMap.__init__(self, config)
76 tractCoord = detail.coordFromVec(tractVec, defRA=
geom.Angle(0))
77 tractRA = tractCoord.getLongitude()
86 patchInnerDimensions=self.
config.patchInnerDimensions,
87 patchBorder=self.
config.patchBorder,
89 vertexCoordList=[detail.coordFromVec(vec, defRA=tractRA)
for vec
in vertexVecList],
90 tractOverlap=tractOverlap,
102 - version: a pair of ints 116 - version: a pair of ints 119 version = stateDict[
"version"]
120 if version >= (2, 0):
121 raise RuntimeError(
"Version = %s >= (2,0); cannot unpickle" % (version,))
125 """Find the tract whose inner region includes the coord. 129 coord : `lsst.geom.SpherePoint` 130 ICRS sky coordinate to search for. 134 tractInfo : `TractInfo` 135 Info for tract whose inner region includes the coord. 137 return self[self.
_dodecahedron.getFaceInd(coord.getVector())]
140 """Return version (e.g. for pickle). 144 version : `tuple` of `int` 145 Version as a pair of integers. 150 """Return True if there are tracts centered on the poles. 155 """Add subclass-specific state or configuration options to the SHA1.""" 156 sha1.update(struct.pack(
"<?", self.
config.withTractsOnPoles))
def updateSha1(self, sha1)
def findTract(self, coord)
std::shared_ptr< FrameSet > append(FrameSet const &first, FrameSet const &second)
Construct a FrameSet that performs two transformations in series.
A class representing an angle.
def getWithTractsOnPoles(self)
std::shared_ptr< afw::geom::SkyWcs > makeWcs(SipForwardTransform const &sipForward, SipReverseTransform const &sipReverse, geom::SpherePoint const &skyOrigin)
Create a new TAN SIP Wcs from a pair of SIP transforms and the sky origin.
def __setstate__(self, stateDict)
def __init__(self, config=None)
def __init__(self, config=None)