24 - Consider tweaking pixel scale so the average scale is as specified, rather than the scale at the center 28 from builtins
import range
32 from .baseSkyMap
import BaseSkyMap
33 from .tractInfo
import TractInfo
35 __all__ = [
'DodecaSkyMapConfig',
'DodecaSkyMap']
38 withTractsOnPoles = pexConfig.Field(
39 doc=
"if True center a tract on each pole, else put a vertex on each pole",
53 """Dodecahedron-based sky map pixelization. 55 DodecaSkyMap divides the sky into 12 overlapping Tracts arranged as the faces of a dodecahedron. 57 ConfigClass = DodecaSkyMapConfig
61 """Construct a DodecaSkyMap 63 @param[in] config: an instance of self.ConfigClass; if None the default config is used 65 BaseSkyMap.__init__(self, config)
68 tractOverlap = afwGeom.Angle(self.
config.tractOverlap, afwGeom.degrees)
72 tractCoord = detail.coordFromVec(tractVec, defRA=afwGeom.Angle(0))
73 tractRA = tractCoord.getLongitude()
77 wcs = self.
_wcsFactory.makeWcs(crPixPos=afwGeom.Point2D(0, 0), crValCoord=tractCoord)
82 patchInnerDimensions=self.
config.patchInnerDimensions,
83 patchBorder=self.
config.patchBorder,
85 vertexCoordList=[detail.coordFromVec(vec, defRA=tractRA)
for vec
in vertexVecList],
86 tractOverlap=tractOverlap,
94 @return a dict containing: 95 - version: a pair of ints 106 @param[in] stateDict: a dict containing: 107 - version: a pair of ints 110 version = stateDict[
"version"]
111 if version >= (2, 0):
112 raise runtimeError(
"Version = %s >= (2,0); cannot unpickle" % (version,))
116 """Find the tract whose inner region includes the coord. 118 @param[in] coord: sky coordinate (afwCoord.Coord) 119 @return TractInfo for tract whose inner region includes the coord. 121 @note This routine will be more efficient if coord is ICRS. 123 return self[self.
_dodecahedron.getFaceInd(coord.toIcrs().getVector())]
126 """Return version (e.g. for pickle) 128 @return version as a pair of integers 133 """Return withTractsOnPoles parameter 135 @return withTractsOnPoles as a bool 140 """Add subclass-specific state or configuration options to the SHA1.""" 141 sha1.update(struct.pack(
"<?", self.
config.withTractsOnPoles))
def updateSha1(self, sha1)
def findTract(self, coord)
def getWithTractsOnPoles(self)
def __setstate__(self, stateDict)
def __init__(self, config=None)
def __init__(self, config=None)