lsst.afw
g3a5ebb7d8a+28b83bf6a5
Toggle main menu visibility
Loading...
Searching...
No Matches
python
lsst
afw
image
_coaddInputsContinued.py
Go to the documentation of this file.
1
# This file is part of afw.
2
#
3
# Developed for the LSST Data Management System.
4
# This product includes software developed by the LSST Project
5
# (https://www.lsst.org).
6
# See the COPYRIGHT file at the top-level directory of this distribution
7
# for details of code ownership.
8
#
9
# This program is free software: you can redistribute it and/or modify
10
# it under the terms of the GNU General Public License as published by
11
# the Free Software Foundation, either version 3 of the License, or
12
# (at your option) any later version.
13
#
14
# This program is distributed in the hope that it will be useful,
15
# but WITHOUT ANY WARRANTY; without even the implied warranty of
16
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17
# GNU General Public License for more details.
18
19
from
lsst.utils
import
continueClass
20
21
from
._imageLib
import
CoaddInputs
22
23
import
numpy
as
np
24
25
__all__ = []
# import this module only for its side effects
26
27
28
@continueClass
29
class
CoaddInputs
:
# noqa: F811
30
31
def
subset_containing_ccds
(self, point, wcs, includeValidPolygon=False):
32
"""Return a view (shallow copy) of ExposureCatalog containing only the
33
subset of detectors that contain the given point.
34
35
Parameters
36
----------
37
point : `~lsst.geom.Point2D`
38
Point in the coadd coordinate system.
39
wcs : `lsst.geom.SkyWcs`
40
WCS for the coadd coordinate system. This is ignored if the
41
CoaddInputs are made by stitching cell_coadds.
42
includeValidPolygon : `bool`, optional
43
If True, check that the point is within the validPolygon of those records which have one.
44
45
Returns
46
-------
47
subset : `~lsst.afw.table.ExposureCatalog`
48
ExposureCatalog containing only the relevant detector records.
49
"""
50
51
ccds = self.ccds
52
# If the records have a WCS attached, we interpret that to mean that
53
# they come from a genuine afw exposure. If not, we interpret that to
54
# mean they come from cell_coadds. For the latter, the validPolygons
55
# are already in coadd coordinates and WCS lookup is not needed.
56
if
len(ccds) == 0
or
ccds[0].wcs
is
not
None
:
57
return
ccds.subsetContaining(point, wcs, includeValidPolygon)
58
else
:
59
cuts = np.array([record.validPolygon.contains(point)
for
record
in
ccds])
60
return
ccds[cuts]
61
62
def
subset_containing_visits
(self, point, wcs, includeValidPolygon=False):
63
"""Return a view (shallow copy) of ExposureCatalog containing only the
64
subset of visits that contain the given point.
65
66
Parameters
67
----------
68
point : `~lsst.geom.Point2D`
69
Point in the coadd coordinate system.
70
wcs : `lsst.geom.SkyWcs`
71
WCS for the coadd coordinate system. This is ignored if the
72
CoaddInputs are made by stitching cell_coadds.
73
includeValidPolygon : `bool`, optional
74
If True, check that the point is within the validPolygon of those records which have one.
75
76
Returns
77
-------
78
subset : `~lsst.afw.table.ExposureCatalog`
79
ExposureCatalog containing only the relevant visit records.
80
"""
81
82
visits = self.visits
83
if
len(visits) == 0
or
visits[0].wcs
is
not
None
:
84
return
visits.subsetContaining(point, wcs, includeValidPolygon)
85
else
:
86
ccd_cuts = np.array([record.validPolygon.contains(point)
for
record
in
self.ccds])
87
visit_cuts = np.isin(visits[
"visit"
], self.ccds[
"visit"
][ccd_cuts])
88
return
visits[visit_cuts]
lsst::afw::image._coaddInputsContinued.CoaddInputs
Definition
_coaddInputsContinued.py:29
lsst::afw::image._coaddInputsContinued.CoaddInputs.subset_containing_visits
subset_containing_visits(self, point, wcs, includeValidPolygon=False)
Definition
_coaddInputsContinued.py:62
lsst::afw::image._coaddInputsContinued.CoaddInputs.subset_containing_ccds
subset_containing_ccds(self, point, wcs, includeValidPolygon=False)
Definition
_coaddInputsContinued.py:31
lsst.utils
Generated on
for lsst.afw by
1.17.0